View Full Version : programming RoboBuilder in C

10-29-2008, 10:12 PM
One of the cool things about RoboBuilder is that the architecture is fairly open the servo communications protocol is (somewhat) documented, and there is a procedure for converting Motion Builder files into C code that you can use from your C programs. The controller is an ATmega128, a great chip with a cross-platform open-source toolchain, and it appears to come with a bootloader that lets you install your own code over the serial port.

So I'm excited, and already thinking about going beyond playing back canned motions, to adding some level of autonomy.

But, before I start reinventing wheels, is there anyone here (or elsewhere on the net that you may happen to know of) who has already worked out the details of programming the RoboBuilder in C? The documentation is a bit sketchy and leaves much to the reader to work out on their own.


P.S. If I am among the first, then I'll post what I find here, so future RoboBuilderers can save themselves some grief.

10-29-2008, 11:32 PM
I think you're treading new ground here. The Robobuilder is the newest humanoid on the market... so a lot of this is yet to be pioneered. Good luck though! Can't wait to see what progress you make with it.

10-30-2008, 01:01 AM
First - Grats! And thanks for the first-look review! I +rep'd it.

I had a look through the specs very early on to answer a question regarding the analog input. The protocol looks dirt-simple to me. I don't think you should have any trouble talking to it!

10-30-2008, 03:45 AM

Here is some work already done for C programming

10-30-2008, 05:08 AM
Nice work, iBot! Can your porting work/code be uploaded to the DataCenter (http://forums.trossenrobotics.com/downloads.php)here at the TRC?

Welcome, btw! +rep from me on your first contribution!

10-30-2008, 10:23 AM

Here is some work already done for C programming

Great, thanks for the link looks like I'm not the first to walk this path, but I'll join you up front and help hack at the weeds as quickly as I can.

Perhaps we should set up a SourceForge (or similar) project for it, so contributions can be managed through Subversion?

Note that Pascal Stang's AVRlib doesn't seem to be maintained anymore, so rather than recommend its use in conjunction with RB-specific code, we should probably just make a RoboBuilderLib (or whatever) that incorporates just the parts of AVRlib we need. (I'm pretty sure that AVRlib's license would allow for that, but we should check to be sure.)

- Joe