Problem with dual Z: Steppers can be stalled easily

  • Hi, I'm building a Hypercube Evo with dual Z Steppers.

    I have the problem when I connect two steppers to the Z-Ports, that I can easily stall one stepper with my fingers, when I set the Steps to 1600. I can only stop one stepper at a time, the other one can not be blocked. I can test this with both steppers, the first stepper I try to stop stalled.

    When I try with 800 steps it is not possible to stop the steppers with my fingers.

    Is this a normal behavior?
    What is the reason?
    What can I do to solve the problem?

    • Duet Wifi v1.04
    • Nema 17 Bipolar 59Ncm 1.8° 2A
    • I power the Duet with 24V
    • I have 10x2 Leadscrew, the calculator says I need 1600 Steps

  • can you post your config?

    when you put the steppers in parallel you reduce the maximum torque of the motors by half
    have a look at

  • @veti

    Thank you for your reply.
    So is it normal? Are the two Z Ports on the Duet Wifi wired in parallel or in series? Would it solve the problem to wire the two steppers in series? Or would it be best to use two drivers?

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ; generated by RepRapFirmware Configuration Tool v2 on Sat Apr 20 2019 19:12:55 GMT+0200 (Mitteleuropäische Sommerzeit)
    ; General preferences
    G90                                                ; Send absolute coordinates...
    M83                                                ; ...but relative extruder moves
    M667 S1                                            ; Select CoreXY mode
    ; Network
    M550 P"HyperCube"                                  ; Set machine name
    M551 P""                                           ; Set password
    M552 S1                                            ; Enable network
    M587 S"xxx" P"xxx"                                 ; Configure access point. You can delete this line once connected
    M586 P0 S1                                         ; Enable HTTP
    M586 P1 S0                                         ; Disable FTP
    M586 P2 S0                                         ; Disable Telnet
    ; Drives
    M569 P0 S1                                         ; Drive 0 goes forwards
    M569 P1 S1                                         ; Drive 1 goes forwards
    M569 P2 S1                                         ; Drive 2 goes forwards
    M569 P3 S1                                         ; Drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1                            ; Configure microstepping with interpolation
    M92 X80.00 Y80.00 Z1600.00 E420.00                 ; Set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00                ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000 Y6000 Z1200 E4800                       ; Set maximum speeds (mm/min)
    M201 X800.00 Y800.00 Z250.00 E800.00               ; Set accelerations (mm/s^2)
    M906 X1000.00 Y1000.00 Z2000.00 E1000.00 I30       ; Set motor currents (mA) and motor idle factor in per cent
    M84 S120                                           ; Set idle timeout
    ; Axis Limits
    M208 X0 Y0 Z0 S1                                   ; Set axis minima
    M208 X300 Y300 Z400 S0                             ; Set axis maxima
    ; Endstops
    M574 X1 Y1 S1                                      ; Set active high endstops
    ; Z-Probe
    M574 Z1 S2                                         ; Set endstops controlled by probe
    M558 P5 R0.4 H5 F1200 T6000                        ; Set Z probe type to effector and the dive height + speeds
    G31 P500 X0 Y0 Z2.5                                ; Set Z probe trigger value, offset and trigger height
    M557 X15:285 Y15:285 S20                           ; Define mesh grid
    ; Heaters
    M307 H0 B0 S1.00                                   ; Disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 T100000 B4138 R4700                        ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120                                       ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700                        ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280                                       ; Set temperature limit for heater 1 to 280C
    ; Fans
    M106 P0 S0 I0 F500 H T45                           ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H1 T45                          ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    ; Tools
    M563 P0 D0 H1                                      ; 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
    ; Automatic power saving
    M911 S22 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
    ; Custom settings are not configured

  • @runamok From the wiki - quote

    "If you have two Z stepper motors, connect them to the ZA and ZB connectors. These connectors are wired in series, which is better than wiring them in parallel for most types of stepper motor used in 3D printers.

    If you have only one Z stepper motor, plug it in to the ZA connector, and plug two jumpers into the ZB connector. Duet 2 boards are normally supplied with these jumpers already fitted."

    So they are conected in series. Have you removed the jumpers?

  • @deckingman Of course I removed the jumpers, otherwise I could not connect two steppers to Z 🙂

    What is the problem now? The voltage doesn't is enough for both steppers?

  • @runamok Can you easily stop either motor or is it just one? I can't see anything obviously wrong with your configuration. If you run M122 after moving the Z axis, does the voltage look OK. What is the minimum voltage that M122 shows?

  • @deckingman I can test this behavior with both motors.

    The first motor I grab can be stopped the opossite one cant be stopped, this is possible with A and B.
    If I stop A then B cant be stopped. If I stop B with my fingers then A cant be stopped.

    If a motor was stopped, it does not start running again.

    I can check the voltage this evening.

  • Moderator

    @runamok So from what I can derive of the information you gave you probably have a stepper like 17HS19-2004S (or similar). Plugging the numbers for these motors into the EMF calculator at yields a maximum speed of 7.4mm/s (or 444mm/min) before loosing torque due to back EMF. How fast are you running these motors when you test this? Can you still stall one of them when running no faster than 7mm/s?

    Your maximum speed in config.g is set to 20mm/s (1200mm/min). No matter how low you set the current for these motors they won't be able to reach this speed without loosing torque.

    Also why are you testing this? I never even thought of trying to stall my motors... I am very openly interested in your reasons. 🙂

  • @wilriker Ok I will give it a try with lower speed. Thanks for the hint with the EMF Calculator... I think it becomes a little bit clearer now. So its better to set the motor current lower? I thought the more current the better/stronger. According to the calculator it schould be ok at 800mA and 8mm/s max speed.

    I'm testing this with my fingers because one stepper also stuck when i try to move my bed and it gets misaligned and doesn't sounds good. 😄

    Thease are my steppers:

  • @wilriker I have tested with 800mA and 8mm/s and it worked very well.
    Many thanks for the help and tips.

Log in to reply