Automatic, timed DC polarity switching for small DC motor

Thread Starter


Joined Oct 11, 2010
Hello All,

I am trying to make a small DC motor oscillate at a low frequency. I want the motor to travel CW for 2.5 seconds, and then CCW for 2.5 seconds etc. What I've been trying to come up with is a way to wire an H-bridge circuit with a 555 timer as a driver such that the motor switches directions by itself, as long as power is supplied. The main design constraint is size for this project, so I am trying to avoid any larger components (TIP120's are even a concern to give you an idea of the size in question). I have google'd and searched this forum pretty heavily and haven't found quite what I am looking for. Maybe I am searching for the wrong terms?

Any help would be greatly appreciated, and as always, all tips/hints/advice are welcome!

Thank you in advance!
Have you considdered using a modified RC servo?
If you disconnect the pot and take the stop off the output gear you effectivly get a motor that can be controlled, direction and speed, by a timed pulse on the control input. A 555 could do that for you.
As SgtWookie said ... speed will depend on load and voltage though.
you would need a shaft encoder or better still a stepper motor to be more accurate, it realy depends on what you actually want to achieve.
Still RC servos have good full bridge drivers with control decoding.


Thread Starter


Joined Oct 11, 2010
Thank you Sgt. Wookie, I've used that page before, now I'm going through it with a fine toothed comb, trying to make sure I grasp everything fully before I ask more questions.

Thank you as well Dyslexicbloke, that's a good idea, but I don't know that I can apply that here. Here is a little more information:

The motor that is proposed is this little guy:

What we need is the motor to rotate at a two to three thousand RPM's in one direction for around 2.5 seconds, a pause to let the motor wind down (there will be some reverse torsional force built up in the attachment), and then operate for around 2.5 seconds in the other direction. Position of the motor isn't really a concern, nor the exact times in either direction. It can be a fairly sloppy operation. Our biggest concerns are the very tight constraints on the housing, as well as power source (batteries...size/power hasn't been decided upon yet). Eventually, I will be incorporating torque limiting, and and over-torque permanent shut off. It shouldn't be terribly power hungry, and for filtering and power cleansing, I am not too concerned.

Thanks for everything, I will continue searching and playing around with things :D

John P

Joined Oct 14, 2008
If you use the 12 volt version of that motor, you might be able to run it on the output of an op amp, depending on what the motor is driving. If it's just spinning something with small air resistance then it should work. Or get the 6V version, and run it on the outputs of several CMOS logic gates in parallel, using a 5V supply. I've done that with very small motors and it works fine. Could this even be done with a microcontroller driving the motor directly off its port pins, with the processor doing all the timing and sequencing? Maybe.