Why not a cheap atmel uC, a xtal and a poti. Have a look on my site under
projects/ocau servo mod.
Not sure what it cost but I imagine it's only about 3-4Euro for all the
components including the programming cable and the compiler (demo version of
Bascom AVR - Max 4Kb code)
Home of the Atmel based UDP mobile web cam http://www.planet-ian.com
All mails scanned with av-filter.pl (F-Prot / perl)
Hey Pogo, what exactly do you want to do with this thing? A really
cheap servo tester, like 555 ckt, doesn't really tell you much, other
than the servo will actually move. For this, I would actually recommend
springing for a simple R/C airplane transmitter-receiver combination.
Maybe $50-60 from tower hobbies, etc. If you get this, you will find
plenty of other uses for the xmtr-rcvr in remotely controlling your
robot, too. Every roboticist needs an R/C transmitter :).
For real servo testing, it helps to know the actual servo pulsewidths,
so then you can calibrate servo-arm position vs pulsewidth, etc. For
this you can buy one of the cheapo 2 or 4 servo controller boards,
which operate via RS232. If you hunt around, I think there are some for
Also, you can check out Dennis Clark's page to roll your own servo
contorller. He has code for use on a PIC12C508, which costs about $1
- dan michaels
All I want it to do is to rotate the servo back and forth. That's it. Nothing
fancy. Just need to see if things work
mechanically as desired, range of motion, etc. For anything else I can hook up
the "real" servo controller, whatever
that may be. Looks like I'll just stick with wiggling the wires for now !
Just to wiggle it, a proper 555 ckt should do, ie generates a short
pulse [1-2 msec] on a periodic basis [every 20-msec or so]. You just
need to be careful that the pot settings won't be able to drive the
servo horns into the mechanical stops and bash the gearing.
About $20 is what it will cost for something store bought. The
RobotLogic tester, which I've tried (works well) is also in the $19.95
range. I don't think you'll find much for less tgan this.
Otherwise you make one. If you add a second 555 you can get it to sweep
automatically. Otherwise just do it manually. There is a 555-based servo
tester in Robot Builder's Bonanza 2nd Ed (don't know about the third
edition). Get a small solderless breadboard and build it on that. No
Since I also like to calibrate servos for centering, I invested in a
Hitec HFP-10 servo tester/programmer. They aren't cheap -- about $150 --
but it does everything you need. And when you graduate to digital servos
you can use it to program things like their speed.
Hey Gordon. I kept this post in the back of my mind for the past couple
weeks while I was working on a new doo-dad. You mention above that you
calibrate servos for centering using the Hitec device, so I'm wondering
What my doo-dad does is to measure servo and other pulses from about
4-usec up to 65-msec. Has a 1-usec resolution/accuracy. What I found
was that the servos on the Servo-Tank that I bought from you last month
are "centered" [ie, stop turning] at about 1525 to 1530-usec, while I
expecting something more like 1500-usec.
I'm pretty sure my doo-dad - I call it the Servo-Dog - is accurate,
tested it against both the output of a PIC PWM hardware peripheral, and
using PULSOUT from a BS2. Am I missing something here?
- dan michaels
Haven't seen your doo-dad, and I'm not sure I want to! <g>
On the Parallax servos: those are factory set. I doubt they're right on
1500 us. The hole in the side of the case makes it easy to adjust. Only
the ones I personally modify (the GWS ones) are calibrated to 1500, but
even those might be off a few us.
What is critical is an LCD display to show the pull rate.
As a commercial product there is some liability having something for RC
servos that goes down to 4us. For an unmodified servo that has some
torque that could strip out gear teeth. I don't like buying customers
new servos, so I only recommend products I know will sweep within a
reasonably "safe" range, which the Hitec programmer is designed to do.
That's something for you to consider.
dan michaels wrote:
That's too bad, cause I'm gonna send you one, JFTFOI.
This is something I've had cooking for a long time, but just built
it recently. Believe it or not, the spur that got me going now was
reading a comment several weeks ago in your Robot Builders
Bonanza about using a mode-display device on a robot. I've
done this many times using separate leds, but decided it would
be nice to have a display device that took a servo pulse as its
input, and then be able to signal "many" different modes, and
that you can see from across the room.
I need this thing for my hexapod, which hopefully is going to
Robothon in Seattle. I'll be sending it and not going myself, and
wanted an easy way for the guys to be able to select the
proper mode for different situations - like play, calibrate
sensors, compete, etc.
Yes, I notice the Servo Tank you sent has Parallax servos. They don't
stop turning until at about 1525-usec, as noted last time, but at least
they are both set very closely.
I'm not sure what you mean here by "pull rate". On your tank the
servos will pull the tank around in a circle when sending 1500-
usec pulses to the servos. My doo-dad is named Servo-Dog
and uses 7-segement led displays, BTW, with power supplied
by the R/C receiver/servo-controller.
At present, S-Dog doesn't generate pulses, only measures incoming.
It measures down to 4-usec, for general purposes. Next week, it'll
generate pulses for test.
I don't know what a pull rate is either! It was a typo. I meant pulse
An all-in-one device is handy or otherwise people (like me) who
regularly test servos have to keep a separate controller handy and
programmed to do position tests or sweeps. It's nice to be able to just
plug the thing in, dial up the "pull rate" and watch the servo go. Or
not go, and that's the reason for the test.
FWIW, In my opinion the only truly effective method to stop a servo is
to stop sending it pulses. This can be done with any microcontroller,
but some serial servo controllers don't provide for this. When powered
the output lines always generate a pulse. In this way they emulate a R/C
receiver, which is fine for models cars and planes but not so great for
The problem is that analog servos are sensitive to component drift,
which naturally happens when the device warms up, as motors do, or when
operating the servo under a different temperature than when it was
calibrated for. I've seen my carefully tuned calibrations change by as
much as 15us in just a couple minutes of operation.
Fortunately most folks don't try to use servos for granular speed
control without the use of an encoder. Then you can have your
microcontroller adjust the presets dynamically. It can be continually
attempting to find the new center point as it drifts around.
A google search for "servo 555" turns up links like below if you
want to make a driver..
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.