Robo-Sentry Communications Protocols. Serial Messages between the Edison and the Arduino Robot controller. Messages start with a #, then an ID character, then the data as defined below. Since we will only be transfering basic numberic values, those will be encoded as HEX. Character position will be used for decoding rather then having delimiters. All messages are terminated with a ASCII ID Byte Message Description 0 undefined/reserved/not set M Mode D Drive P Position G Goto R RFID O Obstuct Mode message The mode command places the bot in either manual mode or auto mode. Based on this mode, many of the messages change control direction. For example, when in Manual mode, the Drive message controls the motor drive directly. In Auto mode The Drive message is an output from the bot for motor status. MA A is operation mode, A = Auto, M = Manual Drive message Basic motor control (Manual) or status (Auto) DALLBRR D is message ID A is Left motor direction F for forward, R for reverse LL for left motor PWM value 00-FF with 00 meaning 0% B is Right motor direction RR is right motor PWM 00-FF Example DF47F64 is Drive Left motor forward at 0x47H, Right motor forward at 0x64 Position message Position data the bot maintains via it's motor encoders. This message is sent by the bot at regular intervals to update it's status. If received this message is taken as a calibration setting the X,Y bot position to the given cords. PXXXXXXXYYYYYYY P is message ID XXXXXXXX X position count, 64 Bits, Signed Long YYYYYYYY Y position count, 64 Bits, Signed Long Example P0123456701234567 01234567 Counts of X 02345667 Counts of Y Goto message This message commands the bot in Automatic mode to find it's way to the specified X,Y position. The encoding matches the Position message above GXXXXXXXYYYYYYY G is message ID XXXXXXXX X position count, 64 Bits, Signed Long YYYYYYYY Y position count, 64 Bits, Signed Long Example G0123456701234567 Goto 01234567 Counts of X and 02345667 Counts of Y RFID message This message is output by the bot when it reads a valid ID via it's RFID reader. R? R is the ID ? Is the data, don't know how much to expect, its the unique ID part of what's read. Obstuct message Output by the bot at a regular interval with status of the obstruction detectors. For now I'm assuming there can be a numberic output for range which can be mapped into a signed 16 bit int. OAAAABBBBCCCCDDDD O Message ID AAAA Value for Left front sensor BBBB Right front CCCC Left rear DDDD Right rear