What are some good servos to get started with Robotics projects?

I have a few robotics projects in mind (pan/tilt for android phone, robot arm, hexapod/scorpion, biped, hand, etc) and I'd like to find some good servos close to the crux of price and performance. I'd like to find something that is common, well supported, and well documented. I'm looking for "regular sized" and "mini" (micro?) recommendations so that I can get familiar with the right sized servo for the job. My intended controllers are arduino mega/ADK's, so I'd prefer to stick to PWM controlled servos since there are plenty of PWM outputs on those (~48, right?)

I didn't realize there was quite the variation in size until I started looking on Thingiverse http://www.thingiverse.com/thing:38159 and saw that there were different sized "9G" servos. Before I saw that I assumed there were 2 or 3 standard sizes (physical dimensions) and the other differences were in power output and interface (serial vs PWM).

I know that the Bioloid kits are pretty common (I see them every time I Google), and that people are developing interface boards for Arduinos, but I think that most of the stuff I will build will wind up being custom. If I start with a kit, are Bioloids a good place to start?

The 9G servos are the Micro's. Their pretty darn small but still powerful for their size. When you pick your servos you need to find out how much weight you will be moving. The more weight the more torque the servo needs. With servos, like any other electronics you buy, you get what you pay for. If you want quality, go for the Futaba and Hi-Techs. But you really don't need to spend a ton on servos.

Analog servos are PWM controlled. The Mega has 14 PWM outputs. But if you get a dedicated servo controller, you can literally run dozens of servos off it.

I prefer to design and build everything from scratch, so my advice would be to start off with a pan and tilt bracket with servos to learn the basics of getting stuff to move and the programming.

Servos come in sizes from small and weak [< 20 oz-in] to larger and very powerful
[over 200 oz-in]. The so-called “standard” size is 44 oz-in, and these work well for
apps like pan’n’tilt, etc. They also work for many hexapod walkers, but are too weak
for most bipeds, which require a lot of torque for the leg joints.

Nowadays, many of the more powerful servos come in the same size package as the
standard servos, so can be used as drop-in replacements.

Servos come in analog and digital varieties, with the digital being faster and more
powerful, and usually a lot more expensive than the analog. Analogs will work for
most general apps.

For a standard servo, I usually use Hitec HS-322HD servos, as they have good gears and
will continue to operate ok with voltages down below 4.5V.

My daughter just installed two of these servos in one of these brackets. Control is with this joystick under the control of this sketch suitably modified for two servos and two pots.

Yeah, nowadays the chinese companies are selling servos, and everything else, for a lot cheaper than everyone else. Also, those same brackets are available from Lynxmotion in the US.

The other thing is, you need to power the servos from a separate supply, and not from the 5V pin on the Arduino board power header. It cannot supply enough current for servos [maybe for 1 servo if you're lucky, but still not the best idea].

JimboZA: My daughter just installed two of these servos ....

I have 4 of these and they are nice servos for just a little over $3. But be careful, Hobbyking can take a long time just to get you order in the mail. Took 'em 3 weeks just to get it out of the warehouse for mine.

Look through Ebay, can get good deals on multiple servos.

Analog servos are PWM controlled.

So are the digital ones.

Gosh, that HAL eye looks even scarier in the new year. Did you magnify the image, perchance?


Well, it still looks scarier.

Maybe it is a little more bloodshot, following the festivities

Maybe it's because I just read this [overly graphic] article,



Something else to keep in mind is that there are "digital" servos, then there are DIGITAL servos. What I mean by this is that there are servos out there that are "digital" in that they are controlled by PWM generated by a microcontroller (instead of dedicated circuitry); a good explanation can be found here:


...and here:


They are programmable, etc - but there is also another type out there (and they tend to be fairly expensive) - these servos use a dedicated serial bus (usually daisy chained), which supplies power and data to each servo (and reduces the number of connections needed to your microcontroller - Arduino or otherwise). They are programmable and definable, addressable, and you can generally get data -back- from the servo (position, rotation direction, and velocity - whether being driven by the motor or by external forces). These are so-called "smart servos".

As an example:


As you can see, they are more expensive, but they do compare favourably against some other standard analog and "digital" PWM servos; when you factor in the bidirectional communications and the single cable daisy chaining - that can make them win out over other solutions.

The Dynamixel servos have their own unique protocol, but is is not true [or not so] that most digital servos will work with the usual analog servo control signals by default, ie 1000-2000 usec pulses, without having to be specifically programmed ahead of time?

Be aware that some digital servos may require $$$ programmers to change their default settings. also, the servo library "detach" function may not work with digital servos.

Be aware that some digital servos may require $$$ programmers to change their default settings. also, the servo library "detach" function may not work with digital servos.

Yeah, but don't most digital servos work by default with regular servo pulses and without having to reprogram them?

Yeah, but don't most digital servos work by default with regular servo pulses and without having to reprogram them?

The problem I've heard about is the default rotation range may only be 90 deg instead of 180 deg, requiring the programmer to change the range to 180 deg if required.

default rotation range may only be 90 deg

Good to know.