Comment on page
Profile Service
The profile service allows you to send and receive MsgPack formatted profiles to control motion detection, lighting setup, and the device name.
The profile service lets you send and receive configuration for motion, lighting, and effects to and from the Amp. Currently, there are five commands that you can utilize:
Command | Description |
get:config | Retrieves configuration as binary MsgPack |
raw:<binary data> | Sends Amp profile as MsgPack (also the format that get:config returns config) |
name:<name> | Sets the name of the Amp |
effect:<action>,<region>,<effect> | |
saveEffect:<action>,<region>,<effect> |
When sending / receiving data to the amp, you must take into account the MTU. The data will be received or needs to be sent in packets of MTU - 3 bytes.
In both directions, a flow control characteristic is sent with the size of the data in bytes so that both the Amp and the client knows how much data is being sent (i.e. how many notifications to look for before parsing the data)
Transmits profile data to the amp as a series of notifications. Must be preceded by an Amp Flow Control message with value
1,<data size in bytes>
Receives profile data from the amp as a series of notifications. Will be preceded by an Amp Flow Control with value
2,<data size in bytes>
Dictates between the Amp and a Bluetooth LE client the direction of data being received and the amount of data being sent
Bytes 1-4 are a packed unsigned 32-bit integer that dictates the size of the data being sent
Byte | Operations | Description |
0 | R/W | FlowControl |
1 | R/W | Data size byte 1 (MSB) |
2 | R/W | Data size byte 2 |
3 | R/W | Data size byte 3 |
4 | R/W | Data size byte 4 (LSB) |
Last modified 3yr ago