Page 441 - Hacking Roomba
P. 441
422 Appendix C — iRobot Roomba Open Interface (ROI) Specification
iRobot® Roomba® Open Interface (ROI) Specification
Play Command opcode: 141 Number of data bytes: 1
Plays one of 16 songs, as specified by an earlier Song
command. If the requested song has not been specified yet,
the Play command does nothing. The ROI must be in safe or full
mode to accept this command. This command does not change
the mode.
Serial sequence: [141] [Song Number]
Play data byte 1: Song Number (0 – 15)
Specifies the number of the song to be played. This must match
the song number of a song previously specified by a Song
command.
Sensors Command opcode: 142 Number of data bytes: 1
Requests the ROI to send a packet of sensor data bytes. The
user can select one of four different sensor packets. The sensor
data packets are explained in more detail in the next section.
The ROI must be in passive, safe, or full mode to accept this
command. This command does not change the mode.
Serial sequence: [142] [Packet Code]
Sensors data byte 1: Packet Code (0 – 3)
Specifies which of the four sensor data packets should be sent
back by the ROI. A value of 0 specifies a packet with all of the
sensor data. Values of 1 through 3 specify specific subsets of
the sensor data.
Force-Seeking-Dock Command opcode: 143 Number of data bytes: 0
Turns on force-seeking-dock mode, which causes the robot
to immediately attempt to dock during its cleaning cycle if it
encounters the docking beams from the Home Base. (Note,
however, that if the robot was not active in a clean, spot or max
cycle it will not attempt to execute the docking.) Normally the
robot attempts to dock only if the cleaning cycle has completed
or the battery is nearing depletion. This command can be sent
anytime, but the mode will be cancelled if the robot turns off,
begins charging, or is commanded into ROI safe or full modes.
Serial sequence: [143]
6 www.irobot.com