Jeenode Bot tutorial
I wanted to play my old Parallax chassis to include a recent controller like the Jeenode which will allow me to control it remotely. The servo controller that I have chosen is the popular Pololu SSC.
The Pololu micro serial servo controller (SSC) is a very compact solution for controlling up to eight radio control (RC) servos from a computer or microcontroller. The controller measures just 0.91" x 0.91", yet it is one of the most full-featured servo controllers available.
Each servo speed and range can be controlled independently, the baud rate is detected automatically over a 1200-38400 bps range, and multiple units can be daisy-chained on one serial line to control up to 128 servos.
Three status LEDs and an integrated level converter for RS-232 applications get you up and running quickly.
The micro serial servo controller is dwarfed by even a standard servo, but it can control any standard RC servo, including giant 1/4-scale servos.
How do we use it with a Jeenode?
The Jeenode operates at 3.3V but the Pololu SSC operates at 5V TTL, so we must be careful with the interface.
I was fiddling with the SSC and discovered that is tolerant to Logic 3.3 levels for the serial interface and thus
can be connected to the Jeenode, providing that the SSC has enough Vcc to be powered properly.
I decided to use the Jeenode USB which takes 5.0 V power from the USB connector.
Battery pack:
A standard 4 battery pack where I soldered 2 wires to a 6 pin header.
I only solder 2 pins, the black for - and the blue for positive +.
This gives the power for the 2 parallax servos: 1.2x4=4.8V ... perfect
![]()
The 6 pin header will go on top of the SSC connector to provide power to all the servo connected in parallel.
Servos:
2 Parallax Servos modified for continuous rotation

They are basically standard Futaba servos but with the feedback disconnected and they can be
controlled by a PWM signal.
They operate between 4V and 6V, so our battery pack is in the operative range.
Be aware of the servo cabling:
| Cable Color | Function |
| Black | Negative GROUND |
| Red | Positive Vcc |
| White | PWM Signal |
Connecting:
The 2 servos will be powered by the battery pack, the SSC servo header pin out is basically:
| Left Column | Center Column | Right column | |
| NONE |
PWR to all Servo, the POSITIVE of the battery |
GND to all servo, the negative battery |
|
| Signal Servo 1 | Red Servo 1 | Black Servo 1 | |
|
Red Servo 2 | Black Servo 2 | |
|
Red Servo 3 | Black Servo 3 | |
|
Red Servo 4 | Black Servo 4 | |
|
Red Servo 5 | Black Servo 5 | |
|
Red Servo 6 | Black Servo 6 | |
|
Red Servo 7 | Black Servo 7 | |
|
Red Servo 8 |
Black Servo 8 |
The SSC header on the left is wired to the JeeNode in this way:
GNDGND black wire
VIN PWR red wire
SIN TX green wire
OUT RX blue wire:
RST DIO port 2
I have made a lame mistake in the wiring (silly me!): the OUT signal of the SSC cannot be connected to the Jeenode directly because it will be a 5V TTL signal. If you care about reading the ACK of the command you better put a voltage divider to avoid over driving your pins!
The PWR of the Jeenode is 4.7 V because of a resistor and diode is in series to the USB filtered PWR, but the SSC is able to operate so we are lucky.
There's a small via accessible to the lower USB connector which provides the full 5.0V but we don't need it!
Now let's go to the Arduino code to move the servos.
In this video I'm testing the servos rotating in 2 directions at different speeds.
Dim lights Embed Embed this video on your site
And here with the entire chassis!
Dim lights Embed Embed this video on your site
To do:
The main problem of this configuration is that the Jeenode is USB powered. To have a fully autonomous solution we need to provide a +5V to the SSC for the servos and for the controller and a separate 3.3 V for the Jeenode.
In the next tutorial I'm going to show you how to use a linear voltage regulator to achieve that.
Last Updated (Wednesday, 30 June 2010 23:24)




Comments
RSS feed for comments to this post