BaRobot: USB / RS232 Device for controlling up to 8 servos from WIN/LINUX

By Christopher, January 22, 2010

Today, I want to present my last college(BA-Berlin) project. The topic of this project is controlling a robot arm (with 5 servos) with a MCU from a PC via RS232 or USB. The project is even finished.

What is BaRobot?

BaRobot is a set consisting of  firmware for an AVR, a driver library and some demo applications. The firmware was built for at least an ATmega8 and contains everything for controlling up to 8 servos via USB or RS232 from a PC without expensive USB-Hardware. The USB Interface is based on VUSB from Objective Development. The project was founded to control a 5 axis robot arm (see gallery next), therefore all demo applications are made for a 5 servo device, but you could edit these settings with preprocessor directives in the sources. A possible circuit is available in the gallery, too. The driver is based on LibUSB (LibUSB32 at Windows), you only need LibUSB if you want to compile the sources. On a linux machine you does not need a specific driver, because LibUSB is still installed, you only need the library, which provides  a set of functions to control the servos. The library/firmware gives you the ability of control all your servos in position  and in speed(means time for moving to a new position). Both values value must be between 0 and 254.

[nggallery id=9]


Here my report (written in german) for the college: download: Studienarbeit BaRobot Servo Control USB RS232 (1.62MB)
added: 22/01/2010
clicks: 6592
description: College report about building a device which controls up to 8 servos via RS232 or USB


You could get all Sources(with circuit) under GPL 2 and 3 from my public SVN. Every part of the sources is explained in a README file. or

or the current package as ZIP download: BaRobot Sources (2.46MB)
added: 22/01/2010
clicks: 5686
description: Sources for Firmware, Library, Demo Applications and Windows INF-Files