Page 444 - Hacking Roomba
P. 444
Appendix C — iRobot Roomba Open Interface (ROI) Specification 425
iRobot® Roomba® Open Interface (ROI) Specification
Roomba Open Interface Commands Quick Reference
Command Opcode Data Data Data Data Etc. Baud data byte 1: Baud Code (0 – 9)
Byte 1 Byte 2 Byte 3 Byte 4
Start 128 Baud code Baud rate in bps
Baud 129 Baud 0 300
Code 1 600
(0 – 11) 2 1200
Control 130 3 2400
Safe 131 4 4800
Full 132 5 9600
Power 133 6 14400
Spot 134 7 19200
Clean 135 8 28800
Max 136 9 38400
Drive 137 Velocity Radius 10 57600
(-500 – 500) (-2000 – 2000)
11 115200
Motors 138 Motor
Bits
(0 – 7)
Motors data byte 1: Motor Bits
Leds 139 Led Bits Power Power
(0 – 63) Color Intensity 0 = off, 1 = on
(0 – 255) (0 – 255)
Song 140 Song Song Note Note Note
Bit 7 6 5 4 3 2 1 0
Number Length Number Duration Number
(0 – 15) (0 – 15) 1 1 2, etc. Motor n/a n/a n/a n/a n/a Main Vacuum Side
(31 – 127) (0 – 255) Brush Brush
Play 141 Song
Number
(0 – 15) Leds data byte 1: Led Bits (0 – 63)
Sensors 142 Packet Dirt Detect uses a blue LED: 0 = off, 1 = on
Code
(0 – 3) Spot, Clean, and Max use green LEDs: 0 = off, 1 = on
Force- 143 Status uses a bicolor (red/green) LED: 00 = off, 01 = red,
Seeking- 10 = green, 11 = amber
Dock
Bit 7 6 5 4 3 2 1 0
LED n/a n/a Status (2 bits) Spot Clean Max Dirt Detect
Power uses a bicolor (red/green) LED whose intensity and color
can be controlled with 8-bit resolution.
Leds data byte 2: Power Color (0 – 255)
0 = green, 255 = red. Intermediate values are intermediate
colors.
Leds data byte 3: Power Intensity (0 – 255)
0 = off, 255 = full intensity. Intermediate values are intermediate
intensities.
9 www.irobot.com