Coding Command Module IRobot Create with MAC

by raulzito234

I’m trying to program the Irobot Create with my MAC and I had some difficulties to make it run.


First of all I installed the CMStart1 package to try it out. You can download it here

(IF you want to read a little bit more about the project go to: )

Then you need to install all the libraries for avr. You can download them directly from here:

Follow the instructions on the website and don’t forget to restart the terminal window.

After installing it you will need to compile the code.

run the following command:

>> make

The compiler will probably complain, because SIG_OUTPUT_COMPARE1A is poisoned and it is going to be deprecated in the future. So there is a need to change the code to make it  work. A possible solution is to maybe try adding a:


to the pre-processor options if you insist on trying to maintain code with the poisoned SIG_OUTPUT_COMPARE1A. This solution has been posted int he forum:

Another possible solution is to change the deprecated SIG_OUTPUT_COMPARE1A for a new one depending on the device that is being used. The complete table of symbols can be found at

Since the IRobot Create comes with an AVR ATMega168, it needs to be substituted to:


After substituting it, you will be able to run:

>> make

After this it’s necessary to upload the command module I’m doing it through a USB cable. I need to first find the name of the port that this USB is connected, thus I look into the folder /dev using the commands:

>> cd /dev/

>> ls

Then you should look for the tty.usb. In my case the USB port is /dev/tty.usbserial-A9005Qaa. Press the reset button and then  use the following command:

>> avrdude -p ATMega168 -c stk500v1 -P /dev/tty.usbserial-A9005Qaa -U flash:w:cmstart1.hex

There is a tutorial on how to use the command above here: if you need more help.