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

    Sensorless homing not working

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    7
    916
    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.
    • jujojujo_2003undefined
      jujojujo_2003
      last edited by jujojujo_2003

      I have an ender 3 with these stepper motor drivers for X & Y axis https://www.printedsolid.com/products/ldo-nema-17-motor-high-temp-voron-ldo-42sth40-1004mahvrn
      (this is a 0.9 stepper) and I am not able to get sensorless homing to work. I have a duet 3 mini 5+ board (with 3.2.2 firmware)

      What I gather from https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing
      there are the following variables that I can play with to get sensorless homing to work

      i) The current percentage value for stepper motor in M913 command
      ii) The feedrate for G1 command for homing
      iii) The sensitivity params (S ) in M915
      iv) Stealthchop <-> Spreadcycle cutoff given by V param in M569

      From the docs, the only restriction is that feedrate must be lower than Stealthchop <-> Spreadcycle cutoff (which we get from M569 P0.0 command multipled by 60 to convert mm/s to mm/min)

      I have tried a bunch of values for these 4 params
      i) M913 ranging from 10-100
      ii) Feedrate ranging from 2400 to 7500 (capped by stealthchop cutoff)
      iii) Sensitivity ranging from -63 to +63
      iv) V param for M569 ranging from 1 to 100

      For all these cases, the X carriage just seems to move and crash with "Homing failed" message. Given that for all values, high and low I get the same crash, I am not sure how to move or change the parameters.

      Also with V < 50, I either get "driver short to ground" error or "high motor temperature" error.
      Shouldn't setting sensitivity (S param in M915) to a very low value cause the stall detect to be triggered all the time?
      Any idea how I can get this to work?

      config.g
      homex.g
      homey.g
      retractprobe.g

      homex.g

      M98 P"retractprobe.g" 
      M913 X70 Y70  		; drop motor currents to 40% 
      M915 X S-20 R0 F0 H400; Sensitivity 4, don’t take action, don’t filter, 400steps/sec
      G91 				; set relative
      ;G1 H2 Z5 F1200      ; lift z by 5
      G1 H1 X-250 F4500	; move left 250mm, stopping at the endstop
      G90 				; back to absolute positioning
      M913 X100 Y100 		; motor currents back to 100%
      M915 S63 X Y R0	    ; Disable Logging and lower stall detection
      
      o_lampeundefined David Greenundefined 2 Replies Last reply Reply Quote 0
      • o_lampeundefined
        o_lampe @jujojujo_2003
        last edited by

        @jujojujo_2003 said in Sensorless homing not working:

        Shouldn't setting sensitivity (S param in M915) to a very low value cause the stall detect to be triggered all the time?

        I'm no expert either, but to me a lower sensitivity leads to harder crashes?

        1 Reply Last reply Reply Quote 0
        • David Greenundefined
          David Green @jujojujo_2003
          last edited by

          @jujojujo_2003 said in Sensorless homing not working:

          M915 X S-20 R0 F0 H40

          I use:
          M400
          M913 X70 Y70 ; drop motor current to 70%
          G91 ; relative positioning
          G1 H2 Z10 F6000 ; lift Z relative to current position
          G1 H1 X-320 F12000 ; move quickly to X axis endstop and stop there (first pass)
          G1 H2 X15 F1800 ; go back a few mm
          G1 H1 X-320 F12000 ; move slowly to X axis endstop once more (second pass)
          G1 H2 Z-10 F6000 ; lower Z again
          G90 ; absolute positioning
          M400
          M913 X100 Y100 ; return current to 100%
          Which works on my CoreXY I don't have the M915 in the homex or y.g

          jujojujo_2003undefined 1 Reply Last reply Reply Quote 0
          • jujojujo_2003undefined
            jujojujo_2003 @David Green
            last edited by

            @david-green Tried this one too but it crashes again. 😞

            1 Reply Last reply Reply Quote 0
            • jujojujo_2003undefined
              jujojujo_2003
              last edited by

              Looking at https://forum.duet3d.com/topic/21108/stall-detection-on-duet-3-mini/4 , I tried updating to V3.3 beta firmware and tried a bunch of S values for M915 from -128 to +127 but still the same crash.

              1 Reply Last reply Reply Quote 0
              • jujojujo_2003undefined
                jujojujo_2003
                last edited by jujojujo_2003

                M98 P"retractprobe.g" 
                M400                      ; Wait for current moves to finish
                M913 X70  		          ; drop motor currents to 50% 
                M915 X S-3 R0 F0 H400     ; Sensitivity -3, don’t take action, don’t filter, 400steps/sec
                M569 P0.0 V10             ; reduce V parameter so driver operates in stealthChop
                G4 P200                   ; wait 200ms
                G91 				      ; set relative
                G1 H1 X-255 F4000         ; move quickly to X axis endstop and stop there (first pass)
                G90 				; back to absolute positioning
                M913 X100 Y100 		; motor currents back to 100%
                M915 S63 X Y R0		; Disable Logging and lower stall detection
                

                So this is the config that worked for me(On v3.3 beta). It looks like we need to dial M569's V param first such that for that V param, M915 S-63 always triggers a stall and M915 S63 always triggered a crash. Then you binary search on the correct S value

                The problem now is that it homing doesn't work when the gantry is towards the end of x axis. But then If I home twice then it works. This seems very hacky. and also I keep getting "Error short-to-ground reported by driver(s) 1"

                1 Reply Last reply Reply Quote 0
                • jujojujo_2003undefined
                  jujojujo_2003
                  last edited by

                  @jujojujo_2003 said in Sensorless homing not working:

                  Error short-to-ground reported by driver(s) 1

                  SO I was able to fix this by reducing the current. My stepper current was set to 900ma . Probably this was too high(even though this is < the rated current of both stepper and driver)

                  Lowering it to 700ma fixed the issue.

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