Defined Commands
Command 0 : change configuration
Category (uint8) The category number specifies one of up to 256 configuration
categories available on the device.
Parameter (uint8) The parameter number specifies one of 256 potential configuration
parameters available on the device. Parameters 0 through 127 are
device specific parameters. Parameters 128 though 255 are reserved for
parameters that apply to multiple types of devices.
Data type (uint8) The data type specifies the type of the remaining data. The packet
length is used to determine the number of elements in the message.
Each message must contain an integral number of data elements.
Currently defined values are:
0: void / boolean A void value is represented as a boolean array of length zero.
The data field is a 8 bit value with 0 meaning false and all other values
meaning true.
1: signed byte
Data elements are signed bytes
2: signed 16bit integer
Data elements are signed 16 bit values
3: signed 32bit integer
Data elements are signed 32 bit values
4: signed 64bit integer
Data elements are signed 64 bit values
5: UTF-8 string Data elements represent a UTF-8 string with no terminating character.
Data types 6 through 127 are reserved.
128: signed 5.11fixed point Data elements are signed 16 bit integers representing a real number with
5 bits for the integer component and 11 bits for the fractional component.
The fixed point representation is equal to the real value
multiplied by 2^11.
The representable range is from -16.0 to 15.9995 (15 + 2047/2048).
Data types 129 through 255 are available for device specific purposes.
Operation type (uint8) The operation type specifies what action to perform on the specified
parameter. Currently defined values are:
0: assign value The supplied values are assigned to the specified parameter. Each
element will be clamped according to its valid range.
A void parameter may only be “assigned” an empty list of boolean type.
This operation will trigger the action associated with that parameter.
A boolean value may be assigned the value zero for false, and any other
value for true.
1: offset / toggle value Each value specifies signed offsets of the same type to be added to the
current parameter values. The resulting parameter value will be clamped
according to their valid range.
It is not valid to apply an offset to a void value.
Applying any offset other than zero to a boolean value will invert
that value.
Operation types 2 through 127 are reserved. Operation types
128through 255 are available for device specific purposes.
Data (void) The data field is 0 or more bytes as determined by the data type and
number of elements.
The category, parameter, data type and operation type partition a 24 bit operation space.
14551455