Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Cast Toolplate Bed Progress ?

    Scheduled Pinned Locked Moved
    General Discussion
    7
    38
    1.7k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Dizzwoldundefined
      Dizzwold @deckingman
      last edited by

      @deckingman

      Hi Ian,

      Sadly the Trigger 2, M98 P"config.g" has no influance on restarting DWC. It still needs manually resetting.
      Config.g

      ; Custom settings are not defined
       ; Emergency Stop
      M950 J2 C"io3.in"
      M581 P2 T0 S1 R0
      ;M582 T2 S0
      
      M581 P2 T2 S0 R0
      

      Trigger2.g

      ;Trigger2.g Reset Emergency Stop Button
      
      M98 P"config.g"
      

      I've tried many variants with M112, M999, M400 and tried changing the S0, S1, S-1 values, although I have it connected on a NC circuit so S1 on a non-inverted pin triggers T0 (M112 Emergency Stop), then releasing the
      Emergency Stop Button S0 Triggers the same non-inverted pinT2, M98 P"config.g"
      Have got something wrong somewhere?

      deckingmanundefined 1 Reply Last reply Reply Quote 0
      • deckingmanundefined
        deckingman @Dizzwold
        last edited by

        @Dizzwold Dunno. I guess we need to first check that the correct macro is being triggered with the switch in each position. Try doing M581 P2 T3 S1 R0 and keep the existing M581 P2 T2 S0 R0. So we have two triggers (2 and 3) and one should run on a rising edge the other on a falling edge. Then make trigger2.g with just a single command M118 S" This is trigger 2", and trigger3.g with just a single command M118 S"This is trigger 3".

        Then exercise your switch and see what happens. Hopefully you'll get a message "This is trigger 2" when the switch changes from one state to another and "This is trigger 3" when the state changes back. Once we are sure that part is working, then we can think about what commands to put in each trigger macro.

        Ian
        https://somei3deas.wordpress.com/
        https://www.youtube.com/@deckingman

        Dizzwoldundefined 1 Reply Last reply Reply Quote 0
        • Dizzwoldundefined
          Dizzwold @deckingman
          last edited by Dizzwold

          @deckingman said in Cast Toolplate Bed Progress ?:

          This is trigger 2

          Hi Ian,

          Hmm... I tried what you suggested above, and i worked as expected;
          Trigger 2 when the E Stop Button is pressed S1
          Trigger 3 when released S0

          So I've then replaced Trigger 2 with
          M112
          M999
          and Trigger 3 with
          M98 P"config.g"

          Same problem DWC on my computer needs a physical click on the RESET button displayed on the screen (paneldue states HALTED), so it would seem that the M98 P"config.g" is the issue.
          Screen Shot 2024-01-08 at 18.08.19.png
          Config.g;

          ; Custom settings are not defined
           ; Emergency Stop
          M950 J2 C"io3.in"
          M581 P2 T2 S1 R0
          
          ;M950 J2 C"io3.in"
          M581 P2 T3 S0 R0
          
           ; Z Axis Limit Switch
          ;M950 J3 C"io2.in"
          ;M581 P3 T3 S0 R0
          

          Trigger2.g;

          ;Trigger2.g Reset Emergency Stop Button
          M112
          M999
          
          ;M118 S"This is Trigger 2"
          

          Trigger3.g

          ;Trigger3.g Z Axis Limt Switch
          
          ;M118 S"This is Trigger 3"
          M98 P"config.g"
          

          Maybe it's not possible?

          Dizzwold

          deckingmanundefined Phaedruxundefined 2 Replies Last reply Reply Quote 0
          • deckingmanundefined
            deckingman @Dizzwold
            last edited by

            @Dizzwold said in Cast Toolplate Bed Progress ?:

            Maybe it's not possible?

            Maybe. I'd have thought there ought to be a way to recover from an emergency stop but the docs just talk about power cycling the board. I'm surprised running config g doesn't work because that is effectively all that happens when power is restored.......but there is possibly a work around.

            The obvious one is do as I do and use the emergency stop button to physically interrupt the 24V power to the board(s).

            But failing that, maybe we can do something else. So rather than an emergency stop, think about what you actually want to stop. I guess that's motors and heaters. Heaters are easy - just set the temperatures to zero in one macro and restore them in the other. So what about using M18 instead of M112 to disable motors? It might not be immediate though so might have to wait for any moves to finish which I guess is not what you want an emergency stop to do? M0 is another option but again, I don't think it will work until the current move is complete.

            Ian
            https://somei3deas.wordpress.com/
            https://www.youtube.com/@deckingman

            1 Reply Last reply Reply Quote 0
            • Phaedruxundefined
              Phaedrux Moderator @Dizzwold
              last edited by

              @Dizzwold said in Cast Toolplate Bed Progress ?:

              Maybe it's not possible?

              A question for @chrishamm I think.

              Z-Bot CoreXY Build | Thingiverse Profile

              deckingmanundefined 1 Reply Last reply Reply Quote 0
              • deckingmanundefined
                deckingman @Phaedrux
                last edited by

                @Phaedrux said in Cast Toolplate Bed Progress ?:

                @Dizzwold said in Cast Toolplate Bed Progress ?:

                Maybe it's not possible?

                A question for @chrishamm I think.

                ,..,....or @dc42. Essentially we're trying to find a way to reset a printer after M112 has been sent, without cycling power. The OP is using trigger macros so it can be a series of commands rather than a single command. Apparently running config g via M98 doesn't do the job and I'd have thought it would.

                Ian
                https://somei3deas.wordpress.com/
                https://www.youtube.com/@deckingman

                dc42undefined 1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators @deckingman
                  last edited by

                  @deckingman sending M999 works. The emergency stop button sends M112 followed a little later by M999.

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  deckingmanundefined 1 Reply Last reply Reply Quote 0
                  • deckingmanundefined
                    deckingman @dc42
                    last edited by

                    @dc42 said in Cast Toolplate Bed Progress ?:

                    @deckingman sending M999 works. The emergency stop button sends M112 followed a little later by M999.

                    Maybe I've misunderstood the OP's problem. Looking back through his posts he is saying " DWC on my computer needs a physical click on the RESET button displayed on the screen". I think it's that "DWC thing" that he's trying to overcome. He says he's tried all combinations of M999 etc in his trigger macros.

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    Dizzwoldundefined 1 Reply Last reply Reply Quote 0
                    • Dizzwoldundefined
                      Dizzwold @deckingman
                      last edited by

                      @deckingman

                      That's correct, I'm talking on the computer DWC interface.
                      If I clicking a button on screen with my cursor on my computer, I'm essentially sending a single line of code once to the Duet, so why can't a physical button do this?
                      I appreciate that DWC is an interface used both by the Paneldue and as it would suggest on mobile or computers (Duet 'Web' Control).

                      I had looked at other options like for a filament run-out sensor, maybe this or like you've suggested with disabling/re-enabling the steppers are the only options.

                      deckingmanundefined fcwiltundefined 3 Replies Last reply Reply Quote 0
                      • deckingmanundefined
                        deckingman @Dizzwold
                        last edited by

                        @Dizzwold Definitely one for @chrishamm then.

                        Ian
                        https://somei3deas.wordpress.com/
                        https://www.youtube.com/@deckingman

                        1 Reply Last reply Reply Quote 0
                        • fcwiltundefined
                          fcwilt @Dizzwold
                          last edited by

                          @Dizzwold said in Cast Toolplate Bed Progress ?:

                          I'm essentially sending a single line of code once to the Duet, so why can't a physical button do this?

                          What code are you trying to send?

                          Frederick

                          Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                          1 Reply Last reply Reply Quote 0
                          • deckingmanundefined
                            deckingman @Dizzwold
                            last edited by

                            @Dizzwold Just a thought but what happens if you refresh your browser after the macro containing M999 has run? Does DWC still want you to press a reset button?

                            Ian
                            https://somei3deas.wordpress.com/
                            https://www.youtube.com/@deckingman

                            Dizzwoldundefined 1 Reply Last reply Reply Quote 0
                            • Dizzwoldundefined
                              Dizzwold @deckingman
                              last edited by

                              @deckingman @fcwilt

                              Hi Guys,

                              Again thank you for your support and input.

                              @fcwilt
                              Sorry you misunderstand me.
                              I'm not trying to send any line of code. I'm just stating what clicking the on screen "Reset Machine" Button possibly does (on my computer screen). I'm no programmer but I believe DWC is Javascript and it would probably be something like onclick to enable a function for M999.

                              @deckingman
                              I've tried your suggestion with the following, but refreshing the browser makes no difference. If anything it makes it longer to reset the machine as your also reconnecting before resetting.
                              Also during the time after pressing the Emergency Stop Button, while the computer screen states and requests Reset Machine, the paneldue is Halted. It's either press Stop on the paneldue or click Reset Machine on the computer screen.
                              I think it's a case of getting into the software code for the GUI, to be able to enable this as a use, unless this plugin might help as previously mentioned by @Phaedrux in another post;
                              https://github.com/MintyTrebor/BtnCmd

                               ; Emergency Stop
                              M950 J2 C"io3.in"
                              M581 P2 T2 S1 R0
                              M581 P2 T3 S0 R0
                              
                              ;Trigger2.g Reset Emergency Stop Button
                              M112
                              M999
                              
                              ;Trigger3.g Z Axis Limt Switch
                              M98 P"config.g"
                              

                              Then changed to;

                               ; Emergency Stop
                              M950 J2 C"io3.in"
                              M581 P2 T0 S1 R0
                              M581 P2 T2 S0 R0
                              
                              ;Trigger2.g Reset Emergency Stop Button
                              M112
                              M999
                              

                              Then changed to;

                              ;Trigger2.g Reset Emergency Stop Button
                              M999
                              

                              And then again with;

                              ;Trigger2.g Reset Emergency Stop Button
                              M98 P"config.g"
                              
                              Dizzwoldundefined 1 Reply Last reply Reply Quote 0
                              • Dizzwoldundefined
                                Dizzwold @Dizzwold
                                last edited by

                                @dc42 @deckingman @Phaedrux @chrishamm @fcwilt

                                Hi guys,

                                I think with looking around I might be needing to change something in the following which is C++. I know a little C++ (and I mean a little), but I'm certain this is part of of why I need to physically press a Reset Machine radio button ;
                                https://github.com/Duet3D/RepRapFirmware/blob/3.4-dev/src/GCodes/GCodeInput.cpp
                                src/GCodes/GCodeInput.cpp

                                From line 144-219 is regarding the M112 command and how it is reset. I think?
                                Lines 188, 189, 205, 206 prevent a perpetual reset?

                                I've more code (.cpp files), to read, but I think I'm on the right track. I've got some thing to do this afternoon, but will come back.

                                Dizzwold.

                                Dizzwoldundefined 1 Reply Last reply Reply Quote 0
                                • Dizzwoldundefined
                                  Dizzwold @Dizzwold
                                  last edited by

                                  @Dizzwold

                                  RepRapFirmware/src/GCodes/GCodes.cpp
                                  

                                  Lines 866-872

                                  dc42undefined Dizzwoldundefined 2 Replies Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators @Dizzwold
                                    last edited by

                                    @Dizzwold please start a new thread about this because it is off-topic for this thread.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    1 Reply Last reply Reply Quote 0
                                    • Dizzwoldundefined
                                      Dizzwold @Dizzwold
                                      last edited by Dizzwold

                                      Okay, posted as follows;
                                      DWC on Computer Screen RESET MACHiNE from Emergency Stop
                                      https://forum.duet3d.com/topic/34675/dwc-on-computer-screen-reset-machine-from-emergency-stop

                                      @deckingman
                                      Going back to the toolplate bed, I'm going to use the following connector mounted to the bed frame. The idea being that I can disconnect the cables so I can remove the bed (the printer will be in a cupboard, tight on space, so less weight with moving the frame in and out).
                                      Nampn9R4Q8K%G%dD7%2z2g.jpg
                                      Being that this is now a Mains 240Vac bed heater, and I have spare pins on the connector, I'm thinking on the grounds of safety and running some kind of signal loop (5/12v on a relay), so when the connector is disconnected, the break in the (5/12v) signal loop will disconnect the mains with the relay (if I've not already done so), so there is no loose Live Mains cable floating around.
                                      At the moment I have a1 SSR controlling the 240Vac mains bed switched directly by the 24v O/P from the Duet 6HC.
                                      So I'm looking for ideas.
                                      Should I use a mechanical relay in series with the mains from the SSR, or is there a good chance this will weld closed?
                                      Use another SSR, again in series with the switched mains;
                                      Screen Shot 2024-01-14 at 16.57.47.png
                                      Dizzwold.

                                      1 Reply Last reply Reply Quote 0
                                      • Dizzwoldundefined Dizzwold referenced this topic
                                      • First post
                                        Last post
                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA