Difference between revisions of "CLI Reference Guide AIO"

From OpenMotics
Jump to navigation Jump to search
Line 216: Line 216:
 
:;Instruction:
 
:;Instruction:
 
::<code>change debug on</code>
 
::<code>change debug on</code>
 +
 +
:;Returns
 +
::<code>OK</code>
 +
 +
----
 +
 +
====dali debug off====
 +
 +
:''This instruction will disable the debug function for Dali message sent and received on the Dali bus.''
 +
 +
:;Returns
 +
::<code>OK</code>
 +
 +
Example: Deactivate Dali debug mode
 +
 +
:;Instruction:
 +
::<code>dali debug off</code>
 +
 +
:;Returns
 +
::<code>OK</code>
 +
 +
----
 +
 +
====change debug on====
 +
 +
:''This instruction will enable the debug function for Dali message sent and received on the Dali bus.''
 +
 +
:;Returns
 +
::<code>OK</code>
 +
 +
Example: Activate Dali debug mode
 +
 +
:;Instruction:
 +
::<code>dali debug on</code>
  
 
:;Returns
 
:;Returns

Revision as of 13:23, 21 October 2021

Information about the All In One (AIO) can be found in AIO General Information.

The Gateway has 2 computer systems built-in: A Master Controller (Microchip DSPIC33) and a Gateway Controller (Linux Based Beagle Bone). The Master controller is connected with the Gateway Controller over RS232. The Master Controller has a built-in CLI interface allowing the user to configure and control the Master controller to his full extend.

This CLI can be accessed by using the Maintenance function in the OpenMotics cloud or by using a RS232 TTL cable (Baud rate 115200, 8 databits, no parity, 1 stop bit, no flow control) that is connected directly on the Gateway on the extern RS232 connector.

Possible modes of communication:

  • Advanced Mode: API (The Master controller and Gateway controller will use Advanced mode to communicate)
  • Simple Mode: CLI (Simple Mode will be used by Maintenance mode in the cloud or when a direct RS232 connection is established)

The advantages of the AIO (All In One) design is that API and CLI mode can be used simultaneously (on 2 different UART ports).

Contents

Notes

  1. In CLI mode, characters sent through RS232 can be echoed. In API mode they are never echoed.
  2. Instructions are case sensitive.
  3. As opposed to API mode, CLI mode has a variable instruction length.
  4. Every instruction must be followed by a Carriage return (<CR>, DEC 13).
  5. Every successful instruction will return the requested information (or perform requested action) followed by OK, otherwise ERROR is returned (wrong format, wrong parameters,…). All error codes are listed in the Error Codes AIO section.
  6. An instruction will only be executed if the Master has responded with “OK”

For the Release Notes of the AIO, please see AIO Release Notes.

Notation

Instruction [required parameter] {optional parameter}

Instruction description.

[param]
Parameter description


Returns
[return value]

Versioning

This document describes the available CLI commands available on the All In One CLI interface. The All In One module is not yet available and not yet in production so please use CLI Reference Guide used in the current gateway.

Gateway Module FW version
NOT IN PRODUCTION V0.03

Instruction Set

General instructions

?

This instruction will list all available CLI instructions
Returns
The full list of CLI instructions

can eeprom list

This instruction will list the programmed configuration stored in the Brain(+) of all connected Micro CAN's.
Returns
Configuration list of all programmed Micro CAN's

Example:

Instruction
can eeprom list
Returns
-Nr-Bus-ID2.ID1.ID0--Inp.link0-Inp.link1-Inp.link2-Inp.link3-Inp.link4-Inp.link5-Tem.link0-Tem.link1-Modbus-Type
 00 000 100.154.092  009(001)  008(000)  255(255)  255(255)  255(255)  255(255)  000(000)  255(000)   255   255
 01 100 030.245.232  255(255)  255(255)  010(002)  011(003)  012(004)  013(005)  255(100)  255(255)   255   255
 02 100 232.121.136  255(255)  255(255)  036(020)  037(021)  035(019)  034(018)  006(100)  255(006)   255   255
OK
As you can see in the above example, 1 Micro Can is not responding. If you still want to know the configuration of this Micro Can, you can use the CLI instruction can eeprom list
These are the explanations of the different items in the "can ping list":
  • Nr: Micro CAN number
  • Bus: This is the Bus number on which the Micro CAN is connected
    • 100: Internal CAN Bus
    • 000: CAN bus of the first CAN Control
    • 001: CAN bus of the second CAN Control
    • 002: CAN bus of the third CAN Control
    • ...
  • Inp.link0-5: This is system input nr of the Brain(+) that is linked to the input (0-5) of the Micro CAN. The value between parenthesis is the input number on that bus and is for developer purposes only and thus can be ignored.
  • Tem.link0-1: This is the system sensor nr of the Brain(+) that is linked to the sensor (0-1) of the Micro CAN. The value between parenthesis is the sensor number on that bus and is for developer purposes only and thus can be ignored.
  • Modbus: Modbus address (255-> not configured)
  • Type:
    • .BIT7: =0->Modbus VOC is used, =1->uCAN VOC is used
    • .BIT6: =0->Modbus CO2 is used, =1->uCAN CO2 is used
    • .BIT5: =0->Modbus humidity is used, =1->uCAN humidity is used
    • .BIT4: =0->Modbus temp is used, =1->uCAN temp is used
    • .BIT3: =0->Modbus LUX is used, =1->uCAN LUX is used

can ping list

This instruction will request to all connected Micro CAN's the full status and configuration.
Returns
The detailed answers of the connected Micro CAN's

Example:

Instruction
can ping list
Returns
Nr-Bus-ID2.ID1.ID0-Inp.link0-Inp.link1-Inp.link2-Inp.link3-Inp.link4-Inp.link5-Tem.link0-Tem.link1-Type-Firmware-Boot-ID_NE-Modbus-Type-Model-Speed-Stat1-Stat2-Min-MAX-delay--Volt--
00 000 100.154.092  NA(NA)    NA(NA)    NA(NA)    NA(NA)    NA(NA)    NA(NA)    NA(NA)    NA(NA)    NA     NA     NA    NA    NA    NA    NA    NA    NA    NA   NA  NA >500ms  NA
01 100 030.245.232 255(255)  255(255)  010(002)  011(003)  012(004)  013(005)  255(255)  255(255)  000  F06.00.06 255  069   255   255   255   255   000   255  000 255  001ms 23.48V
02 100 232.121.136 255(255)  255(255)  028(020)  029(021)  027(019)  026(018)  006(006)  255(255)  060  F06.00.08 255  069   255   255   255   255   000   255  000 255  001ms 23.18V
OK
As you can see in the above example, 1 Micro Can is not responding. If you still want to know the configuration of this Micro Can, you can use the CLI instruction can eeprom list
These are the explanations of the different items in the "can ping list":
  • Nr: Micro CAN number
  • Bus: This is the Bus number on which the Micro CAN is connected
    • 100: Internal CAN Bus
    • 000: CAN bus of the first CAN Control
    • 001: CAN bus of the second CAN Control
    • 002: CAN bus of the third CAN Control
    • ...
  • Inp.link0-5: This is system input nr of the Brain(+) that is linked to the input (0-5) of the Micro CAN. The value between parenthesis is the input number on that bus and is for developer purposes only and thus can be ignored.
  • Tem.link0-1: This is the system sensor nr of the Brain(+) that is linked to the sensor (0-1) of the Micro CAN. The value between parenthesis is the sensor number on that bus and is for developer purposes only and thus can be ignored.
  • Type: This is the type sensors connected on the Micro CAN:
    • BIT0=1: Temperature sensor DS1820 1wire found on the first sensor connection
    • BIT1=1: Temperature sensor DS1820 1wire found on the second sensor connection
    • BIT2=1: Honeywell HIH8121 Temp/humidity sensor I2C found
    • BIT3=1: TSL2591 I2C lux sensor found
    • BIT4=1: CCS811 I2C air quality sensor found
    • BIT5=1: T67xx I2C air quality sensor found
  • Firmware: This is the current firmware version
  • Boot: Bootloader mode for next startup
  • ID_NE: 78->New Micro Can, 69->Existing Micro Can
  • CanP1: =1->CanP parameters are validated and ready to be used
  • CanP2: BRGCON1 (18F46K80)
  • CanP3: BRGCON2 (18F46K80)
  • CanP4: BRGCON3 (18F46K80)
  • CanP5: CRC8 of CanP2-CanP4
  • Stat: Led/Buzzer status
    • .BIT0->Buzzer ON(1)/OFF(0) for all functions
    • .BIT1->Buzzer ON(1)/OFF(0) for non-linked switches
    • .BIT2->TriColor status led ON(1)/OFF(0)
  • Min: Minimum led brightness
  • Max: Maximum led brightness
  • Delay: Trip Round time between request and response
  • Volt: This is the voltage the Micro CAN is measuring. This is an interesting value, when long cables are used, to see how much voltage drop the cables are generating

can speed read

This instruction will display the CAN bus speed currently in use.
Returns
CAN bus speed

Example:

Instruction
can speed read
Returns
125kbps
OK 

can speed write[speed]

This instruction will write the new CAN bus speed that will be effective after reset. Supported speeds are 20kbps, 50kbps, 125kbps and 250kbps.
Returns
CAN bus parameters

Example:

Instruction
can speed write 50
Returns
CAN P: 001 031 255 002 060
OK
See https://wiki.openmotics.com/index.php/AIO_Tips_%26_tricks_during_installation_and_troubleshooting#Changing_CAN_bus_speed for detailed use

Notes:

  • New uCAN's are programmed at a speed of 125kbps so when new uCAN's are added to an existing network, change the speed to 125kbps, add the uCAN and then change to the required speed.
  • The instruction "can speed write" can also be executed without any parameter. Without parameter, the Master will take the values programmed in Eeprom starting at Page0/Byte14 and verify integrity of those values. When the integrity is OK, these values will be distributed towards the uCAN and programmed in the Master to be used after the next reset. This allows custom CAN parameters to be used in a system.
  • The speed that a CAN bus is able to support depends on the cable used and the length: Increase in cable length means decrease in CAN speed, decrease in cable quality means decrease in CAN speed. A good quality cable (for example UTP CAT6) at CAN speed of 125kbps can easily support 250 meter.

change debug off

This instruction will disable the debug function for changes. When the debug function is activate, every time a sensor value changes (but could also be output or validation bit etc), the changed device number (like sensor) and the new value will be printed.
Returns
OK

Example: Deactivate change debug mode

Instruction
change debug off
Returns
OK

change debug on

This instruction will enable the debug function for changes. When the debug function is activate, every time a sensor value changes (but could also be output or validation bit etc), the changed device number (like sensor) and the new value will be printed.
Returns
OK

Example: Activate change debug mode

Instruction
change debug on
Returns
OK

dali debug off

This instruction will disable the debug function for Dali message sent and received on the Dali bus.
Returns
OK

Example: Deactivate Dali debug mode

Instruction
dali debug off
Returns
OK

change debug on

This instruction will enable the debug function for Dali message sent and received on the Dali bus.
Returns
OK

Example: Activate Dali debug mode

Instruction
dali debug on
Returns
OK

error list

el

This instruction will list all configured modules, their ID's, the number off errors on this module and the status of each module (Good, Degraded1, Degraded2, Degraded3, Offline, Forced Offline)
Returns
--- Total Uptime: 000334 Hours, Last Startup: 20:23:50 07/12/20   ---
--- Module Type: BRAIN, RS485 mode: 0, Board: 26'C  --.--V --.--A ---
--- PWR RS485/CAN/12V: 1/1/1, CANTERM: 1, BB debug: 0, Fw: 1.0.70 ---
-------Output------------ID---------Err-------Status-------
 00 (l I 000->007) 108.000.000.000 00000   GOOD       (000)
 01 (O E 008->015) 079.222.189.122 00000   GOOD       (000)
 02 (D E 016->023) 068.072.145.035 00000   GOOD       (000)
-------Input-------------ID---------Err-------Status-------
 00 (i I 000->007) 105.000.000.000 00000   GOOD       (000)
 01 (b C 008->015) 098.000.000.001 00000   GOOD       (000)
 02 (b C 016->023) 098.000.000.002 00000   GOOD       (000)
 03 (b C 024->031) 098.000.000.003 00000   GOOD       (000)
 04 (I E 032->039) 073.195.134.013 00000   GOOD       (144)
-------Sensor------------ID---------Err-------Status-------
 00 (s C 000->007) 115.000.000.000 00000   GOOD       (000)
 01 (T E 008->015) 084.001.003.007 00000   GOOD       (080)
-------CAN Control-------ID---------Err-------Status-------
 00 (C E 000->000) 067.131.006.013 00000   GOOD       (016)
-------Micro CAN---------ID---------Err-------Status-------
 00 (m C 000->000) 000.100.154.092 00215   DEGRADED 2 (000)
 01 (m C 001->001) 100.030.245.232 00000   GOOD       (000)
 02 (m C 006->006) 100.232.121.136 00000   GOOD       (000)
OK
Below, you can find a short explanation what the different items mean:
  • First parenthesis first character: module type1 ('O'->RS485 module, 'D'->RS485 dim (0-10V) module, 'l'->Brain(+) internal open collector output, 'i'->Input module, 'o'->output module, 'b'->Micro Can virtual input module, 's'-> Can virtual sensor module, 'T'->RS485 temperature module, 'R'->RS485 output module fully configured as Roller/Shutter module, 'm'->Micro Can module)
  • First parenthesis second character: module type2 ('I'-> Internal inputs/outputs of the Brain(+), 'E'->External RS485 module, 'C'->Linked to External Micro CAN module, 'V'->Virtual module)
  • First parenthesis 000->007: indicate from for example which input nr is the first and last input of that module
  • ID: this is the unique ID of this module
  • Err: Number of errors for each of the modules. CLI instruction "error clear" can be used to reset all errors
  • Status: 4 status possibilities (GOOD, DEGRADED 1, DEGRADED 2, DEGRADED 3, OFFLINE)
  • Second parenthesis: indicates the type of scanning the module will have.
  • BB debug: When 1, debug mode is ON and all BA's that are executed will also be forwarded to the BB over UART API
In the list, you'll also see the health status of the connected Micro CAN's (directly via the internal CAN bus of the Brain(+) or externally via the CAN Control). Each Micro CAN has 3 bytes as an address and as you can see in the above example, you see 4 Bytes:
  • The first byte of the 4 bytes address of the Micro CAN in the above list is the Bus number:
    • 100: Internal CAN Bus
    • 000: CAN bus of the first CAN Control
    • 001: CAN bus of the second CAN Control
    • 002: CAN bus of the third CAN Control
    • ...

error clear

This instruction will delete all the errors and will start communicating again with the RS485 modules at the normal pace
Returns
OK

Example:

Instruction
error clear
Returns
OK

firmware version

This instruction will display the firmware of the Master and all connected slaves. The firmware version of slaves is requested directly via the RS485 bus in other words, when a slave is not online, the firmware version will not be displayed

Example:

Instruction
firmware version
Returns
--- Fw version Brain(+): V1.0.68 ---
Output:
 00 (l I) 108.000.000.000 -> Internal/Virtual
 01 (O E) 079.222.189.122 -> V6.0.7
 02 (D E) 068.072.145.035 -> V6.0.7
Input:
 00 (i I) 105.000.000.000 -> Internal/Virtual
 01 (b C) 098.000.000.001 -> Internal/Virtual
 02 (b C) 098.000.000.002 -> Internal/Virtual
 03 (I E) 073.195.134.013 -> V6.0.12
Sensor:
 00 (s C) 115.000.000.000 -> Internal/Virtual
 01 (s C) 115.000.000.001 -> Internal/Virtual
 02 (T E) 084.001.003.007 -> V6.0.6
Can:
 00 (C E) 067.131.006.013 -> V6.0.27
OK


health debug off

This instruction will disable the CLI console debug function for health related matters. When for example a sensor is not responding for 2 minutes, a debug message will appear when this debug function is enabled
Returns
OK

health debug on

This instruction will enable the CLI console debug function for health related matters. When for example a sensor is not responding for 2 minutes, a debug message will appear when this debug function is enabled
Returns
OK

logging list [number of lines*]

* is an optional value, if the optional value is not used, the system will print the last 32 lines of the FRAM logging
This instruction will print the FRAM logging. Events, Errors and BA's can be logged depending on the settings in Eeprom, see Memory Model Page0/Byte13
Returns
logging list
0000(P056/B048): 21/04/19 17:22:11 BA 001 000 000 027 000 000 000 000
0001(P056/B032): 21/04/19 17:22:11 BA 000 016 000 010 000 000 000 000
0002(P056/B016): 21/04/19 17:22:11 BA 001 001 000 027 000 000 000 000
0003(P056/B000): 21/04/19 17:22:10 BA 001 000 000 027 000 000 000 000
0004(P055/B240): 21/04/19 17:22:10 BA 000 016 000 010 000 000 000 000
0005(P055/B224): 21/04/19 17:22:10 BA 001 001 000 027 000 000 000 000
0006(P055/B208): 21/04/19 17:22:10 BA 001 000 000 027 000 000 000 000
0007(P055/B192): 21/04/19 17:22:10 BA 000 016 000 010 000 000 000 000
0008(P055/B176): 21/04/19 17:22:10 BA 001 001 000 027 000 000 000 000
0009(P055/B160): 21/04/19 17:22:10 BA 001 000 000 027 000 000 000 000
0010(P055/B144): 21/04/19 17:22:09 BA 000 016 000 010 000 000 000 000
0011(P055/B128): 21/04/19 17:22:09 BA 001 001 000 027 000 000 000 000
0012(P055/B112): 21/04/19 17:22:08 BA 001 000 000 027 000 000 000 000
0013(P055/B096): 21/04/19 17:22:08 BA 000 016 000 010 000 000 000 000
0014(P055/B080): 21/04/19 17:22:08 BA 001 001 000 027 000 000 000 000
0015(P055/B064): 21/04/19 17:22:07 BA 001 000 000 027 000 000 000 000
0016(P055/B048): 21/04/19 17:22:07 BA 000 016 000 010 000 000 000 000
0017(P055/B032): 21/04/19 17:22:07 BA 001 001 000 027 000 000 000 000
0018(P055/B016): 21/04/19 17:21:49 BA 001 000 000 027 000 000 000 000
0019(P055/B000): 21/04/19 17:21:49 BA 001 001 000 027 000 000 000 000
0020(P054/B240): 21/04/19 17:21:31 BA 000 000 000 010 000 000 000 000
0021(P054/B224): 21/04/19 17:21:22 BA 000 001 000 011 000 000 000 000
0022(P054/B208): 21/04/19 17:21:15 BA 000 001 000 010 000 000 000 000
0023(P054/B192): 21/04/19 17:20:22 BA 000 255 000 255 000 000 000 000
0024(P054/B176): 21/04/19 17:17:05 EV 254 003 000 000 002 004 000 000
0025(P054/B160): 21/04/19 17:16:11 EV 254 002 000 000 000 000 000 000
0026(P054/B144): 21/04/19 16:35:16 ER 005 001 000 004 000 000 000 000
0027(P054/B128): 21/04/19 16:24:07 ER 005 001 000 004 000 000 000 000
0028(P054/B112): 21/04/19 14:40:59 ER 005 001 000 004 000 000 000 000
0029(P054/B096): 21/04/19 13:57:05 ER 005 001 000 004 000 000 000 000
0030(P054/B080): 21/04/19 13:53:07 ER 006 001 011 083 011 083 000 000
0031(P054/B064): 21/04/19 12:48:39 ER 006 001 011 083 011 083 000 000
OK



register list

This instruction will list all processor registers and the present values. This is for debug purposes
Returns
---Register Values---
 00 00000 00000 00000 00087 00064 00658 16385 00128 00514 00000 00000 00000
 01 00003 00000 00000 00000 00000 00000 32776 32776 32776 32776 01296 01040
 02 01040 01296 00131 00272 15376 00960 08252 00000 00195 26115 13088 12290
 03 00390 00129 00129 00129 16400 00000 00004 00000 00064 00000 00000 00000
 04 00064 00000 00000 00000 00000 06280 49154 00008 00004 00000 00780 00000
 05 00000 00000 05188 05188 25668 01089 17476 17476 17476 04676 17476 17476
 06 17476 16452 17476 17476 17476 01028 17472 16448 00064 05952 16384 17429
 07 17408 17476 17408 17472 17472 01092 00271 32768 32768 00000 00000 00000
 08 00000 00000 00000 00000 36896 36896 00016 00016 00000 32768 00000 00000
 09 00046 00000 00010 00010 00000 00000 00000 00000 00006 00006
OK



state machine list

This instruction will list all main state machines with the last, the minimum and maximum execution time
Returns
 #----Last----Min-----Max------Description------------------
00 03 00004ms 00002ms 01402ms  UART1 receive
01 00 00000ms 00000ms 00000ms  UART2 receive
02 00 00000ms 00000ms 00000ms  UART3 receive
03 01 00000ms 00000ms 00000ms  UART4 receive
04 00 00061ms 00001ms 00238ms  I2C1
05 00 00002ms 00001ms 00052ms  I2C2
06 02 00205ms 00202ms 00258ms  Update Time/Date
07 00 00001ms 00001ms 00016ms  Immediate Queue
08 00 00002ms 00002ms 00006ms  Timer 100ms
09 00 00001ms 00001ms 00005ms  Timer 1 second
10 00 00005ms 00001ms 00005ms  Timer 1 minute
11 00 15444ms 15444ms 15444ms  Perform eeprom activate
12 01 00387ms 00116ms 00822ms  CLI print text
13 00 00000ms 00000ms 00000ms  CLI action execute
14 05 00001ms 00001ms 00016ms  Scan modules over RS485 network
15 00 00035ms 00001ms 00063ms  RS485 modules health status check
16 00 00001ms 00001ms 00003ms  Check Error, print, store in FRAM
17 00 00001ms 00001ms 00024ms  Check input queue and actions
18 00 00000ms 00000ms 00000ms  Check input delay queue and actions
19 00 01391ms 01391ms 01391ms  CLI print registers
20 00 00002ms 00002ms 00010ms  Check CAN1 RX queue
21 00 00013ms 00001ms 00069ms  Check CAN1 TX queue
22 00 00000ms 00000ms 00000ms  Check hardware health
23 00 00000ms 00000ms 00000ms  Check leds
24 00 00001ms 00001ms 00084ms  Check internal outputs
25 00 00002ms 00001ms 00009ms  Check internal inputs
26 00 00000ms 00000ms 00000ms  Execute Group Action
27 00 00002ms 00001ms 00004ms  Execute list of actions every minute



module discover start

This instruction will start the discovery mode of the RS485 Bus for the non-energy modules. When this instruction is executed, the normal function of the bus is stopped to be able to add new modules.
Returns
OK

Example:

Instruction
module discover start
Returns
OK

module discover stop

This instruction will stop the discovery mode of the RS485 Bus for the non-energy modules
Returns
OK

Example:

Instruction
module discover stop
Returns
OK

startup group read

A group Action can be defined that needs to be executed when the system starts. This instruction will read the group nr (0-254) that will be executed at startup.
Returns
group nr
OK

Example:

Instruction
startup group read
Returns
5
OK

startup group write [group nr]

A group Action can be defined that needs to be executed when the system starts. This instruction will write the group nr (0-254) that will be executed at startup.
[group nr]
Indicates which group nr that needs to be executed at startup.
Returns
OK

Example:

Instruction
startup group write 5
Returns
OK

queue list

This instruction will print on console the immediate buffer queue. This instruction can also be used to see what's been happening recently and see the instruction that have just been executed.
Returns
Full list of the immediate queue including values of all pointers used
OK

Example:

Instruction
queue list
Returns
Queue list
OK

Time & Date instructions

days group follow read

A group Action can be defined that needs to be executed when the date (day) changes. This instruction will read the group nr (0-254) that will be executed at day change.
Returns
group nr
OK

Example:

Instruction
days group follow read
Returns
5
OK

days group follow write [group nr]

A group Action can be defined that needs to be executed when the date (day) changes. This instruction will write the group nr (0-254) that will be executed at day change.
[group nr]
Indicates which group nr that needs to be executed at day change.
Returns
OK

Example:

Instruction
days group follow write 6
Returns
OK


hours group follow read

A group Action can be defined that needs to be executed when the time (hour) changes. This instruction will read the group nr (0-254) that will be executed at hour change.
Returns
group nr
OK

Example:

Instruction
hours group follow read
Returns
5
OK

hours group follow write [group nr]

A group Action can be defined that needs to be executed when the time (hour) changes. This instruction will write the group nr (0-254) that will be executed at hour change.
[group nr]
Indicates which group nr that needs to be executed at hour change.
Returns
OK

Example:

Instruction
hours group follow write 6
Returns
OK

minutes group follow read

A group Action can be defined that needs to be executed when the time (minutes) changes. This instruction will read the group nr (0-254) that will be executed at minute change.
Returns
group nr
OK

Example:

Instruction
minutes group follow read
Returns
5
OK

minutes group follow write [group nr]

A group Action can be defined that needs to be executed when the time (minutes) changes. This instruction will write the group nr (0-254) that will be executed at minute change.
[group nr]
Indicates which group nr that needs to be executed at minute change.
Returns
OK

Example:

Instruction
minutes group follow write 6
Returns
OK

time read

This instruction will read the time of the internal Real Time Clock.
Returns
The time
OK

Example:

Instruction
time read
Returns
20:13:19
OK

time write [hours][minutes][seconds]

This instruction will write the time in the Real Time Chip
[hours]
Value 0 to 23
[minutes]
Value 0 to 59
[seconds]
Value 0 to 99
Returns
OK

Example:

Instruction
time write 19 25 57
Returns
OK

date read

This instruction will read the date of the internal Real Time Clock.
Returns
The date
OK

Example:

Instruction
date read
Returns
2 25-12-18
OK

date write [day of the week][day][month][year]

This instruction will write the date in the Real Time Chip
[day of the week]
Value 1 to 7 represents Monday to Sunday.
[day]
Value 1 to 31, day of the month.
[month]
Value 1 to 12
[year]
Value 0 to 99
Returns
OK

Example:

Instruction
date write 2 25 12 18
Returns
OK

Basic Action instructions

basic action debug off

This instruction will disable the debug function for Basic Actions. When the debug function is activate, every time a Basic Action is executed, the Basic Action Number and Basic Action explanation will be printed on the console.
Returns
OK

Example: Deactivate Basic Action debug mode

Instruction
basic action debug off
Returns
OK

basic action debug on

This instruction will enable the debug function for Basic Actions. When the debug function is activate, every time a Basic Action is executed, the Basic Action Number and Basic Action explanation will be printed on the console.
Returns
OK

Example: Activate Basic Action debug mode

Instruction
basic action debug on
Returns
OK

basic action activate [Type] [Action] [Device Nr] [Extra parameter]

This instruction will execute a Basic Action. For a full list of basic actions, see Action Types AIO
[Type]
This is the Type of a Basic Action, see [Action Types AIO]].
[Action]
This is the Action of a Basic Action, see [Action Types AIO]].
[Device Nr]
This is the Device Nr of a Basic Action, see [Action Types AIO]].
[Extra Parameter]
This is the Extra Parameter of a Basic Action, see [Action Types AIO]].
Returns
OK

Example: Toggle output 12

Instruction
basic action activate 0 16 12 0
Returns
OK

basic action activate [Type] [Action] [Device Nr.MSB] [Device Nr.LSB] [Extra parameter.MSB] [Extra parameter.LSB]

This instruction will execute a Basic Action. Since Device Nr and Extra Parameter contains word value, it's sometime needed for ease of use to be able to use the MSB (Most Significant Byte) and LSB (Least Significant Byte) values. For a full list of basic actions, see Action Types AIO
[Type]
This is the Type of a Basic Action, see [Action Types AIO]].
[Action]
This is the Action of a Basic Action, see [Action Types AIO]].
[Device Nr.MSB]
This is the MSB Device Nr of a Basic Action, see [Action Types AIO]].
[Device Nr.LSB]
This is the LSB Device Nr of a Basic Action, see [Action Types AIO]].
[Extra Parameter.MSB]
This is the MSB Extra Parameter of a Basic Action, see [Action Types AIO]].
[Extra Parameter.LSB]
This is the LSB Extra Parameter of a Basic Action, see [Action Types AIO]].
Returns
OK

Example: Program in the uCAN (ID 26 88 120) for Sensor0 the sensor nr 15

Instruction
basic action activate 20 18 26 88 120 15
Returns
OK

Eeprom & Fram instructions

eeprom erase [start page][end page][security code]

This instruction will erase 1 or more pages of the eeprom. With the start and end page, you can indicate which pages must be erased
[start page]
Indicates the start page (0-511) of the pages that must be erased.
[end page]
Indicates the end page (0-511) of the pages that must be erased.
[security code]
Security code "28883" must be used to be able to activate the erase function
Returns
delete progress information
OK

Example: Delete eeprom page 256

Instruction
eeprom erase 256 256 28883
Returns
OK

Important: It's NOT possible to undo this instruction. Once the erase is executed, the data is erased and can't be retrieved anymore.


eeprom read [page][byte][Opt: Nr of byte]

This instruction will read 1 of more bytes from eeprom. Maximum 30 bytes can be read
[page]
This is the page (0-511) of the eeprom to be read.
[byte]
This is the byte nr to be read (or the start byte when more then 1 byte is requested)
[Opt
Nr of byte]
This optional parameter (2-30) can be added when more then 1 byte must be read
Returns
eeprom read bytes
OK

Example: Read from page 0 start at byte 2 the next 10 bytes

Instruction
eeprom read 0 2 20
Returns
0 2 -> 5 ( )
0 3 -> 1 ( )
0 4 -> 255 ( )
0 5 -> 13 ( )
0 6 -> 7 ( )
0 7 -> 4 ( )
0 8 -> 255 ( )
0 9 -> 255 ( )
0 10 -> 255 ( )
0 11 -> 255 ( )
0 12 -> 255 ( )
0 13 -> 255 ( )
0 14 -> 255 ( )
0 15 -> 255 ( )
0 16 -> 255 ( )
0 17 -> 255 ( )
0 18 -> 255 ( )
0 19 -> 255 ( )
0 20 -> 255 ( )
OK

eeprom read [Id2][Id1][Id0][location]

CLI instruction "eeprom read" also supports reading the eeprom of a uCAN slave modules. This function requires uCAN Firmware Version 6.0.21 or higher. Instead of 2 or 3 arguments being used (for internal eeprom read), 4 arguments are used to read the eeprom of a uCAN.
eeprom read Id2 ID1 ID0 location
[Id2..Id0]
This is the 3 bytes ID (without CAN Bus number) of the uCAN
[location]
Indicates the eeprom memory read location (0-1023) of the uCAN
Returns
Read Byte
OK

Example: Read the value of eeprom location 29 of the uCAN with ID 91.59.166

el
--- Total Uptime: 000216 Hours, Last Startup: 08:02:09 02/09/21   ---
--- Module Type: BRAIN, RS485 mode: 0, Board: 27'C  --.--V --.--A ---
--- PWR RS485/CAN: 1/1, CANTERM: 1, BB Debug: 255, Fw: 1.0.109       ---
-------Output------------ID---------Err-------Status--------Pwr---
 00 (l I 000->007) 108.000.000.000 00000   GOOD       (000)  1
-------Input-------------ID---------Err-------Status--------Pwr---
 00 (i I 000->007) 105.000.000.000 00000   GOOD       (000)  1
 01 (b C 008->015) 098.000.000.001 00000   GOOD       (000)  1
 02 (b C 016->023) 098.000.000.002 00000   GOOD       (000)  1
 03 (b C 024->031) 098.000.000.003 00000   GOOD       (000)  1
 04 (b C 032->039) 098.000.000.004 00000   GOOD       (000)  1
-------Sensor------------ID---------Err-------Status--------Pwr---
 00 (s C 000->007) 115.000.000.000 00000   GOOD       (000)  1
-------Micro CAN---------ID---------Err-------Status--------Pwr---
 00 (m C 000->000) 100.069.253.220 00001   GOOD       (000)  1
 01 (m C 001->001) 100.052.078.228 00000   GOOD       (000)  1
 02 (m C 002->002) 100.135.225.126 00000   GOOD       (000)  1
 03 (m C 003->003) 100.091.059.166 00000   GOOD       (000)  1
OK
eeprom read 91 59 166 29
15
OK

eeprom write [page][byte][data byte]

This instruction will write 1 byte in eeprom.
[page]
Indicates the eeprom page (0-511) where the byte will be written.
[byte]
Indicates the eeprom byte (0-255) where the byte will be written.
[data byte]
This is the byte that will be written
Returns
OK

Example: Write at page 10 byte 200 value 33

Instruction
eeprom write 10 200 33
Returns
OK

Note: Your full configuration is stored in eeprom. Programming bytes in eeprom can make your system non-functional so please be careful using this instruction unless you know what you're doing.


eeprom write [Id2][Id1][Id0][location][data_byte]

CLI instruction "eeprom write" also supports writing the eeprom of a uCAN slave modules. This function requires uCAN Firmware Version 6.0.21 or higher. Instead of 3 arguments used (for internal eeprom read), 5 arguments are used to read the eeprom of a uCAN.
eeprom write Id2 ID1 ID0 location data_byte
[Id2..Id0]
This is the 3 bytes ID (without CAN Bus number) of the uCAN
[location]
Indicates the eeprom memory location (0-1023) of the uCAN where the byte will be written.
[data byte]
This is the byte (0-255) that will be written in the eeprom of the uCAN
Returns
Written Byte
OK

Example: Write a value (20) in eeprom location 29 of the eeprom of the uCAN with ID 91.59.166

el
--- Total Uptime: 000216 Hours, Last Startup: 08:02:09 02/09/21   ---
--- Module Type: BRAIN, RS485 mode: 0, Board: 27'C  --.--V --.--A ---
--- PWR RS485/CAN: 1/1, CANTERM: 1, BB Debug: 255, Fw: 1.0.109       ---
-------Output------------ID---------Err-------Status--------Pwr---
 00 (l I 000->007) 108.000.000.000 00000   GOOD       (000)  1
-------Input-------------ID---------Err-------Status--------Pwr---
 00 (i I 000->007) 105.000.000.000 00000   GOOD       (000)  1
 01 (b C 008->015) 098.000.000.001 00000   GOOD       (000)  1
 02 (b C 016->023) 098.000.000.002 00000   GOOD       (000)  1
 03 (b C 024->031) 098.000.000.003 00000   GOOD       (000)  1
 04 (b C 032->039) 098.000.000.004 00000   GOOD       (000)  1
-------Sensor------------ID---------Err-------Status--------Pwr---
 00 (s C 000->007) 115.000.000.000 00000   GOOD       (000)  1
-------Micro CAN---------ID---------Err-------Status--------Pwr---
 00 (m C 000->000) 100.069.253.220 00001   GOOD       (000)  1
 01 (m C 001->001) 100.052.078.228 00000   GOOD       (000)  1
 02 (m C 002->002) 100.135.225.126 00000   GOOD       (000)  1
 03 (m C 003->003) 100.091.059.166 00000   GOOD       (000)  1
OK
eeprom write 91 59 166 29 20
20
OK
eeprom read 91 59 166 29
20
OK

eeprom search [start page][stop page][data byte0][Opt: data byte1][Opt: data byte2][Opt: data byte3][Opt: data byte4][Opt: data byte5]

This instruction will read search for data bytes in eeprom. The data bytes will indicate which bytes are being searched. The start and end page defines in which pages of the eeprom the search instruction has to be performed. The eeprom has 512 pages (0-511), each page contains 256 bytes of data. You can select 1 or more (up to 6) data bytes to be searched.
[start page]
This is the start page (0-511) of the eeprom where the search will start.
[stop page]
This is the stop page (0-511) of the eeprom where the search will stop.
[data byte0..5]
This is the data byte that will be searched in eeprom
Returns
eeprom search result
OK

Example: (search page 0 to 10 in eeprom to find the location where 7 or 13 is written)

Instruction
eeprom search 0 10 7 13
Returns
0 5 -> 13
0 6 -> 7
OK

As you can see, on page 0 Byte 5 and 6, the system did found results.


fram erase [start page][end page][security code]

This instruction will erase 1 or more pages of the FRAM. With the start and end page, you can indicate which pages must be erased
[start page]
Indicates the start page (0-127) of the pages that must be erased.
[end page]
Indicates the end page (0-127) of the pages that must be erased.
[security code]
Security code "28883" must be used to be able to activate the erase function
Returns
delete progress information
OK

Example: Delete fram page 30 till 35 (including 35)

Instruction
fram erase 30 35 28883
Returns
OK

Important: It's NOT possible to undo this instruction. Once the erase is executed, the data is erased and can't be retrieved anymore.


fram read [page][byte][Opt: Nr of byte]

This instruction will read 1 of more bytes from FRAM. Maximum 30 bytes can be read
[page]
This is the page (0-127) of the FRAM to be read.
[byte]
This is the byte nr to be read (or the start byte when more then 1 byte is requested)
[Opt
Nr of byte]
This optional parameter (2-30) can be added when more then 1 byte must be read
Returns
Fram read bytes
OK

Example: Read from page 0 start at byte 2 the next 10 bytes

Instruction
fram read 0 2 20
Returns
0 2 -> 5 ( )
0 3 -> 1 ( )
0 4 -> 255 ( )
0 5 -> 13 ( )
0 6 -> 7 ( )
0 7 -> 4 ( )
0 8 -> 255 ( )
0 9 -> 255 ( )
0 10 -> 255 ( )
0 11 -> 255 ( )
0 12 -> 255 ( )
0 13 -> 255 ( )
0 14 -> 255 ( )
0 15 -> 255 ( )
0 16 -> 255 ( )
0 17 -> 255 ( )
0 18 -> 255 ( )
0 19 -> 255 ( )
0 20 -> 255 ( )
OK

fram write [page][byte][data byte]

This instruction will write 1 byte in FRAM.
[page]
Indicates the FRAM page (1-127) where the byte will be written.
[byte]
Indicates the FRAM byte (0-255) where the byte will be written.
[data byte]
This is the byte that will be written
Returns
OK

Example: Write at page 10 byte 200 value 33

Instruction
fram write 10 200 33
Returns
OK

Note: Please note that page 0 is protected and can't be written by the user.


Input instructions

input action read [input nr]

This instruction will read the BA's that are linked to an input
Following input actions with associated BA can be linked to an input:
  • Action 0: Press Action
  • Action 1: Release Action
  • Action 2: 1 Sec Press
  • Action 3: 2 Sec Press
  • Action 4: Double Press
Returns
----------------Act--Inp-Cnf-Typ-Act---x--(MSB.LSB)---y--(MSB.LSB)-------BA Description----
0- PRESS : Yes 001 0 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
1- RELEASE : Yes 001 1 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
2- 1SEC PRESS : No 001 2 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
3- 2SEC PRESS : No 001 3 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
4-DOUBLE PRESS: No 001 4 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
OK

input action write [input nr] [input action] [BA Type] [BA Action] [BA Device Nr] [BA Extra parameter]

This instruction will program for an input and for a certain input action the associated BA
Input Nr: This is the input number to be programmed
Input action: Following input actions can be used
  • 0: Press Action
  • 1: Release Action
  • 2: 1 Sec Press
  • 3: 2 Sec Press
  • 4: Double Press
BA type, BA action, BA device etc: This is the BA to be executed when an input action occurs, see Action Types AIO
Returns
OK

input action write [input nr] [input action] [BA Type] [BA Action] [BA Device Nr.MSB] [BA Device Nr.LSB] [BA Extra parameter.MSB] [BA Extra parameter.LSB]

This instruction will program for an input and for a certain input action the associated BA. This instruction is equal then the above instruction excepts that BA Device Nr and BA Extra Parameter are split in a MSB byte and a LSB byte
Input Nr: This is the input number to be programmed
Input action: Following input actions can be used
  • 0: Press Action
  • 1: Release Action
  • 2: 1 Sec Press
  • 3: 2 Sec Press
  • 4: Double Press
BA type, BA action, BA device etc: This is the BA to be executed when an input action occurs, see Action Types AIO
Returns
OK

input debug off

This instruction will disable the CLI console debug function for inputs. When an input is pressed or released, a debug message will appear when this debug function is enabled
Returns
OK

input debug on

This instruction will enable the CLI console debug function for inputs. When an input is pressed or released, a debug message will appear when this debug function is enabled
Returns
OK

input link read [input nr]

This instruction will read, for an input, which output or action is linked to it.
[input nr]
Indicates which input (0-631) that the link has to be read.
Returns
output nr or link
OK

Example:

Instruction
input link read 15
Returns
12
OK

input link write [input nr][output link nr]

This instruction will write, for an input (0-631), which output (0-639) or action is linked to it.
[input nr]
Indicates which input that the link has to be written.
Returns
OK

Example: Link input 15 with output 12

Instruction
input link write 15 12
Returns
OK

input list

This instruction will display the list of inputs, the status (0-> release state, 1-> press state), the link (is an action configured or an output linked) and the name of each input
Returns
The input list

input release [input nr]

Switch input to release state for virtual modules.
[input nr]
Indicates which input that needs to be put in release state, a maximum of 632 (0 - 631) inputs can be used.
Returns
OK

Example:

Instruction
input release 28
Returns
OK

input press [input nr]

Switch input to press state for virtual modules.
[input nr]
Indicates which input that needs to be put in press state, a maximum of 632 (0 - 631) inputs can be used.
Returns
OK

Example:

Instruction
input press 28
Returns
OK

input name write [input nr][input name]

Write the name of an input, max 16 characters.
[input nr]
Indicates which input (0-631) the name has to be written.
[input name]
the ascii name of the input (maximum 16 characters).
Returns
OK

Example:

Instruction
input name write 28 Bedroom parents
Returns
OK

input name read [input nr]

Read the name of an input
[input nr]
Indicates which input (0-631) the name has to be displayed.
Returns
Input Name
OK

Example:

Instruction
input name read 28
Returns
Bedroom Parents
OK

input number modules read

Read the number of input modules that are programmed and active
Returns
Number Of Input Modules
OK

Example:

Instruction
input number modules read
Returns
6
OK

pulse counter read [input nr]

Read the pulse counter number of an input
[input nr]
Indicates which input (0-631) the pulse counter number has to be displayed.
Returns
pulse counter number
OK

Example:

Instruction
pulse counter read 3
Returns
2546678
OK

input number modules write [number of input modules]

Writes the number of input modules that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of input modules]
Indicates the number of input modules that are active and programmed.
Returns
OK

Example:

Instruction
input number modules write 7
Returns
OK

Output instructions

output all off

aoff

Switch all outputs off.
Returns
OK

Example:

Instruction
output all off will switch all outputs OFF.
Returns
OK
Instruction
oaoff will switch all outputs OFF.
Returns
OK

output status on

oso

Returns the list of all outputs that are ON.
Returns
List of outputs that are ON

output list

This instruction will display the list of outputs, the status (On or Off), the dim value, the configured timer value, the timer type (Off, , 100ms timer, 1s timer or 1m timer) and the name of each output
Returns
The output list

output on [output nr] [dimmer value*] [timer value*]

on [output nr] [dimmer value*] [timer value*]

Switch ON an output. * are optional values
[output nr]
Indicates which output that needs to be switched ON, a maximum of 640 (0 - 639) outputs can be used.
[dimmer value*]
Optional parameter to set the dimmer value (0-255)
[timer value*]
Optional parameter to set the timer value (0-65535s)
Returns
OK

Examples:

Instruction
output on 127
will switch ON output 127.
Returns
OK
Instruction
output on 127 56
will switch ON output 127 with dimmer value 56.
Returns
OK
Instruction
output on 127 56 3600
will switch ON output 127 with dimmer value 56 for 3600 seconds.
Returns
OK
Instruction
oon 127 56 3600
will switch ON output 127 with dimmer value 56 for 3600 seconds.
Returns
OK

output off [output nr]

off [output nr]

Switch OFF an output.
[output nr]
Indicates which output that needs to be switched OFF, a maximum of 640 (0 - 639) outputs can be used.
Returns
OK

Example:

Instruction
output off 127 will switch OFF output 127.
Returns
OK
Instruction
ooff 127 will switch OFF output 127.
Returns
OK

output name write [output nr][output name]

Write the name of an output, max 16 characters.
[output nr]
Indicates which output (0-639) the name has to be written.
[output name]
the ascii name of the output (maximum 16 characters).
Returns
OK

Example:

Instruction
output name write 24 Bedroom 4
Returns
OK

output name read [output nr]

Read the name of an output
[output nr]
Indicates which output (0-639) the name has to be displayed.
Returns
output Name
OK

Example:

Instruction
output name read 24
Returns
Bedroom 4
OK

output number modules read

Read the number of output modules that are programmed and active
Returns
Number Of Output Modules
OK

Example:

Instruction
output number modules read
Returns
6
OK

output number modules write [number of output modules]

Writes the number of output modules that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of output modules]
Indicates the number of output modules that are active and programmed.
Returns
OK

Example:

Instruction
output number modules write 7
Returns
OK

output group follow read [Output Nr]

An output activation (switch on, off or change dimmer value) can be programmed to trigger a group action. With this instruction, you can read, for Output Nr, when an output activation occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to output 35

Instruction
output group follow read 35
Returns 
10
OK

output group follow write [Output Nr] [Group Nr]

An output activation (switch on, off or change dimmer value) can be programmed to trigger a group action. With this instruction, you can write, for Output Nr, when an output activation occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 10 must be linked to output 35

Instruction
output group follow write 35 10
Returns 
OK

output group follow list

An output activation (switch on, off or change dimmer value) can be programmed to trigger a group action. With this instruction, you can list, for all outputs in use, which Group Actions are linked.
Returns
List
OK


Instruction
output group follow list
Returns
list 
OK

 


output all off group follow read

An output all off instruction (like BA????) can be programmed to trigger a group action. With this instruction, you can read which Group Action will be executed.
Returns
Group Nr
OK 

Example:

Instruction
output all off group follow read
Returns 
30
OK

Remark:

  • When an output all off instruction is executed, only the all off group nr will be executed and not all the individual output group follow actions.

output all off group follow write [Group Nr]

An output all off instruction (like BA????) can be programmed to trigger a group action. With this instruction, you can write which Group Action will be executed.
Returns
OK 

Example:

Instruction
output all off group follow write 30
Returns 
OK

Remark:

  • When an output all off instruction is executed, only the all off group nr will be executed and not all the individual output group follow actions.

Sensor instructions

sensor extra list

This instruction will display the list of Extra Sensors. Extra Sensors (max 64, 0-63) can be freely used for example to store the wind direction, windspeed etc of a weather station, power measurement and others. Extra Sensors can also trigger group actions and can be used with IF THEN instructions. The values are being set by using BA instructions. Sensor value used are 16bits.
Returns
The sensor extra list

sensor extra name write [sensor nr][sensor name]

Write the name of an extra sensor, max 16 characters.
[sensor nr]
Indicates which sensor (0-63) the name has to be written.
[sensor name]
the ascii name of the sensor (maximum 16 characters).
Returns
OK

Example:

Instruction
sensor extra name write 15 Windspeed
Returns
OK

sensor extra name read [sensor nr]

Read the name of an extra sensor
[sensor nr]
Indicates which sensor (0-63) the name has to be displayed.
Returns
Sensor Name
OK

Example:

Instruction
sensor extra name read 15
Returns
Windspeed
OK

sensor extra group follow read [Sensor Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can read, for Sensor extra Nr (0-63), when a value change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to sensor extra 30

Instruction
sensor extra group follow read 30
Returns 
20
OK

sensor extra group follow write [Sensor Nr] [Group Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can write, for Sensor Extra Nr (0-63), when a value change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 20 must be linked to sensor extra 30

Instruction
sensor extra group follow write 30 20
Returns 
OK

sensor extra group follow list

A sensor can trigger a group action when one of their values changes. With this instruction, you can list, for all Extra Sensors, which Group Actions are linked.
Returns
List
OK
Instruction
sensor extra group follow list
Returns
list 
OK

sensor list

This instruction will display the list of sensors, the temperature, the humidity, the brightness and the name of each sensor
Returns
The sensor list

sensor name write [sensor nr][sensor name]

Write the name of a sensor, max 16 characters.
[sensor nr]
Indicates which sensor (0-127) the name has to be written.
[sensor name]
the ascii name of the sensor (maximum 16 characters).
Returns
OK

Example:

Instruction
sensor name write 12 Bedroom 1
Returns
OK

sensor name read [sensor nr]

Read the name of a sensor
[sensor nr]
Indicates which sensor (0-127) the name has to be displayed.
Returns
Sensor Name
OK

Example:

Instruction
sensor name read 12
Returns
Bedroom 1
OK

sensor number modules read

Read the number of sensor modules that are programmed and active
Returns
Number Of Sensor Modules
OK

Example:

Instruction
sensor number modules read
Returns
6
OK

sensor number modules write [number of sensor modules]

Writes the number of sensor modules that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of sensor modules]
Indicates the number of sensor modules that are active and programmed.
Returns
OK

Example:

Instruction
sensor number modules write 7
Returns
OK

temperature group follow read [Sensor Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can read, for Sensor Nr (0-127), when a temperature change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to sensor 17

Instruction
temperature group follow read 17
Returns 
3
OK

temperature group follow write [Sensor Nr] [Group Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can write, for Sensor Nr (0-127), when a temperature change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 3 must be linked to sensor 17

Instruction
temperature group follow write 17 3
Returns 
OK

temperature group follow list

A sensor can trigger a group action when one of their values changes. With this instruction, you can list, for all sensor in use, which Group Actions are linked.
Returns
List
OK


Instruction
temperature group follow list
Returns
list 
OK

humidity group follow read [Sensor Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can read, for Sensor Nr (0-127), when a humidity change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to sensor 17

Instruction
humidity group follow read 17
Returns 
4
OK

humidity group follow write [Sensor Nr] [Group Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can write, for Sensor Nr (0-127), when a humidity change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 4 must be linked to sensor 17

Instruction
humidity group follow write 17 4
Returns 
OK

humidity group follow list

A sensor can trigger a group action when one of their values changes. With this instruction, you can list, for all sensor in use, which Group Actions are linked.
Returns
List
OK


Instruction
humidity group follow list
Returns
list 
OK

brightness group follow read [Sensor Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can read, for Sensor Nr (0-127), when a brightness change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to sensor 17

Instruction
brightness group follow read 17
Returns 
5
OK

brightness group follow write [Sensor Nr] [Group Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can write, for Sensor Nr (0-127), when a brightness change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 5 must be linked to sensor 17

Instruction
brightness group follow write 17 5
Returns 
OK

brightness group follow list

A sensor can trigger a group action when one of their values changes. With this instruction, you can list, for all sensor in use, which Group Actions are linked.
Returns
List
OK
Instruction
brightness group follow list
Returns
list 
OK

airquality group follow read [Sensor Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can read, for Sensor Nr (0-127), when an air quality (CO2) change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to sensor 17

Instruction
airquality group follow read 17
Returns 
6
OK

airquality group follow write [Sensor Nr] [Group Nr]

A sensor can trigger a group action when one of their values changes. With this instruction, you can write, for Sensor Nr (0-127), when an air quality (CO2) change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 6 must be linked to sensor 17

Instruction
airquality group follow write 17 6
Returns 
OK

airquality group follow list

A sensor can trigger a group action when one of their values changes. With this instruction, you can list, for all sensor in use, which Group Actions are linked.
Returns
List
OK
Instruction
airquality group follow list
Returns
list 
OK

CAN module instructions

can eeprom list

This instruction will display the list of all the CAN modules that has been programmed in the master. Following information will be returned:
* Nr: Line Nr and order in which the module has been programmed
* ID: The unique ID (ID2,ID1&ID0) of the programmed micro CAN
* Inp.link0..5: This will indicate, for the 6 inputs a micro CAN has, the link to the system input. The value between brackets is the internal input CAN numbering
* Tem.link0..1: This will indicate, for the 2 sensors a micro CAN can have, the link to the system sensor number. The value between brackets is the internal sensor CAN numbering
When 255 is used for input or sensor link means that the sensor is not in use or the input is not configured
Returns
Nr-ID2.ID1.ID0--Inp.link0-Inp.link1-Inp.link2-Inp.link3-Inp.link4-Inp.link5-Tem.link0-Tem.link1
00 140.162.190  024(000)  255(255)  255(255)  255(255)  255(255)  255(255)  000(000)  255(255)
01 062.063.159  255(255)  255(255)  255(255)  255(255)  255(255)  025(001)  001(001)  255(255)
02 075.144.045  026(002)  255(255)  255(255)  255(255)  255(255)  255(255)  255(255)  002(002)
03 140.151.125  255(255)  027(003)  255(255)  255(255)  028(004)  255(255)  003(003)  004(004)

can ping list

This instruction will ping all the programmed micro CAN modules and list the response of all the CAN modules including the configuration that has been saved in the eeprom of those modules. Following information will be returned:
* Nr: Line Nr and order in which the module has been programmed
* ID: The unique ID (ID2,ID1&ID0) of the programmed micro CAN. This information is retrieved from the eeprom of the master
* Inp.link0..5: This is the response of the micro CAN that indicates, for the 6 inputs a micro CAN has, the link to the system input. The value between brackets is the internal input CAN numbering
* Tem.link0..1: This is the response of the micro CAN that indicates, for the 2 sensors a micro CAN can have, the link to the system sensor number. The value between brackets is the internal sensor CAN numbering
* Type: This will indicate the type of sensor that is connected:
** 0: Sensor of the DS1820 family is connected on the first output
** 1: Sensor of the DS1820 family is connected on the second output
** 2: 2 sensors of the DS1820 family are connected (on both outputs)
** 3: Honeywell Temp/humidity Sensor is connected
** 4: TSL2561 LUX sensor is connected
** 5: Honeywell Temp/humidity Sensor & TSL2561 LUX sensor are connected
** 255: No sensors are currently connected
* Firmware: This gives the firmware version that is loaded on the micro CAN module
* Delay: This value will indicate the delay between the message that has been sent to the micro CAN module and the 6 received messages from the micro CAN with the configuration.
When 255 is used for input or sensor link means that the sensor is not in use or the input is not configured. When NA is returned, the sensor is not responding.
Returns
Nr-ID2.ID1.ID0--Inp.link0-Inp.link1-Inp.link2-Inp.link3-Inp.link4-Inp.link5-Tem.link0-Tem.link1-Type-Firmware-delay--
00 140.162.190  024(000)  255(255)  255(255)  255(255)  255(255)  255(255)  000(000)  255(255)  004  F2.0.10  010ms
01 062.063.159  255(255)  255(255)  255(255)  255(255)  255(255)  025(001)  001(001)  255(255)  000  F2.0.10  011ms
02 075.144.045  026(002)  255(255)  255(255)  255(255)  255(255)  255(255)  255(255)  002(002)  001  F2.0.10  023ms
03 140.151.125  255(255)  027(003)  255(255)  255(255)  028(004)  255(255)  003(003)  004(004)  002  F2.0.10  065ms



can config delete

This instruction will perform a factory reset of the CAN config in the master as well as in the micro CAN slaves. After this instruction, the micro CAN config is deleted from the eeprom of the master and the micro CAN slaves.
Returns
can config delete
OK

Example:

Instruction
can config delete
Returns
OK

can module number read

Read the number of CAN modules that are programmed and active
Returns
Number Of CAN Modules
OK

Example:

Instruction
can module number read
Returns
6
OK

can module number write [number of CAN modules]

Writes the number of CAN modules that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of CAN modules]
Indicates the number of CAN modules that are active and programmed.
Returns
OK

Example:

Instruction
can module number write 7
Returns
OK

can input number read

Read the number of CAN inputs that are programmed and active
Returns
Number Of CAN inputs
OK

Example:

Instruction
can input number read
Returns
12
OK

can input number write [number of CAN inputs]

Writes the number of CAN inputs that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of CAN inputs]
Indicates the number of CAN inputs that are active and programmed.
Returns
OK

Example:

Instruction
can input number write 13
Returns
OK

can sensor number read

Read the number of CAN sensors that are programmed and active
Returns
Number Of CAN sensors
OK

Example:

Instruction
can sensor number read
Returns
4
OK

can sensor number write [number of CAN sensors]

Writes the number of CAN sensors that are programmed and active. This instruction will, after the write is performed, activate the instruction eeprom activate so all values from eeprom are read and copied in RAM
[number of CAN inputs]
Indicates the number of CAN sensors that are active and programmed.
Returns
OK

Example:

Instruction
can sensor number write 6
Returns
OK

GROUP instructions

A group action is composed of multiple actions that can be executed. Each group action can call other group actions. Group actions can be nested up to 16 levels deep, if you go deeper, those group actions will be ignored. IF THEN ENDIF instructions used inside a group can be nested as well up to 16 levels deep. The most easy way, when nested group actions including IF THEN ENDIF instructions are used is to use the CLI instruction "group simulate" which gives you a CLI representation of the result of a group action with the included nested group actions (if any).

A group action doesn't have a fixed length, the length and thus the number of group action can be defined at creation by defining the start and end BA. In total, 4200 (BA0 to BA4199) actions can be placed in 255 (0-254) different groups. Each group have a start address and end address.

Start address and end addresses can be changed even when a group has been programmed.

How does group actions work: A normal group action with format 19 0 x y will be added to the queue of immediate action. This queue will process this group action immediately. A group action with format 19 1 x y will not be executed but only simulated and the result will be printed in the CLI screen which is easy to troubleshoot complex group actions.

Group actions can also be delayed in time and only be executed when the defined time trigger has expired (expired seconds or day/hour/minute reached). For example, delayed group action BA 18 0 15 240 will execute BA19 0 15 0 after 240 seconds.

It’s important to note that delayed group actions will be put in the delay queue until the time trigger expires, then this delayed group action will be deleted from the delayed group queue (after executing the related group action). When for example a group action must be executed every 120 seconds, the group delay BA instruction (BA18) that adds the group action to be executed after 120 seconds must be added in the original group action.

When a time trigger occurred and the group action has been executed, the delayed group action is removed from the queue so if you want an action to be executed on a certain hour every day of the week, the delayed group action must be added on the delayed queue after every execution in the group action. The easiest way to do this is to create a group action with a list of instructions including the instruction to put this group on the delayed group. To get the delayed action in the queue for the first time, you can use the startup group action which executes at each processor start or reset.


group list

This instruction will display the list of all programmed group actions (group actions with a valid begin and end address and the first BA programmed) with their name.
Returns
List of programmed group actions
OK

Example:

Instruction
group list
Returns
-Group---------Name---------
000 -> test
001 ->
002 ->
003 ->
004 ->
139 ->
167 ->
170 ->
173 ->
176 ->
179 ->
182 ->
185 ->
188 ->
OK

group name read [group nr]

This instruction will read the name of a group action (0-254).
Returns
name of group action
OK

Example:

Instruction
group name read 0
Returns
test
OK

group name write [group nr] [group name]

This instruction will program the name of group action (0-254).
Returns
OK

Example:

Instruction
group name write 0 test
Returns
OK

group search [Type] [opt: Action] [opt: Device Nr] [opt: Extra]

This instruction will do a search in all active group actions to see if a certain group action or group family has been used. You can do a search with only 1 parameter (BA Type) or you can add additional optional parameters (Action, Device Nr, Extra) to narrow down the search
Returns
List of all groups and the search result for each group
OK

Example:

Instruction
(Example: Search in all groups for outputs that are toggled)
group search 0 16
Returns
Group 000 : test
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 001 :
Group 002 :
Group 003 :
Group 004 :
Group 005 : Output Follow
Group 006 :
Group 007 : Temp follow test
-> BA0075 - 000 016 00002 00000 Toggle output 2 with std timer/dimmer
-> BA0076 - 000 016 00003 00000 Toggle output 3 with std timer/dimmer
-> BA0077 - 000 016 00004 00000 Toggle output 4 with std timer/dimmer
-> BA0078 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0079 - 000 016 00006 00000 Toggle output 6 with std timer/dimmer
Group 139 :
Group 167 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 170 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 173 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 176 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 179 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
Group 188 :
-> BA0001 - 000 016 00005 00000 Toggle output 5 with std timer/dimmer
-> BA0010 - 000 016 00015 00000 Toggle output 15 with std timer/dimmer
OK

group start list

This instruction will list all the start addresses of each group action.
Returns
List of all start addresses of each group action
OK

Example:

Instruction
group start list
Returns

-Group nr---BA Start--BA Stop-----Name---------

000 0000 0022 -> test
001 0023 0029 ->
002 0030 0034 ->
003 0035 0041 ->
004 0042 0061 ->
005 0062 ---- ->
006 ---- ---- ->
007 ---- ---- ->
008 ---- ---- ->
009 ---- ---- ->
010 ---- ---- ->
011 ---- ---- ->
012 ---- ---- ->
013 ---- ---- ->
014 ---- ---- ->
015 ---- ---- ->
016 ---- ---- ->
017 ---- ---- ->
018 ---- ---- ->
019 ---- ---- ->
020 ---- ---- ->
...
OK

group start end write [group nr] [start ba nr] [end ba nr]

This instruction will write the start address (0-4199) and end address of group nr x (0-254).
Returns
OK

Example: write start address BA35 and end address BA46 of group nr 5

Instruction
group start write 5 35 46
Returns
OK

group read [group nr]

This instruction will read a group action (0-254) and display all BA's that this group action contains.
Returns
OK

Example:

Instruction
group read 0
Returns
-Grp--BA Nr---Typ-Act--x--(MSB.LSB)--y--(MSB.LSB)-------BA Description----
000 0000(00) 000 007 00013(000.013) 00000(000.000) -> Output 13 ON and only overrule timer with value 0 (0x1s) when output is not yet on
000 0001(01) 000 016 00005(000.005) 00000(000.000) -> Toggle output 5 with std timer/dimmer
000 0002(02) 000 004 00011(000.011) 00020(000.020) -> Output 11 ON and overrule timer with value 20 (20x1s)
000 0003(03) 100 000 00000(000.000) 00000(000.000) -> IF
000 0004(04) 100 010 00012(000.012) 00000(000.000) -> Output 12 is ON
000 0005(05) 100 150 00000(000.000) 00000(000.000) -> THEN
000 0006(06) 000 001 00005(000.005) 00000(000.000) -> Output 5 ON with std timer/dimmer
000 0007(07) 100 200 00000(000.000) 00000(000.000) -> ELSE
000 0008(08) 019 000 00001(000.001) 00000(000.000) -> Execute Group Action 1
000 0009(09) 100 255 00000(000.000) 00000(000.000) -> ENDIF
000 0010(10) 000 016 00015(000.015) 00000(000.000) -> Toggle output 15 with std timer/dimmer
000 0011(11) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0012(12) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0013(13) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0014(14) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0015(15) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0016(16) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0017(17) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0018(18) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0019(19) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0020(20) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0021(21) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
000 0022(22) 255 255 65535(255.255) 65535(255.255) -> Instruction not in use
OK

group ba write [ba nr] [Type] [Action] [Device Nr] [Extra parameter]

This instruction will write the Basic Action (Type, Action, Device Nr & Extra Parameter) of BA nr (0-4199) for a list of the different BA types that can be used, see Action Types AIO.
Returns
OK

Example: write BA 35 with instruction output 17 off

Instruction
group ba write 35 0 0 17 0
Returns
OK

Remark:

  • This instruction exist in a 5 and 7 parameter version
  • The 5 parameter version has following format: "group ba write [ba nr] [Type] [Action] [Device Nr] [Extra parameter]"
  • The 7 parameter version has following format: "group ba write [ba nr] [Type] [Action] [Device Nr.MSB] [Device Nr.LSB] [Extra parameter.MSB] [Extra parameter.LSB]"
  • In the 7 parameter version, you split Device Nr and Extra parameter is his Most significant Byte (MSB) and his Least Significant Byte.

group ba read [ba nr]

This instruction will read the Basic Action (Type, Action, Device Nr & Extra Parameter) of BA nr (0-4199). For a list of the different BA types that can be used, see Action Types AIO.
Returns
BA details

Example: read BA 100

Instruction
group ba read 100
Returns
OK
-BA Nr----Typ-Act---x--(MSB.LSB)---y--(MSB.LSB)-------BA Description----
0100 000 016 00026(000.026) 00000(000.000) -> Toggle output 26 with std timer/dimmer
OK

group simulate [group nr]

This instruction will simulate the result of a group action (0-254) including nested group actions. Below is an example of 4 nested group actions. As you can see in the below example, abstraction is made of the different group action and everything is represented in one consolidated view.
Returns
Consolidated view of the group action
OK

Example:

Instruction
group simulate 0
Returns
15:15:23 BA 000 007 00013(000.013) 00000(000.000) EXEC SIM -> Output 13 ON and only overrule timer with value 0 (0x1s) when output is not yet on
15:15:23 BA 000 016 00005(000.005) 00000(000.000) EXEC SIM -> Toggle output 5 with std timer/dimmer
15:15:23 BA 000 004 00011(000.011) 00020(000.020) EXEC SIM -> Output 11 ON and overrule timer with value 20 (20x1s)
15:15:23 BA 100 000 00000(000.000) 00000(000.000) IF
15:15:23 BA 100 010 00012(000.012) 00000(000.000) Output 12 is ON
15:15:24 BA 100 150 00000(000.000) 00000(000.000) THEN
15:15:24 BA 000 001 00005(000.005) 00000(000.000) SKIP INSTR Output 5 ON with std timer/dimmer
15:15:24 BA 100 200 00000(000.000) 00000(000.000) ELSE
15:15:24 BA 000 001 00004(000.004) 00000(000.000) EXEC SIM -> Output 4 ON with std timer/dimmer
15:15:24 BA 100 000 00000(000.000) 00000(000.000) IF
15:15:24 BA 100 011 00013(000.013) 00000(000.000) Output 13 is OFF
15:15:24 BA 100 150 00000(000.000) 00000(000.000) THEN
15:15:24 BA 100 000 00000(000.000) 00000(000.000) IF
15:15:24 BA 100 010 00014(000.014) 00000(000.000) Output 14 is ON
15:15:24 BA 100 150 00000(000.000) 00000(000.000) THEN
15:15:24 BA 100 000 00000(000.000) 00000(000.000) IF
15:15:24 BA 100 010 00007(000.007) 00000(000.000) Output 7 is ON
15:15:24 BA 100 090 00000(000.000) 00000(000.000) AND
15:15:24 BA 100 011 00008(000.008) 00000(000.000) Output 8 is OFF
15:15:24 BA 100 150 00000(000.000) 00000(000.000) THEN
15:15:24 BA 000 255 00255(000.255) 00000(000.000) SKIP INSTR Switch OFF all Outputs(x=0), Lights(x=1) or Lights&Outputs(x>1)
15:15:24 BA 100 200 00000(000.000) 00000(000.000) ELSE
15:15:24 BA 000 001 00010(000.010) 00000(000.000) EXEC SIM -> Output 10 ON with std timer/dimmer
15:15:24 BA 000 001 00009(000.009) 00000(000.000) EXEC SIM -> Output 9 ON with std timer/dimmer
15:15:24 BA 100 255 00000(000.000) 00000(000.000) ENDIF
15:15:24 BA 100 200 00000(000.000) 00000(000.000) ELSE
15:15:24 BA 000 001 00003(000.003) 00000(000.000) SKIP INSTR Output 3 ON with std timer/dimmer
15:15:24 BA 100 255 00000(000.000) 00000(000.000) ENDIF
15:15:24 BA 100 255 00000(000.000) 00000(000.000) ENDIF
15:15:24 BA 000 000 00020(000.020) 00000(000.000) EXEC SIM -> Output 20 OFF
15:15:24 BA 100 255 00000(000.000) 00000(000.000) ENDIF
15:15:25 BA 000 016 00015(000.015) 00000(000.000) EXEC SIM -> Toggle output 15 with std timer/dimmer
Some remarks:
- SKIP INSTR: This instruction in the consolidated group view will not be executed when running in execution mode ("group activate") due to the conditions being set (IF THEN ENDIF)
- EXEC SIM: This instruction will be executed when the group will be running in execution mode

group activate [group nr]

This instruction will execute a group action (0-254). If you want to see what's happening during execution, you can activate verbose mode by using instruction "basic action debug on". Please note that the instruction "basic action debug on" can slow down the processor due to more console printing that needs to be done.
Returns
OK

Example:

Instruction
group activate 5
Returns
OK

group delay queue list

With BA17 and BA18, Group Actions can be executed at a later stage. This instruction give you an overview which group actions are planned to be executed in the future.
Returns
List
OK 
Instruction
group delay queue list
Returns
list 
OK

VALIDATION Bit instructions

validation bit group follow read [Bit Nr]

A validation bit (0-255) can trigger a group action when the validation bit value changes. With this instruction, you can read, for validation bit Nr, when a value change occurs, which Group Action will be executed.
Returns
Group Nr
OK 

Example: Read the group linked to validation bit 210

Instruction
validation bit group follow read 210
Returns 
63
OK

validation bit group follow write [Bit Nr] [Group Nr]

A validation bit (0-255) can trigger a group action when the validation bit value changes. With this instruction, you can write, for validation bit Nr, when a value change occurs, which Group Action will be executed.
Returns
OK 

Example: Write group nr 63 must be linked to validation bit 210

Instruction
validation bit group follow write 210 63
Returns 
OK

validation bit group follow list

A validation bit (0-255) can trigger a group action when the validation bit value changes. With this instruction, you can list, for all validation bits, which Group Actions are linked.
Returns
List
OK
Instruction
validation bit group follow list
Returns
list 
OK

validation bit list

This instruction will display the list of all Validation Bits, the associated value and name.
Returns
List of Validation Bits
OK

Example:

Instruction
Validation bit list
Returns
Validation Bit List
OK

validation bit name read [Bit Nr]

With this instruction, you can read, for validation bit nr (0-255), the name of this validation bit
Returns
Validation Bit Name
OK 

Example: validation bit name read

Instruction
validation bit name read 10
Returns 
test bit name1
OK

validation bit name write [Bit Nr] [Bit Name]

With this instruction, you can write the name of a validation bit (0-255)
Returns
OK 

Example: Write the name "test123" for validation bit nr 10

Instruction
validation bit name write 10 test123
Returns 
OK

validation bit read [Bit Nr]

This instruction will read the value (0 or 1) of a validation bit. Validation bits can be freely used and are often applied to remember certain events.
Returns
Validation bit value
OK 

Example: Read bit 230

Instruction
validation bit read 230
Returns 
1
OK

validation bit write [Bit Nr] [Bit Value]

This instruction will write Bit Value (0 or 1) in validation bit nr. Validation bits can be freely used and are often applied to remember certain events.
Returns
OK 

Example: Write value 0 in validation bit 230

Instruction
validation bit write 230 0
Returns 
OK

SHUTTER instructions

shutter group link list

This instruction will display a list of all shutters. For every shutter, a Y (YES) or N (NO) indicates if this shutter is linked to each of the 16 shutter groups
Returns
shutter group link list
OK 

shutter list

This instruction will display a list of all shutters with their lock status, output up & down linked, if the shutter is moving as well as the programmed timer setting for up and down
Returns
shutter list
OK 

shutter name read [shutter nr]

Read the name of ashutter
[input nr]
Indicates which shutter (0-31) the name has to be displayed.
Returns
Shutter Name
OK

Example:

Instruction
shutter name read 15
Returns
Bedroom Parents
OK

shutter name write [shutter nr][shutter name]

Write the name of a shutter, max 16 characters.
[shutter nr]
Indicates which shutter (0-31) the name has to be written.
[shutter name]
the ascii name of the shutter (maximum 16 characters).
Returns
OK

Example:

Instruction
shutter name write 15 Bedroom parents
Returns
OK