555 Servo Controller

I’ve set up a workspace in my office using one of our folding tables from Costco.


SolderSpot HQ

The key reason for the space is simply so that I can leave projects in situ  and resume them later with little to no setup or teardown. The table itself is not ideal. It’s plastic so the potential for static build up is very high. Need to either get some kind of grounded metal sheet to work off or purchase a more suitable workbench. For now it’s what I have on hand and I’m careful to ground myself regularly.

You can see the Rascal robotic arm sitting on the table.  It’s made up of 6 servos. Still waiting for the servo shield I purchased for the Arduino Uno to arrive (and it will take even longer as I discovered that I had added items to my cart but had not proceeded to the checkout. Doh!). I do have some 555 timers, resistors, capacitors, a power supply and a potentiometer so my first real project was to create a simple servo controller.

Servos have three pins. One is the ground(-) and one is power(+). The third is the “signal” pin. It is used to control the position of the servo’s arm. The way to do this is to drive the pin high every 20 milliseconds for a duration of between 1 and 2 milliseconds.  It’s the width of the pulse that is important. A width of 1.5 ms puts the servo into “neutral” position or 90° position. A width of 1 ms means 0° and 2 ms means 180°. I believe the actual frequency of the pulse does not have to be exact but 50 Hz should work for most standard servos.

The following 555 circuit is what I ended up designing and building:


555 Servo Controller Circuit

Made a lot of newbie mistakes while designing and building this circuit. It was very frustrating but it did drive me to thoroughly understand how the 555 timer works. Also had the added complication of missing a whole range of resistors from the resistor kit I had bought and only having a 10K Ω potentiometer to work with. Ended up creating a spreadsheet to calculate what combinations of resistor and capacitor values would work together. Also I wish I had an oscilloscope. It would have saved a lot of time.

Now, after figuring it all out and getting it working, I feel I can use the 555 to create any wave form with relative ease.

Had a lot of fun using the finished circuit to drive the Rascal’s arm…one servo at a time. I thought it was so cool I called my wife in to show her…she was very bemused. I’m sure she thinks I’ve lost my mind.

Have in mind to build a four servo controller using the above circuit. Think it might be a useful tool to have on hand when prototyping a robot.



  1. Arpan Sinha · · Reply

    What is the value of the diode D1?

    1. Do you mean the type of diode? Just a standard switching one. I’m pretty sure I used a 1N914.

Comments welcome

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s