Motor travels in one direction regardless of command
-
Recently (and quite suddenly) I began to have layer shifting issues on my X axis.
The layers always seemed to go off in the negative direction and eventually the prints looked like the leaning tower of Pisa.
My first instinct was to look for mechanical binding, and sure enough when I pulled everything apart I found that the Chinese MGN12 block on that axis felt "gritty".
I replaced it with a Hiwin rail which is as free as a bird, but the problem persisted.
So then I replaced the stepper.
Somewhere along the track I began to notice that during homing, the printer would sometimes not move off the stop after the first bump and would "grind" against the stop.
Having replaced the motor and rail, I decided to replace the cable as well.
Now the issue has progressed to the point that regardless of whether I issue a move command in the positive or the negative direction, the motor only moves in the negative direction.
This now happens regardless of which motor or cable I use.
If I swap the X & Y cable on the board, the problem remains on which ever axis is plugged into driver 0.
I also rolled back to 3.4.0 just to be sure as I'd recently moved to RC2, but I didn't think it was firmware related.
I now believe that when I first notice layer shifting, the motor was actually moving a few steps in the negative direction on moves it should have gone the other way.
I have not had any errors regarding shorts or driver faults, so I don't think a wiring fault has caused the problem.
It seems to me the driver has failed in some way, but I've never heard of one displaying this particular behaviour, so I'm throwing it out there for comment.
The board is 5-6 years old, and has done plenty of work, so this isn't a critical post in any way. -
@owend Do you have a spare driver you could switch to? Running with that configuration for a few prints would probably prove that there is a problem with driver 0.
-
@gloomyandy
Unfortunately all the drivers are in use.
I suppose I could run the Z axis on a single driver for a while. -
Just for kicks I tried reversing the motor direction of driver zero with M569 and it still travels in the negative direction regardless of what G code command I send it.
The other interesting thing is that when I was trying to figure out where the problem was I configured stall detection.
It was registering plenty of stalls at anything over about 40mm/sec on driver 0 when the motor was attempting to go in the correct directions.
Now that it's decided to only dress to the left, there are no stalls being recorded even at 120mm/sec.
Turning off stall detection makes no difference,
-
@owend said in Motor travels in one direction regardless of command:
If I swap the X & Y cable on the board, the problem remains on which ever axis is plugged into driver 0.
I think it's obvious: Driver 0 has left the silicon world …
-
I wonder if the rail binding caused some damage to the driver.
-
@phaedrux
I can't rule that out although the binding was not catastrophic. Just the Chinese bearings were no longer round so you could feel them clicking in spots.It's as if the direction pin is shorted internally in the driver.
I'll play around next weekend and replace the driver if necessary.
Will try running on a single Z for a while just to confirm before I do that as the eyes really struggle on such small parts 🥺Never seen this behaviour before so interested to see whether it's a "thing" sometimes.
-
@owend said in Motor travels in one direction regardless of command:
The board is 5-6 years old, and has done plenty of work
Which board is it?
-
@phaedrux
Duet 2 wifi -