Protocol
This page describes the native communications protocol with the device. It is binary based, with a small header, and no other requirements on the data.
By convention, most (if not all) endpoints accept and provide data that is CBOR encoded.
Header
All packets have a simple four byte header that precedes the payload, regardless of the underlying transport:
- 1 byte: Message type
- Indicates the "endpoint" inside the protocol handler that should receive this message
- 1 byte: Tag
- Can be used to differentiate multiple outstanding requests and their replies
- 2 bytes: Length
- Indicates the number of bytes of payload data that follow
Note that all multi-byte values in the header are sent in big endian (network) byte order.
Message Types
Below are all currently implemented message types/endpoints:
Number | Name | Description |
0x01 |
Property Request | Get/set various properties on the device. See Properties for more info. |