Let's Make Robots!

Turn that $3 RC-servo into a powerfull bi-directional motor!

RC-servo to motor conversion


This is a smart little trick i had read about in the magazine "Elektor Electronics" a year ago.
In 15 minutes you can turn your cheap servo into a very suitable motor to drive the wheels of a robot.

the purpose of a standard servo is to bring the shaft into a certain position and to keep it there. the position depends on the duration of the digital pulses given to the servo on its input. A 1.5ms pulse tells the servo to go to center and stay there. If we make the pulse duration 1ms then the servo will attempt to turn the shaft to the leftmost position, and a 2ms pulse turns the shaft to the other end.

For position measuring, the internal electronics uses a potentiometer mecanically coupled to the shaft.
The shaft is also limited to 120-180' of turning, because of a mechanical end-stop.

For this modification we must fool the servo's position system into believing that the shaft is at its center position all time, and if we remove the end-stops, the servo wil turn forewer in the direction we tell it to go, and a "go to center position" will make it stop instantly.

Step 1 -open up the servo

there is normally 4 long screws at the back that keeps the whole thing together. Once open be careful not to loose the small gears and pins.

Step 2.
Locate the end-stops, in my case it is the small plastic tabs on the main output gear. look at the picture below where the screwdriwers tip is pointing. Remove those tabs with a sharp knife or something.



Step 3.
Locate the potentiometer that is coupled to the output gear. you may have to remove all the other gears now, so be carefull not to loose them.


remove the leads from the potentiometer and solder in a voltage divider made up of two identical resistors. 10Kohm is fine but the value is not critical.
IMPORTANT: the lead in the center of the potmeter has to be in center of the resistors


Now for the difficult part. try to make room for the resistors with the electronics board. In my case i had to include the old potmeter because the output gear was mounted directly on its shaft. Reassemble the whole thing and that is it!

Find a flat round shaped disc to use as a wheel and mount it on. You now have a reduction-geared motor with a wheel that runs in both directions

I buy my servo's and other rc-stuff from www.hobbycity.com (china) its cheap and they ship worldwide, they let you fill in the declared value of the shipment yourself, so you can avoid the expensive and time consuming customs.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Im using the cheap Topline S-035 servo from Conrad for driving my robot arround. Centered the pot (at 1000 pulse) and am able to regulate the speed by changing the servo pulse in the code.. Forward and backwards. This way i tuned my code to make the robot drive exactly straight. So its possibe to control the speed of a servo. Using only 1 I/O of the PIC microcontroller.