Stepper motor turns only in one direction
-
Hey folks, I am having a super weird problem with my setup rn.
I am using a Duet 2 Wifi Board with Expansion Breakout Board. My 2 Z-Axis motors (Nema 23 4.2A) are connected to a external driver (DM542T) with an external PSU. The 4 signal connectors come from the Breakout board (and the ENABLE is not connected).
As soon as I start the motion via the UI, the weirdness happens:
If I press up : both z-motors turn forward and up
If I press down: one motor turns backwards (as expected) - the other one turns in the opposite direction.I have tried the different motors on the different driver; they are wired correctly. I have tried exchanging the signal cables + reasigning different ports , and nothing changed.
Settings on the external drivers (i.e. microstepping, currents are identical)First thought: Driver must be having a problem , exchanged it - same problem again.
What could be the problem here?
I can only see some potential errors in the software but I am not aware of anything like this even being possible.
The 2 Z drives are currently connected to the drivers 5 & 7 on the Breakout Board.Config.g:
M569 P0 S1 ; Drive 0 X M569 P1 S1 ; Drive 1 Y M569 P2 S0 ; Left z-motor (original Z) ; NOT USED M569 P3 S1 ; Drive3 [Extruder 0] - new Extruder 0 [ENABLED] M569 P4 S1 ; Drive4 [Extruder 1] - new Extruder 1 [ENABLED] M569 P5 R1 T2.5:2.5:5:5 S1 ; BreakoutBoard_Driver5 - new Z Axis Left M569 P7 R1 T2.5:2.5:5:5 S1 ; BreakoutBoard_Driver7 - new Z Axis Right ; M569 P7 S1 ; Extruder2 - Physical Tool 2 ; M569 P8 S1 ; Extruder3 - Physical Tool 3 ; M569 P9 S1 ; Extruder4 - Physical Tool 4 M584 E3 E4 ; set drive mapping Driver Extruder 3, Extruder 4 M584 X0 Y1 Z5:7 P4 ; set drive mapping Driver 0 For X, 1 for Y, Z 5:7, with 4 Axis (exkl. Extruders) visible in UI M350 X16 Y16 Z16:16 E16:16 I1 ; configure microstepping with interpolation - enable microstepping ich weiß gar nicht ob mehr als 16 überhaupt geht.... M92 X640.00 Y640.00 Z3200:3200 E3360:3440 ; set steps per mm M566 X500.00 Y500.00 Z20.00:20.00 E1500:1500 ; set maximum instantaneous speed changes (mm/min) [Jerk] M203 X18000 Y18000 Z420::420 E12000:12000 ; Set maximum speeds (mm/min) M201 X1200 Y1200 Z100:100 E2000:2000 ; Set accelerations (mm/s^2) M906 X2000 Y2000 E500:500 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S60 ; Set idle timeout
I appreciate your help! Also I don´t really know a fitting Category for this...
-
@Steppenleguan GREAT job doing various experiments to see what's going on. You've eliminated a lot of things that could cause the issue.
Can you get a voltmeter on the direction input AT THE STEPPER DRIVER CONNECTOR?
I hypothesize that the direction signal is somehow not getting from the Duet to the stepper driver properly. This test will show if that signal swings from a low voltage to a higher voltage and back as you change the direction of the motion. I don't know your specific connections, so I can't say if you should measure from the DIRECTION pin to ground or to some other voltage source. It depends on your stepper motor driver interface.
If the signal does NOT change, try measuring it using the voltmeter at the Duet.
- If it changes there, you've got a bad wire.
- If it does not change there, you've either got a bad Duet, or you're on the incorrect pin, or you've got the Duet misconfigured.
It's great to see you've done the basic experiments first. Thank you for that.
-
@alankilian I might have found the problem.
I checked the resistances of the 5V signal wires
from the breakout board to the stepper drivers again and I found one cable that has infinite resistance.
It seems like it is one of the dir+- cables. So that would explain why the motor is running but cannot change its director.At first I was expecting it to be the crimps or the connectors, but it appears that even with new crimps the cable is corrupted.
I'm checking in again in the evening and take a new cable, measure the resistances and hope that this solves to problem.