Pololu Robotics & Electronics
My account Comments or questions? About Pololu Contact Ordering information Distributors

Stepper stopped stepping


I used to have a functional stepper motor setup for quite a whilte, but something went wrong when I was poking around and parts got hot and it failed to step. I tried replacing everything. It no longer gets hot, but it fails to step.

The driver is DRV8825:

And Ive also tested 2 different stepper motors.
Latest being similar to:

Ive checked my wiring a dozen times, but the motor locks in position (and hisses / buzzes), on power up but never steps.
Ive checked the step input with a scope, and is a solid square wave, very slowly ramping up.

The inputs to the DRV8825 are:

n.c (nEnable) ---------------- (vmot) +24V (220uF / 50V cap connected to gnd)
GND (m0) ----------------- (gnd) GND
GND (m1) ----------------- (B2) motor green
GND (m2) ----------------- (B1) motor black
+5 (nReset) ----------------- (A1) motor red
+5 (nSleep) ----------------- (A2) motor blue
(pulse) (step) ----------------- (fault) n.c
+5 (dir) ----------------- (gnd) GND (motor + logic gnds tied together)

The strange thing is the pot-voltage is 1.04V and the current winding (with step input tied) is 1.04A, shouldn’t one be double the other?
I am measuring the voltage right on the pot (was told this was identical to VREF via).
Though measuring at the via itself (the only circle I find), reports 24V.
That seems very wrong.

Any hints appreciated, its driving me nuts!



Hello, Rob.

I am sorry your stepper motor system is not working. The voltage on VREF should not exceed 3.3V, so measuring 24V there is not good. Where did you get your DRV8825 carrier from? Can you post pictures that clearly show the components on the top of the board and your connections?



Ive stripped out the default inputs to help narrow it down.
It still starts up, jumping to one specific step of 4.
But will not step to any other position.

In the picture:

The purple,purple,white,white go to the bipolar motor

The blue lead to a microcontroller stepping pulse (verified in previous projects + scope, starts slow).

I got the part from one of your Canadian distributors (Creatron). Always have good service and parts, so Im thinking Im destroying these drivers somehow when I use them.



One thing I just discovered, leads me to think its not the Pololu board as I thought:


“Another important thing to note is that the Made in China copy is not quite the same as a genuine pololu DRV8825 board. The exposed via, which is connected to Vref on the genuine board, is actually connected to the bridge B power supply pin (11) of the DRV8825 on the Made in China board. In order to set Vref, you have to measure it off of pins 12 and/or 13 on the actual chip or from the center pin of the adjustment pot–the via will just give 12V or so. Pins 12 and 13 are located just adjacent to the via. If you look at the traces on the board, the via goes to pin 11, then there are pins 12 and 13, and then the last pin is 1”

That might explain why the via is at +24V and not VREF.

If there’s no obvious mistakes in my circuit, can I procure an official in Canada from a redistributor, or do I have to order from pololu to be safe?



I do not see any obvious mistakes in your circuit.

Creatron has ordered our DRV8825 drivers in the past, but the picture they have on their website now is clearly of a knockoff, and they do not seem to mention Pololu anywhere on the page.

We have many distributors in Canada, so I expect you should be able to find a genuine Pololu driver locally, and if you have any doubts, I recommend you contact them to confirm that boards really are from us. Unfortunately, we do not keep track of which distributors carry which products, so you might need to look around their websites (or just get them from RobotShop).



Okay thanks for the heads up.
I will followup with RobotShop to make sure its genuine.
I will followup results here.



Alright , the good news is I got the a genuine pololu stepper driver delivered promptly from robotshop.
The bad news is I somehow managed to order a4988 instead of drv8825. (getting tired!).

My circuit originally ran with the a4988 anyways,so the end result is it works again.

Im driving it half-step, 240 rpm, @ 1.9 Amps, 24V

I wanted to go to the drv8825 to get a bit more amperage as my original setup would often start skipping/resonating, but for now all seems well.
I also have a heatsink installed, which I lacked last time, so hopefully that helps.

So in conclusion, the power supply + motor (+ likely wiring were fine), it was the non-pololu chip causing the problem.

I’ll try a (genuine) drv8825 if I find the load is too heavy for this motor.

Thanks for the tips,


So, next update.
The A4988 is stalling once I try to attain top speed (225 - 240 rpm).
This was the previous problem, when I tried upgrading to the DRV8825 (before getting the defective non-pololu one).

I’m going to try the following now to attain the faster speed reliably:

-implement a proper linear ramp instead of an exponential curve
-try driving higher than 24V (motor rated to 50V)
-try DRV8825 at 2A assuming the A4988 is having problem achieving 2A continuous)



You might also try adding a lightweight fly wheel to the output of your stepper motor. We did some brief speed testing with the DRV8825 and a #1207, and you can view the results of our tests (which include cases where we added a fly wheel) in this forum post.

By the way, increasing the voltage of your supply beyond 24V sounds like a good way to increase speed, but just keep in mind that the upper operating voltage of the A4988 is 35V (and the DRV8825 is 45V).



Thanks for the reminder on the upper voltage.
I was searching for a 36V power supply, that I was going to try with the A4988 (likely damaging it).

Well it now seems to reach max speed reliably with no hardware changes.
I actually reduced current to (1.0 / 0.7 = 1.4 A)
All I did was change the ramp up time from 8 seconds to 16 seconds in my microcontroller code, and its worked several times in a row without skipping.

1 bit change in the microcontroller code seems to have done the trick!

I’ll review the flywheel results.
My setup actually resembles a flywheel somewhat.