Hacking Roomba

Updates / Errata

With the inexorable march of technology, all dead-tree books describing technology will eventually become out-of-date. This page catalogs the changes between the printed book and what’s the current start of the Roomba art.

Additionally, whenever new tools and techniques are discovered that improve upon those discussed in the book, they will be mentioned here.

Text Changes

  • A copy editing mistake crept in at the last moment that removed most of the articles (”a”, “the”) before the word “Roomba”. Thus phrases like “underneath the Roomba” & “inside a Roomba” became “underneath Roomba” & “inside Roomba”. Just pretend I’m Russian, I guess.–24 Nov 2006
  • I incorrectly credited Kevin Gabbert for writing RoombaFX. It was actually created by some folks at Microsoft in their spare time. Kevin was correctly attributed as the author of Roomba-Term, which uses his C# Roomba library.

Software Changes

  • Minor updates in Arduino have necessitated changes in the Arduino example code. More to come. –24 Nov 2006

Circuit Changes

  • The circuit schematic for the serial tether neglects to show the connection from the DB-9 pin 5 to GND. Thanks to Erik Vermeulen and Filipe Augusto for catching this.

10 Comments so far

  1. Vic Wintriss December 8th, 2006 3:47 pm

    When was hacking Roomba published?

  2. todbot December 8th, 2006 4:21 pm

    Hi Vic, the book just came out. Officially released on 20 November 2006. Of course it was finished in August and three months in the ever-changing world of technology means some tools used in the book will be improved. The techniques presented and the Roomba protocol will be valid for several years however.

  3. Hans-Jürgen Sasse January 27th, 2007 11:19 am

    Hy, a great book, thank you
    I have found a minor error

    on first page of chapter 16, your webadress is wrong
    wrong http://roombahacking.com
    correct http://hackingroomba.com

  4. todbot January 27th, 2007 11:38 am

    Hi thanks for getting the book!
    Both domains work. All the links to downloadable code point to roombahacking.com, while this site is at hackingroomba.com. I did this in case Wiley (the publisher) wanted to do something with the “Hacking Roomba” domain, since they own the title. It’s a little confusing I know, but hopefully not too much.

  5. Argyrios March 12th, 2007 6:41 pm

    Hi!

    I am working on a project that involves Roomba, so besides interesting, this book is a life-saver for me. Good work.

    I will note any typos that I find along the way and send them. One I just found, is at page 39, where the code implements a 45 degree right turn, while the text talks about a 90 degree turn.

    best regards,
    Argyrios

  6. Argyrios August 22nd, 2007 7:02 am

    Hi,

    I am reading page 95, where it says that the velocity of the left wheel if

    Vleft = r * theta

    r = radius and theta = angle

    I think what was meant here is ‘arc length’ instead of velocity

    regards,
    Argyrios

  7. todbot August 22nd, 2007 10:24 am

    Hi Argyrios,
    I do actually mean velocity. In this context, theta is essentially rotational velocity (aka frequency, units 1/sec) and when multiplied by a radius, gives a radial motion velocity (units distance/second) around a circle of that radius.
    I didn’t go into that detail in the book because the editor already thought it was a little math-heavy. :)

  8. Argyrios August 24th, 2007 10:20 am

    Hi again,

    Just a little misprint:
    on page 30, line 6, it says that “When going forward, a positive radius turns Roomba to the right, and a vegative radius turns Roomba to the left”.
    Actually, it is the other way around:
    “positive velocity and a positive radius will make
    Roomba drive forward while turning toward the left”

    PS. The book is simply great and, without it, it would take me years to start programming Roomba!

  9. Matt December 4th, 2007 7:38 am

    Is the software for hacking roomba compatible with Vista?

  10. todbot December 4th, 2007 11:49 am

    Short answer: Yes, it’s compatible with Vista.
    Longer answer: The software is all written in Java, so as long as there’s a Java VM available for whichever OS you’re on, the code should work. Some OSs come with Java, if yours doesn’t, you can download it from Sun:
    http://java.com/en/download/manual.jsp

Leave a reply