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

    Core XY multiple z-axis stall detection

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    3
    177
    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.
    • Luarundefined
      Luar
      last edited by

      Hello, everyone.
      I am trying to configure my Core XY printer.

      Configuration:
      Duet2 Wifi, Duex2, Firmware 3.01RC11, Four Z Steppers connected to "Drive 0, 1, 2, 3".

      End stop of the Z axes is at Z max (bottom). Attached my Config and a Z-Home macro.

      The problem is (when running the macro), the four Z-Steppers drive down the bed (+z), but when hitting the frame they don't turn off. The steppers rattle until I stop it manually.

      I have already tried different stall detection thresholds between +20 and -64.

      Can anyone help me with my problem?
      Many thanks in advance.

      Z-Home

      M400                    		; make sure everything has stopped before we make changes
      M915 P0:1:2:3 S-64 F0 R0 H400	; Configure motor stall detection
      M574 Z2 S4              		; configure sensorless endstop for high end on Z
      M913 Z20        				; reduce motor current to 20%
      G91                     		; use relative positioning
      G1 H1 Z700 F4000				; move Z 700mm down, stopping at the endstops
      G90                     		; back to absolute positioning
      M400                    		; make sure everything has stopped before we reset the motor current
      M913 Z100     					; motor currents back to normal
      
      

      Config

      ; General preferences
      G90                                            ; send absolute coordinates...
      M83                                            ; ...but relative extruder moves
      M550 P"CoreXY"                                 ; set printer name
      
      M667 S1                                        ; select CoreXY mode
      
      ; Drives
      M569 P5 S1                                     ; physical drive 5 goes forwards
      M569 P6 S1                                     ; physical drive 6 goes forwards
      M569 P0 S1                                     ; physical drive 0 goes forwards
      M569 P1 S1                                     ; physical drive 1 goes forwards
      M569 P2 S1                                     ; physical drive 2 goes forwards
      M569 P3 S1                                     ; physical drive 3 goes forwards
      M569 P4 S1                                     ; physical drive 4 goes forwards
      
      M584 X5 Y6 Z0:1:2:3 E4                         													; set drive mapping Z = front left, front right, rear left, rear right
      M671 X-166.4:166.4:-166.4:166.4 Y-172.525:-172.525:172.525:172.525			; leadscrews at front left, front right, rear left, rear right
      
      M350 X16 Y16 Z16 E16 I1                        ; configure microstepping with interpolation
      M92 X160.00 Y160.00 Z400.00 E873.08            ; set steps per mm
      M566 X900.00 Y900.00 Z12.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
      M203 X6000.00 Y6000.00 Z300.00 E1200.00        ; set maximum speeds (mm/min)
      M201 X500.00 Y500.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
      M906 X1700 Y1700 Z1300 E1700 I30               ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                        ; Set idle timeout
      
      ; Axis Limits
      M208 X-157.6 Y-162.5 Z0 S1                     ; set axis minima
      M208 X157.6 Y162.5 Z295 S0                     ; set axis maxima
      
      ; Endstops
      M574 X1 S3                                     ; configure sensorless endstop for low end on X
      M574 Y1 S3                                     ; configure sensorless endstop for low end on Y
      M574 Z2 S4                                     ; configure sensorless endstop for high end on Z
      
      ; Z-Probe
      M558 P0 H5 F120 T6000                          ; disable Z probe but set dive height, probe speed and travel speed
      M557 X-150:150 Y-150:150 S20                   ; define mesh grid
      
      ; Heaters
      M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
      M950 H0 C"bedheat" T0                          ; create bed heater output on bedheat and map it to sensor 0
      M143 H0 S120                                   ; set temperature limit for heater 0 to 120C
      M307 H0 B0 S1.00                               ; disable bang-bang mode for the bed heater and set PWM limit
      M140 H0                                        ; map heated bed to heater 0
      M308 S1 P"spi.cs1" Y"rtdmax31865"              ; configure sensor 1 as thermocouple via CS pin spi.cs1
      M950 H1 C"duex.e2heat" T1                      ; create nozzle heater output on duex.e2heat and map it to sensor 1
      M143 H1 S280                                   ; set temperature limit for heater 1 to 280C
      M307 H1 B0 S1.00                               ; disable bang-bang mode for heater  and set PWM limit
      
      ; Fans
      M950 F0 C"duex.fan3" Q500                      ; create fan 0 on pin duex.fan3 and set its frequency
      M106 P0 C"Pump" S0 H-1                         ; set fan 0 name and value. Thermostatic control is turned off
      M950 F1 C"duex.fan4" Q500                      ; create fan 1 on pin duex.fan4 and set its frequency
      M106 P1 C"120mm Fan" S1 H1 T45                 ; set fan 1 name and value. Thermostatic control is turned on
      M950 F2 C"duex.fan5" Q500                      ; create fan 2 on pin duex.fan5 and set its frequency
      M106 P2 C"Part Cooling" S1 H-1                 ; set fan 2 name and value. Thermostatic control is turned off
      
      ; Tools
      M563 P0 S"Hotend" D0 H1 F2                     ; define tool 0
      G10 P0 X0 Y0 Z0                                ; set tool 0 axis offsets
      G10 P0 R0 S0                                   ; set initial tool 0 active and standby temperatures to 0C
      
      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        Have you checked that your Z homing move is above the minimim speed for stall detection?

        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
        • Phaedruxundefined
          Phaedrux Moderator
          last edited by

          https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Minimum_recommended_speed_for_stall_detection

          See the calculation there to determine your H value.

          Z-Bot CoreXY Build | Thingiverse Profile

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