Skip to content
This repository has been archived by the owner on Dec 5, 2021. It is now read-only.

Latest commit

 

History

History
660 lines (471 loc) · 43.9 KB

API.md

File metadata and controls

660 lines (471 loc) · 43.9 KB

Summary

Members Descriptions
define ROOMBA_MASK_LED_NONE Masks for LEDs in leds()
define ROOMBA_MASK_LED_PLAY
define ROOMBA_MASK_LED_ADVANCE
define ROOMBA_MASK_DIGITAL_OUT_0 Masks for digitalOut()
define ROOMBA_MASK_DIGITAL_OUT_1
define ROOMBA_MASK_DIGITAL_OUT_2
define ROOMBA_MASK_DRIVER_0 Masks for drivers()
define ROOMBA_MASK_DRIVER_1
define ROOMBA_MASK_DRIVER_2
define ROOMBA_MASK_SIDE_BRUSH Roomba only:
define ROOMBA_MASK_VACUUM
define ROOMBA_MASK_MAIN_BRUSH
define ROOMBA_MASK_BUMP_RIGHT Masks for bumps and wheedrops sensor packet id 7.
define ROOMBA_MASK_BUMP_LEFT
define ROOMBA_MASK_WHEELDROP_RIGHT
define ROOMBA_MASK_WHEELDROP_LEFT
define ROOMBA_MASK_WHEELDROP_CASTER
define ROOMBA_MASK_LD1 Masks for driver overcurrents Packet ID 13.
define ROOMBA_MASK_LD0
define ROOMBA_MASK_LD2
define ROOMBA_MASK_RIGHT_WHEEL
define ROOMBA_MASK_LEFT_WHEEL
define ROOMBA_MASK_BUTTON_PLAY Masks for buttons sensor packet ID 18 Create
define ROOMBA_MASK_BUTTON_ADVANCE
define ROOMBA_MASK_BUTTON_MAX Roomba.
define ROOMBA_MASK_BUTTON_CLEAN
define ROOMBA_MASK_BUTTON_SPOT
define ROOMBA_MASK_BUTTON_POWER
define ROOMBA_MASK_DIGITAL_IN_0 Masks for digital inputs sensor packet ID 32.
define ROOMBA_MASK_DIGITAL_IN_1
define ROOMBA_MASK_DIGITAL_IN_2
define ROOMBA_MASK_DIGITAL_IN_3
define ROOMBA_MASK_DIGITAL_IN_DEVICE_DETECT
define ROOMBA_MASK_INTERNAL_CHARGER Masks for charging sources sensor packet ID 34.
define ROOMBA_MASK_HOME_BASE
define ROOMBA_READ_TIMEOUT Read timeout in milliseconds. If we have to wait more than this to read a char when we are expecting one, then something is wrong.
class Roomba Support for iRobot Roomba and Create platforms via serial port using the iRobot Open Interface (OI) protocol.

Members

Masks for LEDs in leds()

Masks for digitalOut()

Masks for drivers()

Roomba only:

Masks for bumps and wheedrops sensor packet id 7.

Masks for driver overcurrents Packet ID 13.

Masks for buttons sensor packet ID 18 Create

Roomba.

Masks for digital inputs sensor packet ID 32.

Masks for charging sources sensor packet ID 34.

Read timeout in milliseconds. If we have to wait more than this to read a char when we are expecting one, then something is wrong.

class Roomba

Support for iRobot Roomba and Create platforms via serial port using the iRobot Open Interface (OI) protocol.

The iRobot Roomba and Create platforms support a serial port through which you can control and interrogate the device. The protocol implemented here conforms to the Open Interface protocol described in the iRobot Open Interface Command Reference. Not all commands are supported on both platforms. Differences are noted in the API

The Roomba and Create is equipped with a min-din serial port socket, while the Create is also equipped with a 25-pin D connector called the Cargo Bay Connector. The pins on the Cargo Bay Connector include the serial port, battery, digital inputs and outputs, and an analog input.

In order to communicate with a Roomba, you must create an instance of the Roomba class and then call its instance methods to send commmands and receive sensor messages. You can also request continuous streams of sensor data to be sent by the Roomba. The Roomba also emits messages on its serial port from time to time as described below.

Electrical Considerations

The serial port output TXD from the Roomba/Create is too weak to drive the RX serial port input of an Arduino properly. This is because of the USB-Serial converter on the Arduino: it also tries to drive the RX serial port input via a pullup resistor, but the Roomba does not have enough drive to pull the RX down below about 2.5 volts, which is insufficient to be reliably detected as a TTL serial input of 0.

Note that this problem does not affect the Serial1 Serial2 or Serial3 ports on the Mega: these ports do not have other circuitry connected to them and the Roomba can drive the serial port inputs of these ports without a problem. Its only the RX Serial port (ie the first Serial port) that is affected by this problem.

What this means is that if you intend to connect a Roomba to the standard (first) RX/TX serial port on an Arduino you MUST have additional circuitry to help drive RX on the Arduino low enough. We use a simple PNP emitter follower. Almost any small signal low power PNP will do. See the example circuit diagram. This will ensure the RX serial port input on the Arduino is pulled down to about 0.6V for reliable comms.

Other Roomba messages

When iRobot Create powers up and after a reset, it sends a message like this on its serial port:

bl-start
2006-09-12-1137-L   
RDK by iRobot!
MC9S12E128
2006-11-20-1731-L   
battery-current-quiescent-raw 524  battery-current-zero 510

2006-11-20-1731-L   

While charging it will send a message like this each second:

bat:   min 3  sec 21  mV 15558  mA 1491  deg-C 24  

To enter the factory test menu for the IRobot Create, hold down the (>) and (>>|) buttons then press and hold the Power button until the assending and descending tones play and then stop. You wil see some messages emitted on teh serial port. Press the right-right arrow button to cycle through the tests.

Summary

Members Descriptions
public Roomba(HardwareSerial * serial,Baud baud) Constructor. You can have multiple simultaneous Roomba if that makes sense.
public void reset() Resets the Roomba. It will emit its startup message Caution, this may take several seconds to complete
public void start() Starts the Open Interface and sets the mode to Passive. You must send this before sending any other commands. Initialises the serial port to the baud rate given in the constructor
public uint32_t baudCodeToBaudRate(Baud baud) Converts the specified baud code into a baud rate in bits per second
public void baud(Baud baud) Changes the baud rate Baud is on of the Roomba::Baud enums
public void safeMode() Sets the OI to Safe mode. In Safe mode, the cliff and wheel drop detectors work to prevent Roomba driving off a cliff
public void fullMode() Sets the OI to Full mode. In Full mode, the cliff and wheel drop detectors do not stop the motors: you are responsible
public void power() Puts a Roomba in sleep mode. Roomba only, no equivalent for Create.
public void dock() Causes roomba to immediately seek the docking station. No equivalent for Create.
public void demo(Demo demo) Starts the requirested built-in demo
public void cover() Starts the Cover demo Changes mode to Passive
public void coverAndDock() Starts the Cover and Dock demo Changes mode to Passive
public void spot() Starts the Spot Cover demo Changes mode to Passive
public void drive(int16_t velocity,int16_t radius) Starts the Roomba driving with a specified wheel velocity and radius of turn
public void driveDirect(int16_t leftVelocity,int16_t rightVelocity) Starts the Roomba driving with a specified velocity for each wheel Create only. No equivalent on Roomba.
public void leds(uint8_t leds,uint8_t powerColour,uint8_t powerIntensity) Controls the LEDs on the Create
public void digitalOut(uint8_t out) Sets the digital output pins on the Cargo Bay Connector of the Create Create only. No equivalent on Roomba.
public void pwmDrivers(uint8_t dutyCycle0,uint8_t dutyCycle1,uint8_t dutyCycle2) Sets the duty cycle for PWM outputs on the low side drivers. These can be use for PWM driving of motors, lights etc. Create only. No equivalent on Roomba.
public void drivers(uint8_t out) Sets the low side drivers on or off. On the Romba, these control the 3 motors.
public void sendIR(uint8_t data) Sends the requested byte out of the low side driver 1 (pin 23 on the Cargo Bay Connector). low side driver 1 can be used to drive an IR transmitter to send commands to other Roombas and Creates. Create only. No equivalent on Roomba.
public void song(uint8_t songNumber,const uint8_t * notes,int len) Defines a song which can later be played with playSong()
public void playSong(uint8_t songNumber) Plays a song that has previously been defined by song()
public void stream(const uint8_t * packetIDs,int len) Requests that a stream of sensor data packets be sent by the Roomba. See the Open Interface manual for details on the resutting data. The packets will be sent every 15ms. You can use pollSensors() to receive sensor data streams. Create only. No equivalent on Roomba. See the Open Interface maual for more details and limitations.
public void streamCommand(StreamCommand command) Pause or resume a stream of sensor data packets previously requested by stream() Create only. No equivalent on Roomba.
public void script(const uint8_t * script,uint8_t len) Defines a command script which can later be executed with playScript(). You can clear the script by calling script(NULL, 0); Create only. No equivalent on Roomba.
public void playScript() Executes a previously defined script, the last one specified by script() Create only. No equivalent on Roomba.
public void wait(uint8_t ticks) Tells the Roomba to wait for a specified time. This command is intended for use in scripting only. Create only. No equivalent on Roomba.
public void waitDistance(int16_t mm) Causes Roomba to wait until it has travelled the distance specified. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba This command is intended for use in scripting only. Create only. No equivalent on Roomba.
public void waitAngle(int16_t degrees) Causes Roomba to wait until it has rotated through the specified angle. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba This command is intended for use in scripting only. Create only. No equivalent on Roomba.
public void waitEvent(EventType type) Cause the Create to wait for a specified event. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba Create only. No equivalent on Roomba.
public bool getData(uint8_t * dest,uint8_t len) Low level funciton to read len bytes of data from the Roomba Blocks untill all len bytes are read or a read timeout occurs.
public bool getSensors(uint8_t packetID,uint8_t * dest,uint8_t len) Reads the sensor data for the specified sensor packet ID. Note that different sensor packets have different lengths, and it is the callers responsibilty to make sure len agrees with the expected length of the sensor data. See the Open Interface manual for details on sensor packet lengths. Roomba.h defines various enums and defines for decoding sensor data. Blocks untill all len bytes are read or a read timeout occurs.
public bool getSensorsList(uint8_t * packetIDs,uint8_t numPacketIDs,uint8_t * dest,uint8_t len) Reads the sensor data for the specified set of sensor packet IDs. Note that different sensor packets have different lengths, and it is the callers responsibilty to make sure len agrees with the expected length of the sensor data. See the Open Interface manual for details on sensor packet lengths. Blocks until all len bytes are read or a read timeout occurs. Create only. No equivalent on Roomba.
public bool pollSensors(uint8_t * dest,uint8_t len) Polls the serial input for data belonging to a sensor data stream previously requested with stream(). As sensor data is read it is appended to dest until at most len bytes are stored there. When a complete sensor stream has been read with a correct checksum, returns true. See the Open Interface manual for details on how the sensor data will be encoded in dest. Discards characters that are not part of a stream, such as the messages the Roomba sends at startup and while charging. Create only. No equivalent on Roomba.
public uint8_t getScript(uint8_t * dest,uint8_t len) Reads a the contents of the script most recently specified by a call to script(). Create only. No equivalent on Roomba.
enum Baud Demo types to pass to Roomba::baud()
enum Demo Demo types to pass to Roomba::demo()
enum Drive Special values for radius in Roomba::drive()
enum StreamCommand Values to pass to Roomba::streamCommand()
enum EventType Values to pass to Roomba::waitEvent()
enum IRCommand Values for sensor packet ID 27
enum ChargeState Values for sensor packet ID 21
enum Mode Values for sensor packet ID 35
enum Sensor Values for sensor packet IDs to pass to getSensors() and getSensorsList()

Members

public Roomba(HardwareSerial * serial,Baud baud)

Constructor. You can have multiple simultaneous Roomba if that makes sense.

Parameters

  • serial POinter to the HardwareSerial port to use to communicate with the Roomba. Defaults to &Serial

  • baud the baud rate to use on the serial port. Defaults to 57600, the default for the Roomba.

public void reset()

Resets the Roomba. It will emit its startup message Caution, this may take several seconds to complete

public void start()

Starts the Open Interface and sets the mode to Passive. You must send this before sending any other commands. Initialises the serial port to the baud rate given in the constructor

public uint32_t baudCodeToBaudRate(Baud baud)

Converts the specified baud code into a baud rate in bits per second

Parameters

Returns

baud rate in bits per second

public void baud(Baud baud)

Changes the baud rate Baud is on of the Roomba::Baud enums

public void safeMode()

Sets the OI to Safe mode. In Safe mode, the cliff and wheel drop detectors work to prevent Roomba driving off a cliff

public void fullMode()

Sets the OI to Full mode. In Full mode, the cliff and wheel drop detectors do not stop the motors: you are responsible

public void power()

Puts a Roomba in sleep mode. Roomba only, no equivalent for Create.

public void dock()

Causes roomba to immediately seek the docking station. No equivalent for Create.

public void demo(Demo demo)

Starts the requirested built-in demo

Parameters

public void cover()

Starts the Cover demo Changes mode to Passive

public void coverAndDock()

Starts the Cover and Dock demo Changes mode to Passive

public void spot()

Starts the Spot Cover demo Changes mode to Passive

public void drive(int16_t velocity,int16_t radius)

Starts the Roomba driving with a specified wheel velocity and radius of turn

Parameters

  • velocity Speed in mm/s (-500 to 500 mm/s)

  • radius Radius of the turn in mm. (-2000 to 2000 mm). Any of the special values in enum Roomba::Drive may be used instead of a radius value

public void driveDirect(int16_t leftVelocity,int16_t rightVelocity)

Starts the Roomba driving with a specified velocity for each wheel Create only. No equivalent on Roomba.

Parameters

  • leftVelocity Left wheel velocity in mm/s (-500 to 500 mm/s)

  • rightVelocity Right wheel velocity in mm/s (-500 to 500 mm/s)

public void leds(uint8_t leds,uint8_t powerColour,uint8_t powerIntensity)

Controls the LEDs on the Create

Parameters

  • leds Bitmask specifying which LEDs to activate. ORed combination of ROOMBA_MASK_LED_*

  • powerColour The colour of the Power LED. 0 to 255. 0 = green, 255 = red, intermediate values are intermediate colours

  • powerIntensity Power LED intensity. 0 to 255. 0 = off, 255 = full intensity

public void digitalOut(uint8_t out)

Sets the digital output pins on the Cargo Bay Connector of the Create Create only. No equivalent on Roomba.

Parameters

  • out Mask specifiying which outputs to enable. ORed value ROOMBA_MASK_DIGITAL_OUT_*

public void pwmDrivers(uint8_t dutyCycle0,uint8_t dutyCycle1,uint8_t dutyCycle2)

Sets the duty cycle for PWM outputs on the low side drivers. These can be use for PWM driving of motors, lights etc. Create only. No equivalent on Roomba.

Parameters

  • dutyCycle0 Duty cycle for low side driver 0. 0 to 128.

  • dutyCycle1 Duty cycle for low side driver 1. 0 to 128.

  • dutyCycle2 Duty cycle for low side driver 2. 0 to 128.

public void drivers(uint8_t out)

Sets the low side drivers on or off. On the Romba, these control the 3 motors.

Parameters

  • out Bitmask of putputs to enable. ORed value ROOMBA_MASK_DRIVER_*

public void sendIR(uint8_t data)

Sends the requested byte out of the low side driver 1 (pin 23 on the Cargo Bay Connector). low side driver 1 can be used to drive an IR transmitter to send commands to other Roombas and Creates. Create only. No equivalent on Roomba.

Parameters

  • data Data byte to transmit

public void song(uint8_t songNumber,const uint8_t * notes,int len)

Defines a song which can later be played with playSong()

Parameters

  • songNumber Song number for this song. 0 to 15

  • notes Array of note/duration pairs. See Open Interface manual for details. 2 bytes per note, first byte is the note and the second is the duration

  • len Length of notes array in bytes, so this will be twice the number of notes in the song

public void playSong(uint8_t songNumber)

Plays a song that has previously been defined by song()

Parameters

  • songNumber The song number to play. 0 to 15

public void stream(const uint8_t * packetIDs,int len)

Requests that a stream of sensor data packets be sent by the Roomba. See the Open Interface manual for details on the resutting data. The packets will be sent every 15ms. You can use pollSensors() to receive sensor data streams. Create only. No equivalent on Roomba. See the Open Interface maual for more details and limitations.

Parameters

  • packetIDs Array specifying sensor packet IDs from Roomba::Sensor to be sent.

  • len Number of IDs in packetIDs

public void streamCommand(StreamCommand command)

Pause or resume a stream of sensor data packets previously requested by stream() Create only. No equivalent on Roomba.

Parameters

public void script(const uint8_t * script,uint8_t len)

Defines a command script which can later be executed with playScript(). You can clear the script by calling script(NULL, 0); Create only. No equivalent on Roomba.

Parameters

  • script Array containing a sequence of Roomba OI commands.

  • len Length of the script in bytes.

public void playScript()

Executes a previously defined script, the last one specified by script() Create only. No equivalent on Roomba.

public void wait(uint8_t ticks)

Tells the Roomba to wait for a specified time. This command is intended for use in scripting only. Create only. No equivalent on Roomba.

Parameters

  • ticks The number of ticks to wait. Each tick is 15ms

public void waitDistance(int16_t mm)

Causes Roomba to wait until it has travelled the distance specified. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba This command is intended for use in scripting only. Create only. No equivalent on Roomba.

Parameters

  • mm Distance to wait for in mm

public void waitAngle(int16_t degrees)

Causes Roomba to wait until it has rotated through the specified angle. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba This command is intended for use in scripting only. Create only. No equivalent on Roomba.

Parameters

  • degrees Angle to wait for in degrees

public void waitEvent(EventType type)

Cause the Create to wait for a specified event. Roomba will not react to any inputs until the wait has completed. Note that this does not cause the host arduino to wait, it only sends the wait comman to the Roomba Create only. No equivalent on Roomba.

Parameters

public bool getData(uint8_t * dest,uint8_t len)

Low level funciton to read len bytes of data from the Roomba Blocks untill all len bytes are read or a read timeout occurs.

Parameters

  • dest Destination where the read data is stored. Must have at least len bytes available.

  • len Number of bytes to read

Returns

true if all len bytes were successfully read. Returns false in the case of a timeout on reading any byte.

public bool getSensors(uint8_t packetID,uint8_t * dest,uint8_t len)

Reads the sensor data for the specified sensor packet ID. Note that different sensor packets have different lengths, and it is the callers responsibilty to make sure len agrees with the expected length of the sensor data. See the Open Interface manual for details on sensor packet lengths. Roomba.h defines various enums and defines for decoding sensor data. Blocks untill all len bytes are read or a read timeout occurs.

Parameters

  • packetID The ID of the sensor packet to read from Roomba::Sensor

  • dest Destination where the read data is stored. Must have at least len bytes available.

  • len Number of sensor data bytes to read

Returns

true if all len bytes were successfully read. Returns false in the case of a timeout on reading any byte.

public bool getSensorsList(uint8_t * packetIDs,uint8_t numPacketIDs,uint8_t * dest,uint8_t len)

Reads the sensor data for the specified set of sensor packet IDs. Note that different sensor packets have different lengths, and it is the callers responsibilty to make sure len agrees with the expected length of the sensor data. See the Open Interface manual for details on sensor packet lengths. Blocks until all len bytes are read or a read timeout occurs. Create only. No equivalent on Roomba.

Parameters

  • packetIDs Array of IDs from Roomba::Sensor of the sensor packets to read

  • numPacketIDs number of IDs in the packetIDs array

  • dest Destination where the read data is stored. Must have at least len bytes available.

  • len Number of sensor data bytes to read and store to dest.

Returns

true if all len bytes were successfully read. Returns false in the case of a timeout on reading any byte.

public bool pollSensors(uint8_t * dest,uint8_t len)

Polls the serial input for data belonging to a sensor data stream previously requested with stream(). As sensor data is read it is appended to dest until at most len bytes are stored there. When a complete sensor stream has been read with a correct checksum, returns true. See the Open Interface manual for details on how the sensor data will be encoded in dest. Discards characters that are not part of a stream, such as the messages the Roomba sends at startup and while charging. Create only. No equivalent on Roomba.

Parameters

  • dest Destination where the read data is stored. Must have at least len bytes available.

  • len Max number of sensor data bytes to store to dest

Returns

true when a complete stream has been read, and the checksum is correct. The sensor data (at most len bytes) will have been stored into dest, ready for the caller to decode.

public uint8_t getScript(uint8_t * dest,uint8_t len)

Reads a the contents of the script most recently specified by a call to script(). Create only. No equivalent on Roomba.

Parameters

  • dest Destination where the read data is stored. Must have at least len bytes available.

  • len The maximum number of bytes to place in dest. If the script is actually longer than len only len bytes will be written

Returns

The actual number of bytes in the script, even if this is more than len. By calling getScript(NULL, 0), you can determine how many bytes would be required to store the script.

enum Baud

Values Descriptions
Baud300
Baud600
Baud1200
Baud2400
Baud4800
Baud9600
Baud14400
Baud19200
Baud28800
Baud38400
Baud57600
Baud115200

Demo types to pass to Roomba::baud()

enum Demo

Values Descriptions
DemoAbort
DemoCover
DemoCoverAndDock
DemoSpotCover
DemoMouse
DemoDriveFigureEight
DemoWimp
DemoHome
DemoTag
DemoPachelbel
DemoBanjo

Demo types to pass to Roomba::demo()

enum Drive

Values Descriptions
DriveStraight
DriveInPlaceClockwise
DriveInPlaceCounterClockwise

Special values for radius in Roomba::drive()

Values Descriptions
StreamCommandPause
StreamCommandResume

Values to pass to Roomba::streamCommand()

Values Descriptions
EventTypeWheelDrop
EventTypeFronWheelDrop
EventTypeLeftWheelDrop
EventTypeRightWheelDrop
EventTypeBump
EventTypeLeftBump
EventTypeRightBump
EventTypeVirtualWall
EventTypeWall
EventTypeCliff
EventTypeLeftCliff
EventTypeFrontLeftCliff
EventTypeFrontRightCliff
EventTypeRightCliff
EventTypeHomeBase
EventTypeAdvanceButton
EventTypePlayButton
EventTypeDigitalInput0
EventTypeDigitalInput1
EventTypeDigitalInput2
EventTypeDigitalInput3
EventTypeModePassive

Values to pass to Roomba::waitEvent()

Values Descriptions
IRCommandLeft
IRCommandForward
IRCommandRight
IRCommandSpot
IRCommandMax
IRCommandSmall
IRCommandMedium
IRCommandLargeClean
IRCommandPause
IRCommandPower
IRCommandArcForwardLeft
IRCommandArcForwardRight
IRCommandDriveStop
IRCommandSendAll
IRCommandSeekDock
IRCommandReserved1
IRCommandRedBuoy
IRCommandGreenBuoy
IRCommandForceField
IRCommandRedGreenBuoy
IRCommandRedBuoyForceField
IRCommandGreenBuoyForceField
IRCommandRedGreenBuoyForceField

Values for sensor packet ID 27

Values Descriptions
ChargeStateNotCharging
ChargeStateReconditioningCharging
ChargeStateFullChanrging
ChargeStateTrickleCharging
ChargeStateWaiting
ChargeStateFault

Values for sensor packet ID 21

enum Mode

Values Descriptions
ModeOff
ModePassive
ModeSafe
ModeFull

Values for sensor packet ID 35

enum Sensor

Values Descriptions
Sensors7to26
Sensors7to16
Sensors17to20
Sensors21to26
Sensors27to34
Sensors35to42
Sensors7to42
SensorBumpsAndWheelDrops
SensorWall
SensorCliffLeft
SensorCliffFrontLeft
SensorCliffFrontRight
SensorCliffRight
SensorVirtualWall
SensorOvercurrents
SensorIRByte
SensorButtons
SensorDistance
SensorAngle
SensorChargingState
SensorVoltage
SensorCurrent
SensorBatteryTemperature
SensorBatteryCharge
SensorBatteryCapacity
SensorWallSignal
SensoCliffLeftSignal
SensoCliffFrontLeftSignal
SensoCliffFrontRightSignal
SensoCliffRightSignal
SensorUserDigitalInputs
SensorUserAnalogInput
SensorChargingSourcesAvailable
SensorOIMode
SensorSongNumber
SensorSongPlaying
SensorNumberOfStreamPackets
SensorVelocity
SensorRadius
SensorRightVelocity
SensorLeftVelocity

Values for sensor packet IDs to pass to getSensors() and getSensorsList()

Generated by Moxygen