Nav:  [home][mm] > [4ChanServoController]
← [What are these? Why?]

4 Channel Servo Controller

This is a small and leight-weight controller for up to 4 RC peripherals (such as servos) with a digital I2C interface.


The main purpose of this device is to provide a simple digital interface allowing microcontrollers and other processing logic to easily control cheap RC model making servos. The device presented here provides an I2C bus connection (just 2 signal wires) and allows to control up to 4 independent servos.

Although this device is called 4 channel servo controller, it can control any RC peripheral with the usual pulse length modulation input, not just servos.

Description and Features

4 Channel Servo Controller [10kb]
[click to enlarge: 90kb JPEG]

The image on the left shows the 4 channel servo controller board without cables for power supply and RC peripherals. An optional capacitor can be soldered in two holes on the left especially when long supply lines or power-consuming servos are used.

The two solder bridges on the right (visible in the top image) allow to easily choose between up to 4 I2C addresses allowing to use control up to 16 RC peripherals with one I2C bus. (This can be extended further by using a different set of I2C addresses.)

A red LED (lower image) signals accepted I2C commands.


  • Connect up to 4 RC peripherals (such as servos); each peripheral can be controlled and even switched off (no pulses) individually.
  • Small and leight-weight: As shown in the image, size is 14.5 x 21.5 mm and weighs just 1.9g (can be reduced to below 1.15g with a 0.8mm PCB; see below).
  • Full scale resolution more than 9000 steps (about 4000 steps usable with standard RC servos), short term time jitter in output smaller than 1 step (below 0.2usec).
  • Output waveform: Repetition rate 95 Hz, pulse length range exceeds 30usec to 2.4msec.
  • I2C/TWI interface with configurable address: Requires just 2 signal lines which can be shared with other I2C peripherals. Several servo controller boards can be connected to the same I2C bus. I2C: Up to 800kHz (400kHz recommended, 100kHz work as well); LED flashes quickly for accepted I2C commands.
  • At 400kHz, transmitting a control value takes less than 300usec, so all 4 peripherals can be re-programmed at least 100 times a second (which is faster than the pulse repetition rate).
  • Direct specification of pulse length via TWI in units of 1/4usec: 16 bit word composed of 2 bits peripheral address (0..3) and 14 bits pulse length (120..9600, special value 0 to switch off).
  • Standard 5V logic.

4 Channel Servo Controller on weight scale [10kb]
[click to enlarge: 44kb JPEG]

[home] [site map]
Valid HTML 4.01!
Copyright © 2007-2008 by Wolfgang Wieser
Last modified: 2008-06-29 18:50:06