XBee-compatible API Format

General Frame Format

Start DelimiterLength of Frame DataFrame DataChecksum
0x7EMSBLSB 0xFF - (SUM(All Frame Data Bytes) % 256)

Except for the start delimiter, the following substitutions must be made before sending:

Raw ByteReplacement Bytes
0x7E0x7D 0x5E
0x7D0x7D 0x5D
0x110x7D 0x31
0x130x7D 0x33

Note that the first byte is the escape character 0x7D and the second is the original byte XOR'd with 0x20.

Supported Frames : Messages from Host to OpenMote

Transmit Request - 0x10

Frame Type (1B)Frame ID (1B)Destination Address Long (8B)Destination Address Short (2B)Broadcast Radius (1B)Options (1B)Data Packet (N/A)

0 : No response created.

1-255 : Host will respond with this frame ID in the response.

0 : Send to coordinator / sink.

0xFFFF : Broadcast.

Other : Lowest 64-bits of IPv6 Destination Address.

0xFFFE : Send to 8B destination (preferred)

Other : 802.15.4 16-bit destination address.


0 : Maximum number of hops for broadcast.

1-255 : Number of hops in a broadcast message.


Data to send

Supported Frames : Messages from OpenMote to Host

Receive Packet - 0x90

Frame Type (1B)Source Address Long (8B)Source Address Short (2B)Flags (1B)Data Packet (N/A)


Other : Lowest 64-bits of IPv6 sender address

802.15.4 16-bit sender address

Bitmask of:

0x02 : Packet was a broadcast

Data that was received