Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010128021 | TJ211.45 K87 2007 | Open Access Book | Book | Searching... |
Searching... | 30000010128022 | TJ211.45 K87 2007 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
The Jetsons would be proud!
A gizmo as cool as Roomba just begs to be hacked. Now, with this book and the official ROI specification furnished by iRobot®, you can become the robotic engineer you've always dreamed of being. Build a Bluetooth interface for your Roomba. Turn it into an artist. Install Linux on it and give it a new brain. Some hacks are functional, others are purely fun. All of them let you play with robotics, and not one will void your warranty.
Build a serial interface tether. Set up a Bluetooth® interface. Drive Roomba. Play with sensors. Make it sing. Create a Roomba artist. Use your Roomba as a mouse. Connect Roomba to the Net. Wi-Fi your Roomba. Replace Roomba's brain. Install Roomba-cam. Put Linux® on Roomba. Features a companion Web site.All this ? and it will still clean your floor!
Get the official iRobot Roomba Open Interface (ROI) specification and all code presented in the book in ready-to-run form at wiley.com/go/extremetech .
Author Notes
Tod E. Kurt has engineered hardware and software for robotic camera systems that went to Mars. Although he has degrees in electrical engineering and physics, Tod's career as a robotics hacker really began when he took apart his BigTrak, radio-controlled car, and chemistry set box to build an upright programmable robot when he was 12.
Table of Contents
Acknowledgments | p. xi |
Introduction | p. xiii |
Part 1 Interfacing | |
Chapter 1 Getting Started with Roomba | p. 3 |
Quick Start | p. 3 |
What Is Roomba? | p. 3 |
Which Roomba Cleaners Are Hackable? | p. 5 |
Internal and External Components | p. 13 |
OSMO//hacker: Hope for Older Third Generation Roombas | p. 16 |
Summary | p. 17 |
Chapter 2 Interfacing Basics | p. 19 |
What Can Be Done with the ROI? | p. 19 |
The ROI Connector | p. 21 |
The ROI Protocol | p. 24 |
Introducing the RoombaComm API | p. 39 |
Summary | p. 40 |
Chapter 3 Building a Roomba Serial Interface Tether | p. 41 |
Alternatives | p. 41 |
Parts and Tools | p. 43 |
The Circuit | p. 44 |
Building the Serial Tether | p. 48 |
Connecting to a Computer | p. 56 |
Commanding Roomba | p. 62 |
Summary | p. 63 |
Chapter 4 Building a Roomba Bluetooth Interface | p. 65 |
Alternatives | p. 65 |
Why Bluetooth? | p. 66 |
How Bluetooth Works | p. 67 |
Parts and Tools | p. 68 |
The Circuit | p. 70 |
Building the Bluetooth Adapter | p. 71 |
Setting Up Bluetooth | p. 78 |
Testing Bluetooth | p. 83 |
Using the Adapter | p. 83 |
Making RoombaComm | p. 84 |
Summary | p. 88 |
Chapter 5 Driving Roomba | p. 89 |
The Roomba Motors and Drive Train | p. 89 |
The ROI Drive Command | p. 92 |
Simple Tank-Like Motion | p. 98 |
Moving in Curves | p. 102 |
Real-Time Driving | p. 104 |
Writing Logo-Like Programs | p. 107 |
Summary | p. 108 |
Chapter 6 Reading the Roomba Sensors | p. 109 |
Roomba Sensors | p. 109 |
ROI Sensors Command | p. 115 |
Parsing Sensor Data | p. 118 |
Using Sensor Data | p. 121 |
BumpTurn: Making an Autonomous Roomba | p. 122 |
Measuring Distance and Angle | p. 124 |
Spying on Roomba | p. 126 |
Summary | p. 127 |
Part II Fun Things to Do | |
Chapter 7 Making RoombaView | p. 131 |
About Processing | p. 131 |
Using RoombaComm in Processing | p. 136 |
Designing RoombaView | p. 140 |
Summary | p. 150 |
Chapter 8 Making Roomba Sing | p. 151 |
Sonic Capabilities of Roomba | p. 151 |
ROI Song and Play Commands | p. 154 |
Playing Roomba as a Live Instrument | p. 157 |
Roomba Ringtones | p. 159 |
RoombaMidi: Roomba as MIDI Instrument | p. 161 |
Summary | p. 166 |
Chapter 9 Creating Art with Roomba | p. 167 |
Can Robots Create Art? | p. 168 |
Parts and Tools | p. 168 |
Adding a Paintbrush to Roomba | p. 170 |
What Are Spiral Equations? | p. 178 |
Drawing Spirals with RoombaSpiro | p. 184 |
Summary | p. 187 |
Chapter 10 Using Roomba as an Input Device | p. 189 |
Ways to Use the Roomba's Sensors | p. 189 |
Using Roomba as a Mouse | p. 190 |
Using Roomba as a Theremin | p. 194 |
Turning Roomba into an Alarm Clock | p. 200 |
Summary | p. 202 |
Part III More Complex Interfacing | |
Chapter 11 Connecting Roomba to the Internet | p. 205 |
Why Ethernet? | p. 205 |
What Is Ethernet? | p. 206 |
Parts and Tools | p. 207 |
SitePlayer Telnet | p. 208 |
Lantronix XPort | p. 222 |
Modifying RoombaComm for the Net | p. 225 |
Summary | p. 228 |
Chapter 12 Going Wireless with Wi-Fi | p. 231 |
Understanding Wi-Fi | p. 232 |
Parts and Tools | p. 236 |
Building the Roomba Wi-Fi Adapter | p. 241 |
Controlling Roomba through a Web Page | p. 248 |
Putting It All Together | p. 253 |
Going Further with Lamp | p. 255 |
Summary | p. 255 |
Chapter 13 Giving Roomba a New Brain and Senses | p. 257 |
Microcontroller vs. Microprocessor | p. 257 |
Parts and Tools | p. 258 |
Adding a New Brain with the Basic Stamp | p. 261 |
Adding a New Roomba Brain with Arduino | p. 276 |
Summary | p. 294 |
Chapter 14 Putting Linux on Roomba | p. 297 |
Linux on Roomba? | p. 298 |
Parts and Tools | p. 303 |
Installing OpenWrt | p. 305 |
Controlling Roomba in OpenWrt | p. 316 |
Making It All Truly Wireless | p. 325 |
Summary | p. 331 |
Chapter 15 RoombaCam: Adding Eyes to Roomba | p. 333 |
Parts and Tools | p. 334 |
Upgrading the Brain | p. 334 |
Controlling Roomba from C | p. 346 |
Putting It All Together | p. 352 |
Summary | p. 363 |
Chapter 16 Other Projects | p. 365 |
Autonomous Roombas | p. 365 |
Roomba Costumes and Personalities | p. 370 |
Roomba APIs and Applications | p. 372 |
Warranty-Voiding Hacks | p. 375 |
Summary | p. 381 |
Appendix A Soldering and Safety Basics | p. 383 |
Appendix B Electrical Diagram Schematics | p. 405 |
Appendix C iRobot Roomba Open Interface (ROI) Specification | p. 415 |
Index | p. 427 |