As a club project, the ACM recently bought an iRobot Create. It comes with some software for programming in Windows, but, honestly, the GUI application that it comes with is junk. It barely works at all. Add that with the fact that it’s a Windows application meant that I was on the hunt for making this guy work under Linux.

Well, a quick Google session later and I come across this wonderful Instructable. However, I did have to jump through one more hoop to get it working than was in the guide. Thus, here’s my whole version of getting the iRobot Create’s command module to work in Linux.

1.) I am writing this for Ubuntu and Fedora. If you are using another distro, you’ll need to find the packages yourself or compile them yourself.

Install the following packages:

1
2
Ubuntu: sudo apt-get install avrdude avr-libc gcc-avr
Fedora: sudo yum install avrdude avr-gcc avr-gcc-c++

Remove this package or if it isn’t installed, happily move on:

1
2
Ubuntu: sudo apt-get remove brltty
Fedora: sudo yum remove brltty

2.) Copy the input example from the CD that came with the iRobot Create or download all the examples from here. Put it somewhere on your filesystem. ~/input works fine.

3.) Inside the input directory, open the makefile and edit the following lines:

Line 86:

1
2
DEBUG = dwarf-2
DEBUG = stabs

Line 201: This is the change the Instrucable above does not contain. I was getting timeout errors without it.

1
2
AVRDUDE_PROGRAMMER = stk500
AVRDUDE_PROGRAMMER = stk500v1

Line 204:

1
2
AVRDUDE_PORT = com9
AVRDUDE_PORT = /dev/ttyUSB0

4.) Assuming you have make installed (you really should if you’re reading this), simply run

1
make all

to build the project and

1
2
Ubuntu: make program
Fedora: sudo make program

to send it to the iRobot.

That’s it! I’m sure I’ll write more once I figure out how to actually write programs for this thing, but until then.