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

    Any way to Enable/Power all stepper motors (issue with Stallguard)

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    3
    662
    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.
    • carlossprundefined
      carlosspr
      last edited by

      Hi, I have Stallguard setup for homing X,Y and Z on a Cartesian printer and it is working very reliably almost all the time. The only issue remaining is when the motors are powered off. If the motors are powered off (i.e. after power up printer, after M84 command or after emergency reset) the homing will fail the first time, but will work perfectly well all the consequent homing actions.

      My "educated guess" of the behavior (-please correct me if I am wrong-) is that right after Powering on the steppers, the motors demand some amount of current and they would produce an small transient current that would suffice to trigger the stallguard. This small transient is probably not present after the motors are already powered up and hence second and consecutive homings will work reliably, until a M84 command is issued to power off all motors and then the next home would fail again due to these transients.

      I do not have an oscilloscope to test this hypothesis, but I have tried to find some GCODE (like Smoothieware M17: Enable/Power all stepper motors) so that I can modify my homing scripts to start powering on the steppers/motors, then issue a G4 Pxxx to wait some milliseconds and after that execute the G1 command for the homing movements. Unfortunatelly I have not been able to find any GCODE suitable. Any ideas of GCODE that I could use as workaround to force a power on of all motors?.

      Thanks.

      1 Reply Last reply Reply Quote 0
      • fmaundefined
        fma
        last edited by

        Just doing tiny relative move on all 3 axes?

        G91
        G1 X0.01 Y0.01 Z0.01
        G90

        Frédéric

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

          As FMA says, but add parameter S2 to that G1 command. You may need to move the motor at least one full step to clear the stall status, so about 0.2mm or a little higher instead of 0.01mm. You can put that command near the start of your homeall.g file.

          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
          • First post
            Last post
          Unless otherwise noted, all forum content is licensed under CC-BY-SA