I am working in a project in which I need to control at the same time three NEMA17 stepper motors. In order to do so, I am using three DRV8825 drivers working at 12V connected to an Arduino MEGA.

This Arduino is generating the pulses in velocity ramps so that we have an accelerated movement to reach the goal.

The schematic I am using for connecting the drivers is the one that the manufacturer recommends: enter image description here

With a digital analyzer, I can see that my velocity ramp is being generated properly:

enter image description here

In this picture below you can see how steps (ST) are generated once the direction (DR) is set for each of the motors. The time waiting after the direction change is bigger than the necessary established by the manufacturer and also does the duration of the step pulses.

Following this, the motors are supposed to make an accelerated movement until reaching a certain position and then, decelerate and stop.

Although, I am facing the problem that, in some cases, one of the motors (not always the same one) makes a few steps in the opposite direction of the movement and, after that, it executes the expected movement. This leads to, even of making the three motors perform the same movement, one of them finishes differently.

I tried to change the drivers but the same happens. Also, as I said before, I have checked that the pulses are correctly generated.

I would like to know if anyone has faced a similar problem or knows any reason that could lead to this strange behavior.


  • /fault is an active low output
    – jsotola
    Mar 17, 2021 at 1:28

1 Answer 1


So, apparently the motors I am using have a optimal work range that doesn't start at 0 but 200PPS. Though, even generating properly the velocity ramps, when using a low acceleration, my motors would be running for some steps outside this optimal range, causing strange movements at the beginning of the movement.

In order to solve it, these non-optimal low velocities are avoided while accelerating so that motors enter directly to the optimal work area.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.