Controlling A stepper.

Hey guys, i have an Arduino Mega, and after running through a lot of the basics in programming the Arduino Environment and Processing, im ready to move on to Servo/Stepper controlling.

a couple of quick questions that i couldnt answer from reading:

Do i absolutely need an H-bridge to control the servos/steppers? ive seen a couple posts where they arent even mentioned, and a couple where they've been said to be necessary.

if an H-bridge isnt necessary, how can i power the servo/stepper externally?

thank you for your help.

Check out the stepper driver articals in the physical/mechanical section of the Arduino playground page on interfacing with hardware:

You will need to know the type of stepper motor you have (windings/bipolar or unipolar), it's winding voltage and current ratings to actual select components and methods to drive the stepper.


yeah, ive read pretty much all of that xD

its a 4-pin stepper, pretty small, taken from an old CD-Rom drive i had.

im just wondering if it'll burn out the arduino pin, i dont want to exceed 40ma

you probably will burn it out. even if the current draw is small enough, when applying power to a coil of wire, you generate sharp voltage spikes which can destroy your pins. driving a motor directly off the pins is generally not recommended.

exactly, so im wondering, aside from the L293D, what other chip can i use?

ive also seen a Servo shield that uses a 4017 IC decade counter/decoder to power/control the servos.

how would i be able to use one of those(i have one readily available) or do i have to get the 293?

SparkFun sells a stepper controller for around $15 based on this controller chip:

Does microstepping and has built in current limiting.


so im wondering, aside from the L293D, what other chip can i use?

Lots of different types to choose from:-