Communication Protocol 3000
BTN - Button ID according to the configuration in
RED, GREEN, BLUE- Color intensity for each base color. Values are from 0 (No color) to 255 (Full color). Plain buttons that support only on/off light should ignore values of these parameters (except if all set to zero – same as turning light off).
STATE :
"0" or "Off" (Color parameters can be ignored). "1" or "On"
"2" or "Slow" for slow blink "3" or "Fast" for fast blink
RESULT – OK if command has been executed.
“#DEV_ID@RGB ERR 003” should be returned if any parameter exceeds its limits (for example – Button ID does not exist).
Example:
Master Device:#03@RGB 1,0,255,0,1CR
Result: Device Application needs to light on its button 1 and set color to Full green.
Device Application response: ~03@RGB 1,0,255,0,1 OKCRLF
Get RGB button leds configuration #DEV_ID@RGB? BTNCR | ~DEV_ID@RGB |
| BTN,RED,GREEN,BLUE,STATE CRLF |
Device that implements lit buttons should reply this request and give its button color and state. Device can support full color buttons or just plain on/off lights.
BTN - Button ID according to the configuration in
RED, GREEN, BLUE- Color intensity for each base color. Values are from 0 (No color) to 255 (Full color). Plain buttons that support only on/off light can set these parameters to any value (except if all are set to zero – same as turning light off).
STATE =
"0" or "Off" (Values of color parameters doesn’t matter). "1" or "On"
"2" or "Slow" for slow blink "3" or "Fast" for fast blink
Example:
Master Device:#03@RGB? 1CR
Device Application response: ~03@RGB 1,0,255,0,1CRLF
Write text to LCD | #DEV_ID@LCD LCD_ID,”TEXT”CR | ~DEV_ID@LCD LCD_ID,”TEXT” |
|
| RESULTCRLF |
Device that implements label (LCD) should react to this command and set its “LCD” (or text label).
LCD_ID – Label (LCD) ID according to the configuration in
TEXT – The text to display in the label (This parameter should be enclosed by quotation marks, character 34 in Ascii)
RESULT
– OK if command has been executed.
“LCD ERR 003” should return if any parameter exceeds its limits (for example – LCD with this ID doesn’t exist).
Read text from LCD |
| #DEV_ | ID@LCD? | LCD_ID | CR |
| ~DEV_ | ID@LCD | LCD_ID | ,” | TEXT | ” | CRLF |
|
|
|
|
|
|
|
|
|
|
|
| ||||
Device that implements label (LCD) should react to this command and set its “LCD” (or text label). |
|
|
|
|
|
|
|
|
|
LCD_ID – Label (LCD) ID according to the configuration in
TEXT – The text to display in the label (This parameter should be enclosed by quotation marks, character 34 in Ascii)
Restore User Interface | #01@UI | DEVICE_ID | CR | ~01@UI | DEVICE_ID | OK | CRLF |
|
|
|
|
|
|
|
|
|
|
After answering OK, the master will send to the device commands to refresh user interface elements like RGB buttons and LCD labels. For example:
#DEV_ID@RGB 1,
#DEV_ID@RGB 2, …(All RGB)
RED, GREEN,
RED, GREEN,
BLUE,
BLUE,
STATECR STATECR
#DEV_ID@LCD 1,”TEXT”CR #DEV_ID@LCD 2,”TEXT”CR …(All LCD)
Use this command to get the current user interface state on program start or refreshing the GUI.
13