[SOLVED] DRV8880 not working with specific motor

I have Pololu item #: 2971, DRV8880 Stepper Motor Driver Carrier with a 44V supply and this 50V 100uF electrolytic cap mounted very close to the driver board https://uk.rs-online.com/web/p/aluminium-capacitors/2155764/

The step and dir pins are driven by an arduino. I set VREF for current limiting somewhere between 1 and 1.3V.

This setup works great with several generic stepper motors I had lying around. But it doesn’t work with the motor I really need it to. When I say doesn’t work, I mean the motor is extremely, extremely weak. Barely strong enough to turn its shaft freely with nothing connected. WIth nothing connected to the motor, I can easily turn the shaft with my fingers when it should be stopped. Maybe this could be explained by mixing the phases when connecting up the motor, but I’ve checked that 1000 times and it’s not wired wrong (about 1 ohm measured between A1-A2 and B1-B2, as expected for the motor phase resistance). I’m stepping at 100Hz, 1/8 microstepping (tried no microstepping aslo) and its not missing any steps. The driver is not overheating and my power supply is not current limited.

The motor that’s not working is from a company called Phytron, part number VSS25.200.1.2-UHVG
Here are its specs as listed by the manufacturer on its datasheet:
Steps per revolution: 200
Max current per phase: 1.2A
Resistance per phase: 0.95 Ohm
Inductivity per phase: 0.4 mH
Max operating voltage: 70V
Holding torque: 12 mNm
Detent torque: 2 mNm

What could be wrong here? What scope traces would be helpful to post for troubleshooting?

My best guess is that the DRV8880’s autotune feature is somehow failing here, if that is the case, why?


It is possible that the autotune feature on the driver is having trouble controlling the current through the coils. That motor has an unusually low (at least compared to other motors we are familiar with) coil resistance, rated voltage and inductance and your supply voltage is unusually high. In general, those factors can improve the high speed torque of a stepper motor (where the direction of current though the coils must be changed rapidly), but they can make it difficult for the driver to run at a low enough duty cycle to prevent current overshoot.

If the supply voltage for your stepper driver can be isolated easily, you might try using a 12V supply to see if the behavior improves. You might also monitor the fault pin with your oscilloscope to see if the low resistance of the coil is registering as a short circuit to the driver. If you have a current probe, a scope capture showing the current through one of the leads to one of the motor coils might be useful to see how the current is being controlled. Finally, scope captures showing the voltages from ground to the two sides of one of the coils would show how the PWM algorithm the driver uses is switching the H-bridges to control the current.


Thanks very much for your feedback and ideas Nathan!

I really hope it’s as easy as turning down my supply voltage (I’m testing with a programmable DC supply, so this is very easy). If that doesn’t fix it, I’ll try putting together the traces you suggest and post back here ASAP, probably within a day or so.


Yep. Problem solved by going down to a lower supply voltage. Both 24 and 12V work fine. Thanks again Nathan!

Bonus scope captures for the two sides of a motor phase for 12V and 24V: