Page 15 - Hacking Roomba
P. 15

xiv       Introduction




                             In December 2005, iRobot Corporation, the maker of the Roomba, recognized the growing
                             hacking community and released documentation describing the Serial Command Interface
                             (SCI) present on third-generation Roombas. In mid-2006 iRobot renamed the SCI to be the
                             Roomba Open Interface (ROI), a name that better fits its role. The ROI allows you to take full
                             control of the Roomba and its behavior. This is no simple remote control interface, but instead
                             a protocol that allows complete sensor readout and full actuator control.

                             Since the release of the SCI/ROI specification, there has been an explosion of new Roomba
                             hacks. The Roomba hacking community has blossomed to include not just professional
                             hardware engineers, but people from all experience levels, from normal people looking to play
                             with their Roomba in a new way to academics experimenting with low-cost robotics. The
                             ROI turns the Roomba into a true robotics platform. And because these are all reversible
                             hacks, it’s easy to try someone else’s hacks. No longer do you have to break a Roomba to try
                             something out. To see some of the hacks people are working on and join in discussions about
                             them with others, see the Roomba Review hacking site mentioned above, the accompanying
                             forum at http://www.roombareview.com/chat/, and the Roomba hacking wiki at
                             http://roomba.pbwiki.com/.


                     Whom This Book Is For

                             This book is for those who want to experience the fun of programming a robot without all the
                             problems normally associated with building one.
                             Most of this book is designed for beginning hackers, those who know a bit of programming
                             and a little bit of electronics. Familiarity but not expertise is assumed with soldering and
                             schematics. No mechanical expertise is required, but if you have it, you can do even more
                             impressive things than what is outlined in this book.

                             If your soldering and schematics skills are a little rusty, two useful appendixes are supplied to help
                             get you back up to speed.




                             Most of the code examples are presented in Java. Java was chosen for its ubiquity and cross-
                             platform capability and is used for all the PC-connected projects. Thus, knowing how to
                             compile and run Java programs is required. The later, more advanced projects are programmed
                             on microcontrollers in either PIC BASIC or AVR GCC.


                     What This Book Covers

                             The projects in this book are based around the Roomba and the Roomba Open Interface
                             (ROI). The Roomba’s capabilities as presented via the ROI are described and tested. The few
                             capabilities that aren’t accessible via the ROI are mentioned briefly. The Roomba’s mechanical
                             and electrical internals are also discussed, but since this book is about hacking the Roomba
                             without taking it apart, they’re mentioned only briefly.
   10   11   12   13   14   15   16   17   18   19   20