Page 453 - Hacking Roomba
P. 453
434 Index S
■
for Basic Stamp, 266, 267 serial events Sleep (Off) mode, 25
capacitors in, 410, 410 receiving, 116–117 small circle turns, 102, 103
for connections, 406–407, 407 visibility of, 117–118 Smith, Greg, 371
conventions for, 406 serial interface tether, 41 SNAPPATH variable, 351
diodes in, 410, 411 building, 48 Snooze button for alarm clock, 200
for integrated circuits, 412, 412 cables for, 42–43, 49–50, 51, 54, 55 Soban, Bogdan, 168
for line-following Roombas, 375, 375 cell phone sync cable hack, 42–43 solder, 385–387, 386
miscellaneous components in, 411, 411 circuit for, 44–48, 45–47 soldering, 383
for mobile mood light, 290, 291 computer connections to, 56, 57 Bluetooth interface, 73–75, 74–75
power and ground symbols in, connection checks for, 54–55 cutters and pliers for, 388, 388
408–409, 408 echo tests for, 57–60, 58–60 fixing mistakes, 394, 394–395
resistors in, 409–410, 409 enclosures for, 55, 56 process, 390–393, 391–393
for robot roach, 273, 273 LED lamps for, 46–48, 47 remote control, 379, 379
for serial interface tether, 44, 45 parts and tools for, 43–44, 51, 52 safety considerations, 390
for wires, 407, 408 power supply for, 44–46, 45–46 serial interface tether, 52, 54, 55
SCI (Serial Command Interface), 3 preparing, 49, 49 solder for, 385–387, 386
SCI tester, 373–374 RoombaCommTest for, 60–63, 61 soldering irons for, 384–385, 385
Scooba robot, 12 RooStick, 42, 42 testing, 396, 396
ScooBuds, 370 soldering, 52, 54, 55 third-hand tools for, 387, 387
scripting language control in OpenWrt, USB, 56, 57, 353–357, 354–357 tools for, 383–384
321–325 voltage checks for, 53, 54 wires, 398–399, 398–400
second generation of Roomba cleaners, 6, 7 serial parameters for XPort, 224 soldering irons, 384–385, 385
self-charging, home base docks for, 8 Serial Port Profile (SPP), 68, 70 solderless breadboards, 260–261, 260
send method serial ports SONG command
RoombaComm, 87 Arduino, 287 MIDI note numbers with, 32–33, 154,
RoombaCommTCPClient, 226–227 OpenWrt, 317–321, 318 155
for sensor data, 115 ROI specification for, 418 opcodes and data bytes for, 28
for tank-like motion, 98 SitePlayer Telnet, 219, 220 specification for, 421
sending in third generation cleaners, 8 sound, 151
sensor data, 115 wireless routers, 303 live instruments, 157–158, 157
serial data, 269 serial speed for Basic Stamp 2, 268 MIDI instruments, 161–166
sensors, 15–16 serialAvailable method, 288 motors for, 153–154
for autonomous operations, 122–123 serialEvent method piezo beepers, 151–153, 152
bit fields for, 120 RoombaCommSerial, 116–117 PLAY command, 155
byte values for, 121 RoombaCommTCPClient, 227 ringtones, 159–161
commands for, 33 serialRead method, 288 single notes, 156–157
for distance and angle, 124–125, 125 SERIN command, 269 SONG command, 154, 155
enumerations for, 121 SEROUT command, 269 songs, 155–156
for input device applications, 189–190 servers for Wi-Fi devices, 238–240, 239 theremin simulation, 194–197, 195, 197
location of, 109–110, 110–111 setSpeed method, 101 cliff sensors for, 198–199, 199
loops for, 121–122 setting bits, 31 Ess library for, 197–198
micro-switches, 113, 114 setup method spca5xx driver, 340
motor over-current, 114 Arduino, 279, 288–289, 293–294 spca5xx_lite driver, 340–341
optical interrupters, 112, 112 for musical keyboard, 158 spcacat program, 341–342
optical object detectors, 113, 113 Processing, 133, 139 spectrum analyzers, 235
optoisolators, 112 RoombAlarmClock, 201 spinLeft method
packets for, 423–424, 426 SpiroExplorer, 182 Arduino, 289
parsing data from, 118–119 for theremin, 199 in real-time driving, 104
printing data from, 126–127 setupMidi method, 164–165 for specific angles, 102
Roomba section for, 13, 13 setupWindow method, 105–107 spinLeftAt method
in RoombaView, 144 shell script control in OpenWrt, 321–322 Drive.java, 100
SENSORS command, 115–118 side brush, MOTORS command for, 30 for specific angles, 101
for theremin simulation, 195, 195 signals for connectors, 21–23 spinning, DRIVE command for, 96
types of, 19–20 signed words, 119 spinRight method
word values for, 119 SimpleTest class, 227–228 Arduino, 289
SENSORS command, 33–34 SimpleTest.java program, 138 in real-time driving, 104
for hiding serial events, 117-118 singing. See sound for specific angles, 101–102
opcodes and data bytes for, 28 single board computers (SBCs), 298–299 spinRightAt method
for receiving data, 115–117 single notes, playing, 156–157 Drive.java, 100
for sending data, 115 SitePlayer Telnet, 208–209, 209–210 for specific angles, 101
specification for, 422 adapter for, 211–213, 211–213 Spiral.java program, 104
Sensors screen, 373 debugging, 216–219 spiral turns, 102, 103, 104
sensorsAsString method, 127 hooking to Roomba, 219–221, 220–221 spirals, 178, 179
Serial Command Interface (SCI), 3 setting up, 214–215, 214–215 parametric curves for, 178–181, 179–180
serial communication, 22 testing, 219, 220 result, 185, 185–197
serial data with Basic Stamp 2, 269 for Wi-Fi, 240–241, 240 RoombaSpiro for, 184
SpiroExplorer for, 181–184, 183