RoombaComm is Java library for communicating and controlling the Roomba. It works on any operating system that RXTX supports. This includes Mac OS X, Linux, and Windows. It also works with Processing. It will soon work with Flash and Max/MSP.
It’s been a work in progress for several months and has gotten a little better as I work through improving it for the book
.
Several bugs have been fixed, particularly with respect to Bluetooth on Windows. See the README for some info on that.
Tested systems:
– Mac OS X 10.4 (Tiger) : usb serial & bluetooth
– Mac OS X 10.3 (Panther) : usb serial & bluetooth
– Windows 2000 : usb serial & bluetooth
– Gumstix Linux : built-in serial
Tested adapters:
– Homemade RS-232 adapter
– Homemade Bluetooth adapter
– RooStick USB adapter
Demo command-line programs include:
– DriveRealTime — Drive your Roomba with cursor keys
– RTTTLPlay — Play monophonic ringtones on your Roomba
– Spiral — Roomba drives in ever expanding spiral
– Waggle — Roomba wags like a dog
– BumpTurn — Roomba drives around by itself, avoiding things
– Spy — Read your Roomba’s mind while it works
– Tribble — Roomba purrs and sometimes barks
– RoombaCommTest — Roomba GUI remote control panel (not command-line)
Processing demos include:
– RoombaTune — Play your Roomba like a musical instrument
– RoombaRing — Play RTTTL ringtones on a Roomba
– RoombaView — Full instrument panel and remote control
This is what RoombaView looks like:

Download:
– full package: roombacomm-0.95.zip
– Processing library: roombacomm-processing-0.95.zip
Docs:
– javadoc
– README-0.95
– the source tree