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

Obey hard limit switches?

Scheduled Pinned Locked Moved Unsolved
CNC
9
31
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.
  • undefined
    Phaedrux Moderator
    last edited by 30 Aug 2020, 19:06

    @maxspongebob I'm not saying this is how it should be, I'm simply explaining how it is currently. Having the option to obey endstops at all times when in CNC mode may be possible and is a valid firmware request. I'll raise that.

    You can also make a thread in the firmware wishlist forum explaining how and why you think it should work if you want.

    Z-Bot CoreXY Build | Thingiverse Profile

    1 Reply Last reply Reply Quote 0
    • undefined
      dc42 administrators @Gerrard
      last edited by 30 Aug 2020, 19:58

      @Gerrard said in Obey hard limit switches?:

      So that takes care of the triggers during jobs, but what about other Macros or manual movement (jogging etc)? Is there an overriding default behaviour? Should it be defined as a trigger in config.g, then configured as an endstop for the homing operations and a trigger again after homing?

      You can configure a trigger to be active only when running a job from SD card.

      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
      • undefined
        dc42 administrators @kazolar
        last edited by 30 Aug 2020, 20:01

        @kazolar said in Obey hard limit switches?:

        There is actually no way. If you setup a eStop trigger you have to reset or powercycle the board, no good. My custom M113 does exactly what eStop button in the webui / panel due does-- stop the world (immediately) and reboot.

        Would it be better if emergency stop (M112) rebooted the board automatically?

        The disadvantage i can see with doing that is that if the board is being fed GCodes via USB or from an attached SBC, it may start executing commands again immediately. I think that's why M122 was defined originally to require a manual reset. Similar how a proper Emergency Stop switch has be reset before you can run the machine again.

        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

        undefined 1 Reply Last reply 2 Sept 2020, 16:08 Reply Quote 1
        • undefined
          maxspongebob
          last edited by 2 Sept 2020, 15:59

          In my travels I have come across M564. Would a M564 H1 S1 at the start of my print, or just after the first layer keep the motion within the end-stops?

          1 Reply Last reply Reply Quote 0
          • ?
            A Former User
            last edited by 2 Sept 2020, 16:02

            No, but if you set your maximum travel range the firmware will stay within that regardless of end stops. So if your motion system is dimensioned to not skip steps you'll be fine.

            Otherwise add the macro to pause or e-stop if end stops are tripped.

            undefined 1 Reply Last reply 2 Sept 2020, 16:19 Reply Quote 0
            • undefined
              maxspongebob @dc42
              last edited by 2 Sept 2020, 16:08

              @dc42 In answer you your question, I believe that a E-Stop signal should just stop all motion. It should not reboot the board as that would clear any of the events or activity that caused the problem and hamper investigation of the cause. On a CNC machine the E-Stop should also turn off the power to the servo's and spindle. That is unless they are equipped with a braking mechanism and in that case the brake should be applied first then power off.

              The point is SAFETY. E-Stop is what you press if a problem exists that is going to cause damage to you or the machine. The stop or feed hold button is what you press if you think there may be a problem.

              undefined 1 Reply Last reply 2 Sept 2020, 16:18 Reply Quote 0
              • undefined
                dc42 administrators @maxspongebob
                last edited by 2 Sept 2020, 16:18

                @maxspongebob said in Obey hard limit switches?:

                @dc42 In answer you your question, I believe that a E-Stop signal should just stop all motion. It should not reboot the board as that would clear any of the events or activity that caused the problem and hamper investigation of the cause. On a CNC machine the E-Stop should also turn off the power to the servo's and spindle. That is unless they are equipped with a braking mechanism and in that case the brake should be applied first then power off.

                Thanks. I guess we'll need a separate mechanism to reset the E-stop without resetting the board, possibly M999 S0 or else a new M-code.

                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
                • undefined
                  maxspongebob @A Former User
                  last edited by 2 Sept 2020, 16:19

                  @bearer So lets say that a print is dislodged from the bed and gets wedged such that the steppers skip some steps. Then every time the head travels to the opposite side it will bash up against whatever is in the way beyond the end-stop until the job is complete.

                  Doesn't sound like a good plan to me.

                  Why not just pay attention to the end-stop signal and stop if it is tripped?

                  1 Reply Last reply Reply Quote 0
                  • ?
                    A Former User
                    last edited by 2 Sept 2020, 16:22

                    Is that a fault of the board or the printer? The board allows you compensate for that by using the macro to pay attention to the end stops and take whatever action you desire, just like it allows you to not configure end stops at all if thats your cup of tea.

                    The better plan would be to use stall guard to detect the lost steps if you want to get pedantic.

                    undefined 1 Reply Last reply 2 Sept 2020, 16:57 Reply Quote 0
                    • undefined
                      maxspongebob @A Former User
                      last edited by 2 Sept 2020, 16:57

                      @bearer You have to remember, we are not just talking about small 3D printers any longer. Not every machine uses stepper motors driven from the board. Stall guard doesn't help if your motors don't stall.

                      My point was that a basic function of a motion controller is to cause motion based on commands to do so, and to stop based on feedback.

                      While my Duet 3 is working great at causing motion, it is not so good at paying attention to feedback from the system. In my opinion it should be an out-of-the-box feature to stop the motion of an axis or spindle based on a hardware signal. Virtually every other motion controller that I have used, granted they are mostly for CNC subtractive machines, does this.

                      Requiring that the customer also create and program macros to achieve basic functionality is a stretch. Most would just move on to another board that provides the features they are looking for.

                      ? undefined 2 Replies Last reply 2 Sept 2020, 19:56 Reply Quote 0
                      • ?
                        A Former User @maxspongebob
                        last edited by 2 Sept 2020, 19:56

                        I really don't see the point in getting worked up over something you could easily address by submitting a pull request or issue to the online configurator to include that by default for cnc setups.*

                        Those who don't use the configurator can probably manage to configure it if the so choose.

                        *) although its no guarntee the devs would accept, maybe adding a comment to the config is a middle ground?

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          fcwilt @maxspongebob
                          last edited by 2 Sept 2020, 20:59

                          @maxspongebob said in Obey hard limit switches?:

                          Requiring that the customer also create and program macros to achieve basic functionality is a stretch.

                          Really? Given the amount of work that goes into building these machines a few minutes coding a macro is a stretch?

                          Frederick

                          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                          1 Reply Last reply Reply Quote 0
                          29 out of 31
                          • First post
                            29/31
                            Last post
                          Unless otherwise noted, all forum content is licensed under CC-BY-SA