Hacking Roomba

Microcontroller Code

Both the Basic Stamp 2 from Parallax and the open source Arduino microcontroller boards are covered in the book.

Basic Stamp 2



10 Comments so far

  1. Arduino to Roomba - but how? « apero and you December 24th, 2008 12:56 pm

    […] at the website for Hacking Roomba got me just to the point of confusion. Seems I needed a little background help before I dove in […]

  2. Colin de Silva May 7th, 2009 6:10 pm


    Is it ok to power the Arduino (deumilanova) directly from the Roomba power supply? From specs, it looks like it can do it, but I have worries of overheating the onboard 7805 or whatever it is, or damaging the board. I intend to add some additional navigation sensors (compass, IR rangefinder, etc). Do I have to build an external circuit?


  3. todbot May 7th, 2009 6:16 pm

    Hi Colin, Yup you got it. As long as you feed the Roomba’s power into the “Vin” connection (or the barrel jack), it works just fine.

  4. Colin de Silva May 8th, 2009 1:31 pm

    Tod, Thanks for that. I just got delivery of my compass sensors and bluetooth module, and I have already had success with the IR rangefinder sensor. :-) I just need to work out a voltage-distance conversion function that works with the GP2Y0A21YK.

    Also, in two minds whether to have 2-3 IR Rangefinders, fixed at forward, left, right, or to mount on servo. I guess with the servo solution, would have to calculate absolute direction on the fly, as well as rotate servo, which would be slower? I have a very ‘skinny’ flat, so I aim to recalibrate location by checking for the various doorways.

    I am also wondering if I can store my flat’s floorplan in Arduino memory (in roomba-width granularity) or whether I need to offload this to a PC. I know when you are working in bits, 1028 is a lot, but… :-)

    thanks again

  5. antipoison June 23rd, 2009 10:36 am

    i was wondering someone can provide the mapping code for microcontroller?
    currently i’m doing project about the mapping system.
    really appreciate if can help… thanks a lot

  6. todbot June 23rd, 2009 11:29 am

    I’ve not done any mapping code for the Roomba. I think other have, but I don’t know any links. Google for “roomba robotic mapping” perhaps.

  7. MovieMaker July 25th, 2009 2:00 pm

    have you gotten your Arduino (deumilanova) to work yet? I would like for you to share your adventure with me. Mine does not work properly.



  8. sfang125 May 14th, 2010 5:30 am

    I have a Arduino (Deumilanove) as well that doesn’t respond to the bump-turn program… it just goes straight until I pick up the roomba… I have a gray and black one they sent me on a warranty claim that looks much like the roomba sage. I’m very new at this, and cannot figure it out. CAn someone help me get into the right direction, please?


  9. Luke January 31st, 2011 2:22 pm

    I have an UNO. Was under the impression that I could talk to roomba via the serial out. I haven’t been able to get the roomba to even make a peep, let alone move. The book does a terrible job explaining how to get an Arduino to communicate with roomba.

  10. todbot January 31st, 2011 5:51 pm

    Hi Luke,
    I’m sorry you’re having problems. What specifically is giving you a hard time? The last half of Chapter 13 of the book goes into detail on how to hook up an Arduino to a Roomba. The Arduino sketches above are from that chapter. If there’s something unclear there, let me know. Also, the “Cylon Roomba” project is an additional project, not in the book, showing how to hook an Arduino up to a Roomba.

Leave a reply

You must be logged in to post a comment.