|
SLCP Specification 1.0
CMD_L8_VOLTAGE_RESPONSE
(0x47)
CMD_L8_AMBIENT_RESPONSE (0x51)
CMD_L8_VERSIONS_RESPONSE
(0x61)
CMD_L8_MCUTEMP_RESPONSE
(0x69)
CMD_L8_STORE_L8Y_RESPONSE
(0x6B)
CMD_L8_READ_L8Y_RESPONSE
(0x6D)
CMD_L8_STORE_FRAME_RESPONSE
(0x71)
CMD_L8_READ_FRAME_RESPONSE
(0x73)
CMD_L8_STORE_ANIM_RESPONSE
(0x78)
CMD_L8_READ_ANIM_RESPONSE
(0x7A)
CMD_L8_DELETE_USER_MEMORY
(0x7E)
CMD_L8_INIT_STATUS_QUERY
(0x85)
CMD_L8_ORIENTATION_QUERY
(0x8A)
CMD_L8_ORIENTATION_RESPONSE (0x8B)
CMD_L8_NUML8IES_RESPONSE
(0x8D)
CMD_L8_NUMANIMS_RESPONSE
(0x8F)
CMD_L8_NUMFRAMES_RESPONSE
(0x91)
CMD_L8_NOTIFAPP_RESPONSE
(0x94)
CMD_L8_NOTIFAPPS_NUM_QUERY
(0x95)
CMD_L8_NOTIFAPPS_NUM_RESPONSE
(0x96)
CMD_L8_SET_NOTIFICATION
(0x99)
CMD_L8_SET_LOW_BRIGHTNESS (0x9A)
CMD_L8_FRAMEGRAB_RESPONSE
(0x9C)
CMD_L8_STATUSLEDS_ENABLE
(0x9E)
CMD_L8_NOISE_THRESHOLDS_SET
(0x9F)
CMD_L8_PROX_THRESHOLDS_SET
(0xA0)
CMD_L8_AMB_THRESHOLDS_SET
(0xA1)
CMD_L8_SENSORS_THRESHOLDS_QUERY
(0xA2)
CMD_L8_SENSORS_THRESHOLDS_RESPONSE
(0xA3)
CMD_L8_NOTIFAPPS_ENABLE_ALL (0xA4)
CMD_L8_NOTIFAPPS_SILENCE
(0xA5)
CMD_L8_NOTIFAPPS_SILENCE_QUERY
(0xA6)
CMD_L8_NOTIFAPPS_SILENCE_RESPONSE
(0xA7)
PROXIMITY AND AMBIENT LIGHT
(0x03)
1.
INTRODUCTION
The L8 SmartLight can communicate with the external
world by different means (Bluetooth Classic, Bluetooth 4.0 or USB) for
notifications, acquiring data from its sensors, etc. On top of the physical
layer, the heart of the L8 communications is the SLCP transport protocol which
supports all the functionality of the L8 device.
2.
BASIC
CONCEPTS
The L8
firmware is structured as shown in the diagram below:
Bootloader
: Allows the firmware to be upgraded
Light OS: Contains all the functionality of the L8
device. When a new feature is added, this is the part of the L8 that gets
upgraded
User Memory space: This area will hold user data such as: L8ies,
Animations, Notifications, Bluetooth keys, settings, etc. Generally, when the
firmware is upgraded, this area remains untouched
L8y: A 64-pixel image that can be
displayed on the L8 matrix. Each pixel is composed by 3 components (Red, Blue
and Green) with a 4-bit depth.
Animation: Its a sequence of frames that can
be played natively by the L8. The internal representation of an animation is
the sequence of frames and the delays between them.
Frame: Each L8y that will form an
animation. Its basically a L8y but only used for animations.
Notification: A notification can be triggered by
an external event such as an incoming voice call or a social notification from
any app installed on your phone. Notifications will be loaded in the User
memory space with the name of the app that originates it and the L8y that will
be displayed.
Through
SLCP commands, the host can perform operations over items stored in the User
memory space such as creating custom animations, notifications or simply read
or delete de existing ones.
3.
SLCP
FRAMES
SLCP is a lightweight binary protocol, easy to
implement by a host, which is the core of the L8 communications. A SLCP frame
has the following format:
The header of a SLCP frame is composed by two bytes
(0xAA 0x55). The next byte indicates the length of the Payload in bytes
(maximum length is 255 bytes) and the next N bytes will form the SLCP command
itself. Available commands will be described later in this document.
The final byte is the CRC8-CCITT of the Payload and
provides a mechanism to detect possible errors during transmission. If the CRC8
in the frame does not match the calculated CRC8 of the payload, the frame
should be discarded.
4.
SLCP
COMMANDS
The different commands implemented in the L8 as of
firmware version 1.08.38 are described below:
Description |
An error has occurred in response to the last command |
Direction |
From L8 to host |
Parameters |
ID of
the command that failed (1 byte) |
Description |
The last command was successful |
Direction |
From L8 to host |
Parameters |
ID of
the command that was executed (1 byte) |
Description |
This command is sent to check that the L8 is connected |
Direction |
From host to L8 |
Parameters |
None |
Description |
This command is the response sent by the L8 to the CMD_PING command |
Direction |
From L8 to host |
Parameters |
None |
Description |
Set the color of a particular LED |
Direction |
From host to L8 |
Parameters |
- X
coordinate of the LED (0..7) (1 byte) - Y
coordinate of the LED (0..7) (1 byte) - Color of
the LED in BGR format (3 bytes) Each
color component is expressed between 0 (off) and 15 (maximum) |
Example |
Light
the pixel at row 3, column 0 in White: 43-03-00-0F-0F-0F |
Description |
Set the whole matrix to a given frame |
Direction |
From host to L8 |
Parameters |
64
pixels in 2-byte format (0x0BGR) (128 bytes) |
Example |
Light
the L8 in Green 44-00-F0-00-F0-00-F0-00-F0-
-00-F0 |
Description |
Clear all 64 pixels of the L8 matrix |
Direction |
From host to L8 |
Parameters |
None |
Description |
Query the voltage of the L8 battery |
Direction |
From host to L8 |
Parameters |
None |
CMD_L8_VOLTAGE_RESPONSE
(0x47)
Description |
Response to the CMD_L8_VOLTAGE_QUERY with the battery voltage and
percentage left |
Direction |
From L8 to host |
Parameters |
- Voltage
in millivolts (2 bytes MSB first) - Battery level 0-100 (1 byte) |
Example |
4200 mV 100% 47-10-68-64 (0x1068 = 4200mV / 0x64 = 100%) |
Description |
Query the temperature read by the L8 temp sensor |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_TEMP_QUERY in tenths of Celsius degrees |
Direction |
From L8 to host |
Parameters |
- Temperature
in tenths of Celsius (2 bytes MSB first) |
Example |
29.9şC 49-01-2B (0x012B = 299 = 29.9şC) |
Description |
Get the L8 into DFU mode for firmware upgrade |
Direction |
From host to L8 |
Parameters |
None |
Description |
Set the back led of the L8 to the specified color |
Direction |
From host to L8 |
Parameters |
Color in
BGR format (3 bytes) |
Example |
Light
the Superled in White 4B-0F-0F-0F |
Description |
Query the accelerometer sensor |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_ACC_QUERY |
Direction |
From L8 to host |
Parameters |
- X axis
(1 byte) - Y axis
(1 byte) - Z axis
(1 byte) - Lying
info: 2=up 1=upside-down (1 byte) - Orientation:
1=up 2=down 6=left 5=right (1 byte) - Tap: 1/0
(1 byte) - Shake:
1=shaking 0=not shaking (1 byte) Axis
information is a value between -32 (-1.5g) and 32 (1.5g) |
Example |
4D-02-00-2D-02-05-01-00 AccX =
02 = 2(dec) = 0.1g AccY =
00 = 0(dec) = 0g AccZ =
2D = 45(dec)= -0.9g Lying =
02 = UP Orientation
= 05 = RIGHT Tap = 01 Shake =
00 = NOT SHAKING |
Description |
Query the Unique Identifier of this L8 |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_UID_QUERY |
Direction |
From L8 to host |
Parameters |
- Unique identifier (12 bytes) |
Description |
Query the Ambient light sensor |
Direction |
From host to L8 |
Parameters |
None |
CMD_L8_AMBIENT_RESPONSE (0x51)
Description |
Response to the CMD_L8_AMBIENT_QUERY |
Direction |
From L8 to host |
Parameters |
- Ambient
light value 0-65535 (2 bytes) - Ambient
light percentage (1 byte) - Notification flag: 1=Notification, 0=Response to a request by the host (1 byte)
|
Example |
51-41-CC-19-00 Ambient
Light RAW = 0x41CC = 16844 (dec) Ambient
Light PERCENT = 0x19 = 25% (dec)
Notification flag = 00 = This command is a response to a request by the host |
Description |
Query the Proximity sensor |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_AMBIENT_QUERY |
Direction |
From L8 to host |
Parameters |
- Ambient
light value 0-65535 (2 bytes) - Ambient
light percentage (1 byte) - Notification flag: 1=Notification, 0=Response to a request by the host (1 byte)
|
Example |
53-73-2A-63-01 Proximity
RAW = 0x732A = 29482 (dec) Proximity
PERCENT = 0x63 = 99% (dec)
Notification flag = 01 = This command (note requested) notification from the L8 |
Description |
Query the versions of the different L8 modules |
Direction |
From host to L8 |
Parameters |
None |
CMD_L8_VERSIONS_RESPONSE
(0x61)
Description |
Response to the CMD_L8_VERSIONS_QUERY |
Direction |
From L8 to host |
Parameters |
- Firmware
version (3 bytes) - Hardware
version (2 bytes) - Bootloader
version (2 bytes) - User
memory version (2 bytes) |
Example |
61-01-08-2B-01-0F-01-07-05-02 FW
version: 1.08.43 HW
version: 1.15 Bootloader
version: 1.07 User
memory version: 5.02 |
Description |
Query the status of the L8 button |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_BUTTON_QUERY |
Direction |
From L8 to host |
Parameters |
- Button
status 1=pressed 0=released (1 byte) |
Example |
63-01 Button is pressed |
Description |
Query the noise sensor |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_MIC_QUERY |
Direction |
From L8 to host |
Parameters |
- Noise sensor
raw value (0-65535) (2 bytes) |
Example |
65-02-B8 Noise
sensor value = 0x02B8 = 696 (dec) |
Description |
Query the voltage of the USB connection |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_VBUS_QUERY |
Direction |
From L8 to host |
Parameters |
- Voltage in milivolts (2 bytes) |
Example |
67-13-EC USB
voltage = 0x13EC = 5100 mV = 5.1V |
Description |
Query the temperature of the L8 processor |
Direction |
From host to L8 |
Parameters |
None |
CMD_L8_MCUTEMP_RESPONSE
(0x69)
Description |
Response to the CMD_L8_MCUTEMP_QUERY |
Direction |
From L8 to host |
Parameters |
- Temperature in Celsius degrees (2 bytes) |
Example |
69-00-2B Temperature = 0x002B = 43 = 43şC |
Description |
Store a new L8y in the user memory |
Direction |
From host to L8 |
Parameters |
- L8y: 64 pixels in 2-byte format (0x0BGR) (128 bytes) |
Comments |
If the command fails or there is no space left on the user memory, a CMD_ERR will be returned to the host by the L8 |
CMD_L8_STORE_L8Y_RESPONSE (0x6B)
Description |
Response to the CMD_L8_STORE_L8Y command |
Direction |
From L8 to host |
Parameters |
- Index of the stored L8y (1 byte) |
Example |
6B-08 The L8y has been stored at index 8 of the user memory |
Description |
The host wants to read a L8y from the user memory |
Direction |
From host to L8 |
Parameters |
- Index of L8y to read (1 byte) |
Example |
6C-02 The host wants to read the L8y stored at index 2 |
CMD_L8_READ_L8Y_RESPONSE (0x6D)
Description |
Response to the CMD_L8_READ_L8Y command |
Direction |
From L8 to host |
Parameters |
- L8y: 64 pixels in 2-byte format (0x0BGR) (128 bytes) |
Comments |
If the command fails or the L8y doesnt exist, a CMD_ERR will be returned to the host by the L8 instead. |
Description |
The host wants to display a L8y stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of L8y to display (1 byte) |
Example |
6E-02 The host wants to display the L8y stored at index 2. The L8 will either answer with a CMD_OK if it succeeds or a CMD_ERR command if an error occurs or the L8y doesnt exist |
Description |
The host wants to delete a L8y stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of L8y to delete (1 byte) |
Example |
6F-02 The host wants to delete the L8y stored at index 2. The L8 will either answer with a CMD_OK if it succeeds or a CMD_ERR command if an error occurs or the L8y doesnt exist |
Description |
Store a new frame in the user memory |
Direction |
From host to L8 |
Parameters |
- L8y: 64 pixels in 2-byte format (0x0BGR) (128 bytes) |
Comments |
If the command fails or there is no space left on the user memory, a CMD_ERR will be returned to the host by the L8 |
CMD_L8_STORE_FRAME_RESPONSE (0x71)
Description |
Response to the CMD_L8_STORE_FRAME command |
Direction |
From L8 to host |
Parameters |
- Index of the stored frame (1 byte) |
Example |
71-01 The frame has been stored at index 1 of the user memory |
Description |
The host wants to read a frame from the user memory |
Direction |
From host to L8 |
Parameters |
- Index of frame to read (1 byte) |
Example |
72-02 The host wants to read the frame stored at index 2 |
CMD_L8_READ_FRAME_RESPONSE (0x73)
Description |
Response to the CMD_L8_READ_FRAME command |
Direction |
From L8 to host |
Parameters |
- Frame: 64 pixels in 2-byte format (0x0BGR) (128 bytes) |
Comments |
If the command fails or the frame doesnt exist, a CMD_ERR will be returned to the host by the L8 instead. |
Description |
The host wants delete a frame stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of the frame to delete (1 byte) |
Example |
6F-02 The host wants to delete the frame stored at index 2. The L8 will either answer with a CMD_OK if it succeeds or a CMD_ERR command if an error occurs or the L8y doesnt exist |
Description |
Query the charging status of the L8 battery |
Direction |
From host to L8 |
Parameters |
None |
Description |
Response to the CMD_L8_BATCHG_QUERY command |
Direction |
From L8 to host |
Parameters |
- Charging status (1byte) o 0x06 = Stand-by (not charging) o 0x0A = Charging o 0x0C = Charge complete o 0x0E = Fault |
Example |
76-0C The L8 is plugged to the charger and battery is fully charged |
Description |
Store a new animation in the user memory |
Direction |
From host to L8 |
Parameters |
- Number of frames of this animation (1 byte) - Index in flash for 1st frame (1byte) - Delay in tenths of a second (1 byte) - Index in flash for 2nd frame (1 byte) - Delay in tenths of a second (1 byte) - - Index in flash for nth frame (1byte) - Delay in tenths of a second (1 byte) |
Example |
77-02-00-03-01-03 Animation with two frames (at indexes 0 and 1) and 300 milliseconds between them |
Comments |
If the command fails, any frame does not exist or there is no space left on the user memory, a CMD_ERR will be returned to the host by the L8 |
CMD_L8_STORE_ANIM_RESPONSE (0x78)
Description |
Response to the CMD_L8_STORE_ANIM command |
Direction |
From L8 to host |
Parameters |
- Index of the stored animation (1 byte) |
Example |
78-0C Animation has been stored at index 0x0C = 12 |
Description |
The host wants to read an animation from the user memory |
Direction |
From host to L8 |
Parameters |
- Index of the animation to read (1 byte) |
Example |
79-02 The host wants to read the animation stored at index 2 |
CMD_L8_READ_ANIM_RESPONSE (0x7A)
Description |
Response to the CMD_L8_READ_ANIM command |
Direction |
From L8 to host |
Parameters |
- Number of frames of this animation (1 byte) - Index in flash for 1st frame (1byte) - Delay in tenths of a second (1 byte) - Index in flash for 2nd frame (1 byte) - Delay in tenths of a second (1 byte) - - Index in flash for nth frame (1byte) - Delay in tenths of a second (1 byte) |
Comments |
If the command fails or the animation doesnt exist, a CMD_ERR will be returned to the host by the L8 instead. |
Description |
The host wants delete an animation stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of the animation to delete (1 byte) |
Example |
7B-02 The host wants to delete the animation stored at index 2. The L8 will either answer with a CMD_OK if it succeeds or a CMD_ERR command if an error occurs or the L8y doesnt exist |
Description |
The host wants to play an animation stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of the animation to play (1 byte) - Loop mode: 1 = play in loop, 0 = play once (1 byte) |
Example |
7C-03-01 The host wants to play the animation stored at index 3 in loop mode. To stop it, it will have to issue a CMD_L8_STOP_ANIM command |
Description |
The host wants to stop a running animation |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_DELETE_USER_MEMORY (0x7E)
Description |
The host wants to delete all data stored in the user memory: L8ies, frames, animations, notifications, Bluetooth keys, etc. |
Direction |
From host to L8 |
Parameters |
- None |
Description |
The host wants to play an animation stored in the user memory |
Direction |
From host to L8 |
Parameters |
- ASCII character to display (1 byte) - Shift: direction and displacement (1 byte) o 2 upper bits represent direction (0 left, 1 right, 2 up, 3 down) o 4 lower bits represent s displacement (0 to 8) |
Example |
7F-6D-43 The host wants to display an m character (6D) shifted 3 columns to the right |
Description |
The host wants to change the orientation of the display |
Direction |
From host to L8 |
Parameters |
- Orientation (1 byte) o 1 = Up o 2 = Down o 5 = Right o 6 = Left |
Example |
80-02 Change the orientation of the display as if the L8 was upside-down |
Description |
The host wants to change the orientation of the display |
Direction |
From host to L8 |
Parameters |
- App index (1 byte) - App arguments * |
* Refer to the native applications supported natively by the L8 38
Description |
The host wants to stop the current running native app |
Direction |
From host to L8 |
Parameters |
- None |
Example |
82-02 Change the orientation of the display as if the L8 was upside-down |
Description |
The host wants to display a text message |
Direction |
From host to L8 |
Parameters |
- Loop: 1/0 (1byte) - Speed: 0=Fast 1=Medium 2=Slow (1 byte) - Color in RGB format (3 bytes) - Text string |
Example |
83-01-02-07-08-09-48-65-6C-6C-6F - 01: Play text in Loop mode (until a CMD_L8_APP_STOP) - 02: Slow speed - 07-08-09: RGB color - 48-65-6C-6C-6F: Hello string in ASCII |
Description |
Trace message from the L8 with debug info |
Direction |
From L8 to host |
Parameters |
- Message type (1 byte) o 1 = INFO o 2 = WARNING o 3 = ERROR - Message code (refer to the table below) (1 byte) |
CMD_L8_INIT_STATUS_QUERY (0x85)
Description |
Request initialization traces from the L8 The L8 will respond with CMD_L8_TRACE_MSG commands |
Direction |
From host to L8 |
Parameters |
- None |
Description |
Enable or disable the autorotate function of the L8 that will rotate the image according to the device orientation |
Direction |
From host to L8 |
Parameters |
- Enable: 1 or Disable: 0 (1 byte) |
CMD_L8_ORIENTATION_QUERY (0x8A)
Description |
Query the current orientation of the L8 |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_ORIENTATION_RESPONSE (0x8B)
Description |
Response to the CMD_L8_ORIENTATION_QUERY |
Direction |
From L8 to host |
Parameters |
- Orientation (1 byte) o 1 = Up o 2 = Down o 5 = Right o 6 = Left |
Example |
8B-01 The L8 is in its normal position |
Description |
Query the number of L8ies stored in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_NUML8IES_RESPONSE (0x8D)
Description |
Response to the CMD_L8_NUML8IES_QUERY |
Direction |
From L8 to host |
Parameters |
- Number of stored L8ies (1 byte) |
Example |
8D-0A There are 10 L8ies stored |
Description |
Query the number of animations stored in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_NUMANIMS_RESPONSE (0x8F)
Description |
Response to the CMD_L8_NUMANIMS_QUERY |
Direction |
From L8 to host |
Parameters |
- Number of stored animations (1 byte) |
Example |
8F-02 There are 2 animations stored |
Description |
Query the number of frames stored in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_NUMFRAMES_RESPONSE (0x91)
Description |
Response to the CMD_L8_NUMFRAMES_QUERY |
Direction |
From L8 to host |
Parameters |
- Number of stored frames (1 byte) |
Example |
91-02 There are 2 frames stored |
Description |
Store a new notifiable app in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- Length of the app string (Max 32) (1 byte) - App bundle string (max 32 bytes) - App Icon. 64 pixels in 2-byte BGR format (128 bytes) - Super LED color in 3-byte RGB format (3 bytes) - Enable flag (1=enabled 0=disabled) (1 byte) |
Comments |
SLCP_CMD_OK will be received if the operation is successful. If theres an error or no space left in user memory space, a SLCP_CMD_ERR will be returned by the L8.
Example of app bundle strings are: WhatsApp, Facebook, Instagram,etc. The L8 will look for this substring in bundle of the notification. In case of iOS those bundles look like com.net.whatsapp and the configured bundle must be found within that substring for a match. |
Description |
Retrieve the information of a notifiable app stored in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- Index of the notifiable app (1 byte) - Extended flag (1=extended 0=reduced) (1 byte) |
Comments |
When requested extended information, the L8 will return the icon of the app and the Super LED color. Otherwise, only the app bundle and the enable status will be returned |
CMD_L8_NOTIFAPP_RESPONSE (0x94)
Description |
Response to the CMD_L8_NOTIFAPP_QUERY command |
Direction |
From host to L8 |
Parameters |
- Length of the app string (Max 32) (1 byte) - App bundle string (max 32 bytes) - App Icon. 64 pixels in 2-byte BGR format (128 bytes) * - Super LED color in 3-byte BGR format (3 bytes) * - Enable flag (1=enabled 0=disabled) (1 byte) |
Comments |
* Only if extended info was requested in the QUERY command |
CMD_L8_NOTIFAPPS_NUM_QUERY (0x95)
Description |
Query the number of notifiable apps stored in the User Memory Space |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_NOTIFAPPS_NUM_RESPONSE (0x96)
Description |
Response to the CMD_L8_NOTIFAPPS_QUERY |
Direction |
From L8 to host |
Parameters |
- Number of stored notifiable apps stored (1 byte) |
Example |
96-0B There are 12 notifiable apps stored |
Description |
Enable or disable a notifiable app |
Direction |
From host to L8 |
Parameters |
- Index of the notifiable app to enable/disable (1 byte) |
Description |
The host wants to delete a notifiable app stored in the user memory |
Direction |
From host to L8 |
Parameters |
- Index of the notifapp to delete (1 byte) |
Example |
98-03 The host wants to delete the animation stored at index 2. The L8 will either answer with a CMD_OK if it succeeds or a CMD_ERR command if an error occurs or the notifapp doesnt exist |
CMD_L8_SET_NOTIFICATION (0x99)
Description |
The host wants to signal an event produced by a third party app |
Direction |
From host to L8 |
Parameters |
- Length of the app string (Max 32) (1 byte) - App bundle string (max 32 bytes) - EventID (1 byte) - CategoryID (1 byte) |
Example |
99-08-77-68-61-74-73-61-70-70-00-04 08: Length of the string 77-68-61-74-73-61-70-70: whatsapp 00: event added 04: category social
99-09-49-4e-53-54-41-47-52-41-4d-00-04 09: Length of the string 49-4e-53-54-41-47-52-41-4d: Instagram 00: event added 04: category social
99-00-00-01 New incoming call 00: No string 00: Event added 01: Incoming call
99-00-02-01 Incoming call stopped 00: No string 00: Event removed 01: Incoming call
|
CMD_L8_SET_LOW_BRIGHTNESS (0x9A)
Description |
Modify the brightness of the L8 matrix |
Direction |
From host to L8 |
Parameters |
- Brightness level (0=High 1=Medium 2=Low) (1 byte) |
Description |
Retrieve the current image displayed on the L8 matrix |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_FRAMEGRAB_RESPONSE (0x9C)
Description |
Response to the CMD_L8_FRAMEGRAB_QUERY command |
Direction |
From L8 to host |
Parameters |
- 64 pixels in 2-byte BGR format (128 bytes) |
Description |
Switch the L8 off |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_STATUSLEDS_ENABLE (0x9E)
Description |
Turn off/on the status LEDs of the L8 (Bluetooth, power and battery) |
Direction |
From host to L8 |
Parameters |
- Enable status: 0=disable 1=enable (1byte) |
CMD_L8_NOISE_THRESHOLDS_SET (0x9F)
Description |
Set the calibration values for the Noise sensor |
Direction |
From host to L8 |
Parameters |
- Minimum value (0-65535) MSB First (2 bytes) - Maximum value (0-65535) MSB First (2 bytes) |
CMD_L8_PROX_THRESHOLDS_SET (0xA0)
Description |
Set the calibration values for the Proximity sensor |
Direction |
From host to L8 |
Parameters |
- Minimum value (0-65535) MSB First (2 bytes) - Maximum value (0-65535) MSB First (2 bytes) |
CMD_L8_AMB_THRESHOLDS_SET (0xA1)
Description |
Set the calibration values for the Ambient Light sensor |
Direction |
From host to L8 |
Parameters |
- Minimum value (0-65535) MSB First (2 bytes) - Maximum value (0-65535) MSB First (2 bytes) |
CMD_L8_SENSORS_THRESHOLDS_QUERY (0xA2)
Description |
Query the calibration values for the L8 sensors |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_SENSORS_THRESHOLDS_RESPONSE (0xA3)
Description |
Response to the CMD_L8_SENSORS_THRESHOLDS_QUERY command |
Direction |
From L8 to host |
Parameters |
- Noise Minimum value (0-65535) MSB First (2 bytes) - Noise Maximum value (0-65535) MSB First (2 bytes) - Prox. Minimum value (0-65535) MSB First (2 bytes) - Prox. Maximum value (0-65535) MSB First (2 bytes) - Ambient Minimum value (0-65535) MSB First (2 bytes) - Ambient Maximum value (0-65535) MSB First (2 bytes) |
CMD_L8_NOTIFAPPS_ENABLE_ALL (0xA4)
Description |
Enable/Disable all notifiable apps at a time |
Direction |
From host to L8 |
Parameters |
- Enable status: 1=enabled 0=disabled (1 byte) |
CMD_L8_NOTIFAPPS_SILENCE (0xA5)
Description |
Silence notifications from notifiable apps |
Direction |
From host to L8 |
Parameters |
- Silence status: 1=silenced 0=disabled (1 byte) |
Comments |
Notifications will be unsilenced after restarting the L8 |
CMD_L8_NOTIFAPPS_SILENCE_QUERY (0xA6)
Description |
Query if the notifications are silenced |
Direction |
From host to L8 |
Parameters |
- None |
CMD_L8_NOTIFAPPS_SILENCE_RESPONSE (0xA7)
Description |
Response to the CMD_L8_NOTIFAPPS_SILENCE_QUERY command |
Direction |
From L8 to host |
Parameters |
- Silence status: 1=silenced 0=disabled (1 byte) |
Description |
This app will roll a dice whenever you shake the L8 |
Parameters |
- Color of the dice in B G R format (3 bytes) |
Example |
81-00-0F-00-00 Execute the dice app showing it in blue |
Description |
This app will light the L8 display according to the music in the room |
Parameters |
- None |
Example |
81-01 Launch the party app |
Description |
This app will light the L8 display according to the music in the room |
Parameters |
- Mode (1 byte) o Multicolor: 1 o Tropical: 2 o Galaxy: 3 o Aurora: 4 - Speed in tens of milliseconds (1 byte) - BackLed (1: inverted, 0: not inverted) (1byte) |
Example |
81-02-01-30-00 Launch the light app in Multicolor mode at 300ms speed and backled not inverted |
PROXIMITY AND AMBIENT LIGHT (0x03)
Description |
Proximity app: will light the L8 when hovering the hand over the sensor Ambient Light app: will light the L8 when the ambient light drops below a threshold |
Parameters |
- Matrix color in BGR format (3 bytes) - Super LED color in BGR format (3 bytes) - Threshold (0-100) (1 byte) - Sensor (1: ambient light, 0: proximity) (1byte) |
Example |
81-03-0F-0F-0F-0F-0F-0F-32-00 Launch the proximity app. Matrix and super LED color will be white and the threshold is 0x32 (50%) |