Page 24 - Hacking Roomba
P. 24

Chapter 1 — Getting Started with Roomba                  5



                             tougher than a human. One g is the force you feel every day from gravity. Three gs are
                             what most roller coasters make you feel, and at five gs you black out. Although the
                             Roomba isn’t nearly so rugged, it definitely seems to have inherited some of its cousin’s
                             toughness.

                             Enter Roomba
                             The Roomba robotic vacuum cleaner is a physical embodiment of Brooks’ subsumption archi-
                             tecture. Roomba has no room map or route plan. It has no overall view of what it is doing.
                             Instead it functions much more like an insect: going toward things it likes (dirt, power) and
                             away from things it dislikes (walls, stairs), moving in predefined movement routines while
                             occasionally and randomly jumping out of a predefined routine.
                             This random walk feature of the Roomba algorithm is perhaps what confuses people the most
                             at first. It will seem to be going along doing the right thing when it suddenly takes off in a dif-
                             ferent direction to do something else. But for every time it moves from the right place to the
                             wrong place, it has moved from the wrong place to the right place. On average (and if left for a
                             long enough time), Roomba covers the entire area. In terms of time efficiency, Roomba is not
                             the most effective, as it takes several times longer for it to fully cover a region than it would for
                             a person with a normal vacuum cleaner. But whose time is more valuable? Roomba can work
                             while the person does something else.


                     Which Roomba Cleaners Are Hackable?

                             There is some confusion as to which Roomba cleaners are easily hackable through the ROI.
                             This is complicated by the fact that iRobot doesn’t make obvious the model numbers and
                             firmware versions of the different Roomba cleaners.
                             All new Roomba cleaners currently have the ROI protocol built-in and ready to use. These
                             are third-generation Roomba cleaners. The two most common Roomba cleaners, Roomba
                             Discovery and Roomba Red, will be used in the examples in this book.
                             Following is a fairly comprehensive list of Roomba cleaners available in North America.
                             International versions are functionally identical and named the same, with only small modifica-
                             tions to function on different mains voltages.

                             First Generation
                             The first generation of Roomba cleaners was astounding in the amount of capability they
                             packed into a small, inexpensive package. This generation did not have any ROI capability.
                             There was only one type of Roomba in the first generation:

                                 Roomba: The original Roomba model, shown in Figure 1-1, was released in 2002
                                 and improved in 2003. It could clean small, medium, or large rooms when instructed
   19   20   21   22   23   24   25   26   27   28   29