Running Steppers and Servo from Adafruit motor shield


  • I'm working with an Arduino and the Adafruit motor shield v2. I've got two steppers and a servo hooked up and a working 12 volt power supply, but after a few turns of the stepper motor, my voltage drops down in the 2.5V range and the shield stops working for a few minutes. None of the chips seem to be over heating though. Any ideas?

Here are the steppers and the servo: stepper- servo-

Thanks, Kyle

Those 3V, 1.7 amp/phase stepper motors are intended for use with chopper-type stepper drivers, like the Pololu A4988, and cannot be used with motor drivers like the Adafruit V2, which is intended for higher voltage, relatively low current steppers or DC motors.

There are several possibilities for why the voltage is dropping -- either the power supply is incapable of delivering the required current (which the driver cannot deliver anyway) or the current limit on the motor driver chip is kicking in.

1.75 ohm windings from 12V - do the maths, its > 80 watts, this isn't an option.

Chopper driver chips like the A4988 use feedback and PWM to program the winding current whilst simultaneously acting as buck DC-DC converters. This means that you get plenty of voltage left over for overcoming back-EMF once the motor's spinning so you can get reasonable speeds. Steppers with higher resistance windings can't go very fast for this reason, and this is why low-resistance steppers exist.

A stepper designed for 12V non-chopper drive would have winding resistance more like 50 ohms (and would be unipolar anyway in practice).

Thank you guys. I'll look in to the chopper drivers