Difference between revisions of "Memory Model AIO"
Line 462: | Line 462: | ||
: Byte 74: Extra Parameter (MSB) | : Byte 74: Extra Parameter (MSB) | ||
: Byte 75: Extra Parameter (LSB) | : Byte 75: Extra Parameter (LSB) | ||
+ | |||
+ | ... | ||
+ | |||
+ | === Input action "1 second press" === | ||
+ | |||
+ | {| class="wikitable sortable" border="1" | ||
+ | | align="center" style="background:#f0f0f0;"|'''Page''' | ||
+ | | align="center" style="background:#f0f0f0;"|'''Byte''' | ||
+ | |- | ||
+ | | Second page||112-159 | ||
+ | |} | ||
+ | |||
+ | Each input can be linked to a basic action (6 bytes) when the input is pressed for 1 second. See [[Action Types AIO]] for more details about the possible basic actions that can be used. | ||
+ | |||
+ | {| class="wikitable sortable" border="1" | ||
+ | | align="center" style="background:#f0f0f0;"|'''Page''' | ||
+ | | align="center" style="background:#f0f0f0;"|'''Byte''' | ||
+ | |- | ||
+ | | Second page||112-117 | ||
+ | |} | ||
+ | |||
+ | These 6 bytes represents the basic action bytes for input 0 of this module: | ||
+ | : Byte 112: Type | ||
+ | : Byte 113: Action | ||
+ | : Byte 114: Device Nr (MSB) | ||
+ | : Byte 115: Device Nr (LSB) | ||
+ | : Byte 116: Extra Parameter (MSB) | ||
+ | : Byte 117: Extra Parameter (LSB) | ||
+ | |||
+ | {| class="wikitable sortable" border="1" | ||
+ | | align="center" style="background:#f0f0f0;"|'''Page''' | ||
+ | | align="center" style="background:#f0f0f0;"|'''Byte''' | ||
+ | |- | ||
+ | | Second page||118-123 | ||
+ | |} | ||
+ | |||
+ | These 6 bytes represents the basic action bytes for input 1 of this module: | ||
+ | : Byte 118: Type | ||
+ | : Byte 119: Action | ||
+ | : Byte 120: Device Nr (MSB) | ||
+ | : Byte 121: Device Nr (LSB) | ||
+ | : Byte 122: Extra Parameter (MSB) | ||
+ | : Byte 123: Extra Parameter (LSB) | ||
... | ... |
Revision as of 14:17, 4 February 2018
General Configuration Bytes
- Page 0 -> Controller specific data
Page | Byte |
0 | 1 |
- Number of output modules: This byte specifies the number of output (output, dim control, shutter/curtain ...) modules known by the Master controller on the RS485 bus. Maximum 80.
Page | Byte |
0 | 2 |
- Number of input modules: This byte specifies the number of input (input, temperature, can control ...) modules known by the Master controller on the RS485 bus. Maximum 80.
Data output modules
- Page 1 – 80 -> Contains data of the output modules (80 modules maximum, 640 outputs -> 0-639)
The output data can be found back from page 1 till page 80. These Pages that contains active data depending on Page0/Byte1.
Every output Module (that can be configured in normal or Roller/Shutter mode) has its own output page which contains the normal output data and the Roller/Shutter data:
Page | Byte |
1 | x |
- This page is entirely used for output module 0.
Page | Byte |
2 | x |
- This page is entirely used for output module 1.
Page | Byte |
3 | x |
- This page is entirely used for output module 2.
...
Page | Byte |
80 | x |
- This page is entirely used for output module 79.
- Every output page has following structure
Output data
Page | Byte |
1-80 | 0-3 |
- Byte 0: Type device (more information see document “Technical device information”)
- Byte 1: ID1 (ID1, 2, 3 gives the unique ID of the device)
- Byte 2: ID2
- Byte 3: ID3
Page | Byte |
1-80 | 4-6 |
- Byte 4: Firmware Version F1 (Major)
- Byte 5: Firmware Version F2 (Minor)
- Byte 6: Firmware Version F3 (Built)
Page | Byte |
1-80 | 7-22 |
- Standard Timer values for an output to be used. Each timer value has a word format and is programmed in 2 bytes (first byte LSB). The function of this word is decibed in the Timer Type Byte..
- Byte 7 (LSB) and 8 (MSB) will specify the timer value for output 0
- Byte 9 (LSB) and 10 (MSB) will specify the timer value for output 1
- ...
- Byte 21 (LSB) and 22 (MSB) will specify the timer value for output 7
Page | Byte |
1-80 | 23-30 |
- Standard Timer values for an output to be used. Each output has a timer type
- Byte 23 Timer type for output 0
- Byte 24 Timer type for output 1
- ...
- Byte 30 Timer type for output 7
- When Timer Type=0 or 255 -> Timer not active or not configured
- When Timer Type=1 -> Timer value contains 100ms value in other words, if for example the Timer value (word) = 6004, the timer is set to 600.4 seconds
- When Timer Type=2 -> Timer value contains second value in other words, if for example the Timer value (word) = 6004, the timer is set to 604 seconds
- When Timer Type=3 -> Time value contains switch off time (MSB=Hour, LSB=minute)
Page | Byte |
1-80 | 31-38 |
- Byte 31: Output type byte output0 (=0: standard output, >0: Light output)
- Byte 32: Output Type byte output1 (=0: standard output, >0: Light output)
- …
- Byte 38: Output Type byte output7 (=0: standard output, >0: Light output)
- Output Type byte will indicate if the indicated output is a light or not. When specific instruction (by using action type 163 for example) to switch off a light will be used, only lights (and not outputs) will be switched off.
Up/Down Timer settings of an individual Roller/Shutter
Page | Byte |
1-80 | 39-46 |
- Byte 39: Up Timer for Roller/Shutter 0
- Byte 40: Down Timer for Roller/Shutter 0
- Byte 41: Up Timer for Roller/Shutter 1
- Byte 42: Down Timer for Roller/Shutter 1
…
- Byte 45: Up Timer for Roller/Shutter 3
- Byte 46: Down Timer for Roller/Shutter 3
Note: This timer setting is in seconds, when 0 the timer is not in use.
Roller/Shutter config byte
Page | Byte |
1-80 | 47-50 |
- Byte 47: config byte for Roller/Shutter0.
- BIT0 (Least significant): UP/DOWN config BIT: If BIT0=1 then the first output of the 2 outputs will be the UP direction (and the other output will be the DOWN direction), if BIT0=0 then the second output will be the UP direction
- BIT1: Not used yet
- BIT2: Not used yet
- BIT3: Not used yet
- BIT4: Not used yet
- BIT5: Not used yet
- BIT6: Not used yet
- BIT7 (Most significant): Not used yet
- Byte 48: config byte for Roller/Shutter1.
- BIT0 (Least significant): UP/DOWN config BIT: If BIT0=1 then the first output of the 2 outputs will be the UP direction (and the other output will be the DOWN direction), if BIT0=0 then the second output will be the UP direction
- BIT1: Not used yet
- BIT2: Not used yet
- BIT3: Not used yet
- BIT4: Not used yet
- BIT5: Not used yet
- BIT6: Not used yet
- BIT7 (Most significant): Not used yet
- Byte 49: config byte for Roller/Shutter2.
- BIT0 (Least significant): UP/DOWN config BIT: If BIT0=1 then the first output of the 2 outputs will be the UP direction (and the other output will be the DOWN direction), if BIT0=0 then the second output will be the UP direction
- BIT1: Not used yet
- BIT2: Not used yet
- BIT3: Not used yet
- BIT4: Not used yet
- BIT5: Not used yet
- BIT6: Not used yet
- BIT7 (Most significant): Not used yet
- Byte 50: config byte for Roller/Shutter3.
- BIT0 (Least significant): UP/DOWN config BIT: If BIT0=1 then the first output of the 2 outputs will be the UP direction (and the other output will be the DOWN direction), if BIT0=0 then the second output will be the UP direction
- BIT1: Not used yet
- BIT2: Not used yet
- BIT3: Not used yet
- BIT4: Not used yet
- BIT5: Not used yet
- BIT6: Not used yet
- BIT7 (Most significant): Not used yet
ascii Names outputs
Page | Byte |
1-80 | 128-255 |
- Byte 128 – 143: ascii name of the first output of this module (16 characters)
- Byte 144 – 159: ascii name of the second output of this module (16 characters)
- …
- Byte 240 – 255: ascii name of the last output (16 characters)
Data input modules
- Page 81 – 240 -> Contains data of the input modules (80 modules maximum, 640 inputs -> 0-639)
The input data can be found back from page 81 till page 240, each input module has 2 pages. These Pages that contains active data depending on Page0/Byte2.
Every input Module has 2 input pages which contains all the input and configuration data:
Page | Byte |
81-82 | x |
- These pages are entirely used for input module 0. Page 81 is the first page, 82 the second.
Page | Byte |
83-84 | x |
- These pages are entirely used for input module 1. Page 83 is the first page, 84 the second.
Page | Byte |
85-86 | x |
- These pages are entirely used for input module 2. Page 85 is the first page, 86 the second.
...
Page | Byte |
239-240 | x |
- These pages are entirely used for input module 79. Page 239 is the first page, 240 the second.
- Every input page has following structure
Input data
Page | Byte |
First page | 0-3 |
- Byte 0: Type device (more information see document “Technical device information”)
- Byte 1: ID1 (ID1, 2, 3 gives the unique ID of the device)
- Byte 2: ID2
- Byte 3: ID3
Page | Byte |
First page | 4-6 |
- Byte 4: Firmware Version F1 (Major)
- Byte 5: Firmware Version F2 (Minor)
- Byte 6: Firmware Version F3 (Built)
Input configuration
Page | Byte |
First page | 7-14 |
Each input has 1 configuration byte, 8 configuration bytes per module. Each BIT of the configuration byte represents an input configuration. BIT0 is the least significant BIT of the configuration BYTE, BIT7 is the most significant BIT.
Page | Byte |
First page | 7 |
- Configuration Byte:
- BIT0: On the different inputs of the OpenMotics system, both NC (normally close, BIT0=0) and NO (normally open, BIT0=1) switches can be connected. In this byte, in BIT0, you can program for each input if the input is NO or NC. Standard, all inputs are programmed as NO (BIT0=1).
Page | Byte |
First page | 8 |
- Configuration Byte:
- BIT0: On the different inputs of the OpenMotics system, both NC (normally close, BIT0=0) and NO (normally open, BIT0=1) switches can be connected. In this byte, in BIT0, you can program for each input if the input is NO or NC. Standard, all inputs are programmed as NO (BIT0=1).
…
Page | Byte |
First page | 14 |
- Configuration Byte:
- BIT0: On the different inputs of the OpenMotics system, both NC (normally close, BIT0=0) and NO (normally open, BIT0=1) switches can be connected. In this byte, in BIT0, you can program for each input if the input is NO or NC. Standard, all inputs are programmed as NO (BIT0=1).
ascii Names inputs
Page | Byte |
First page | 128-255 |
- Byte 128 – 143: ascii name of the first input of this module (16 characters)
- Byte 144 – 159: ascii name of the second input of this module (16 characters)
- …
- Byte 240 – 255: ascii name of the last input (16 characters)
Toggle input link
Page | Byte |
Second page | 0-15 |
For each input, an output or a special function (basic actions) can be linked. This is configured in the following bytes:
- Byte 0: MSB of the input link word of input 0 of this input module
- Byte 1: LSB of the input link word of input 0 of this input module
- Byte 2: MSB of the input link word of input 1 of this input module
- Byte 3: LSB of the input link word of input 1 of this input module
- Byte 4: MSB of the input link word of input 2 of this input module
- Byte 5: LSB of the input link word of input 2 of this input module
- …
The input link word has following configuration:
- BIT 0-9: These bits contains the output number of the output to be toggled by input x (only works when BIT10,12,13,14,15=0)
- BIT10: 0->Toggle output in BIT0-9 is used, 1->"input action press" basic actions, "input action release" basic actions etc are being used
- BIT11: 1-> Dimming up when the BIT10=0 and BIT0-9 contains a dimmer output, 0->Dimming down when the BIT10=0 and BIT0-9 contains a dimmer output (this bit can be ignored when programming the input link word)
- BIT12: 1-> 1 second press & hold function is programmed, 0-> 1 second press & hold function is not programmed
- BIT13: 1-> 2 second press & hold function is programmed, 0-> 2 second press & hold function is not programmed
- BIT14: 1-> 3 second press & hold function is programmed, 0-> 3 second press & hold function is not programmed
- BIT15: 1-> Double press is programmed, 0-> Double press is not programmed
Input action "Press"
Page | Byte |
Second page | 16-63 |
Each input can be linked to a basic action (6 bytes) when the input is pressed. See Action Types AIO for more details about the possible basic actions that can be used.
Page | Byte |
Second page | 16-21 |
These 6 bytes represents the basic action bytes for input 0 of this module:
- Byte 16: Type
- Byte 17: Action
- Byte 18: Device Nr (MSB)
- Byte 19: Device Nr (LSB)
- Byte 20: Extra Parameter (MSB)
- Byte 21: Extra Parameter (LSB)
Page | Byte |
Second page | 22-27 |
These 6 bytes represents the basic action bytes for input 1 of this module:
- Byte 22: Type
- Byte 23: Action
- Byte 24: Device Nr (MSB)
- Byte 25: Device Nr (LSB)
- Byte 26: Extra Parameter (MSB)
- Byte 27: Extra Parameter (LSB)
...
Input action "Release"
Page | Byte |
Second page | 64-111 |
Each input can be linked to a basic action (6 bytes) when the input is released. See Action Types AIO for more details about the possible basic actions that can be used.
Page | Byte |
Second page | 64-69 |
These 6 bytes represents the basic action bytes for input 0 of this module:
- Byte 64: Type
- Byte 65: Action
- Byte 66: Device Nr (MSB)
- Byte 67: Device Nr (LSB)
- Byte 68: Extra Parameter (MSB)
- Byte 69: Extra Parameter (LSB)
Page | Byte |
Second page | 70-75 |
These 6 bytes represents the basic action bytes for input 1 of this module:
- Byte 70: Type
- Byte 71: Action
- Byte 72: Device Nr (MSB)
- Byte 73: Device Nr (LSB)
- Byte 74: Extra Parameter (MSB)
- Byte 75: Extra Parameter (LSB)
...
Input action "1 second press"
Page | Byte |
Second page | 112-159 |
Each input can be linked to a basic action (6 bytes) when the input is pressed for 1 second. See Action Types AIO for more details about the possible basic actions that can be used.
Page | Byte |
Second page | 112-117 |
These 6 bytes represents the basic action bytes for input 0 of this module:
- Byte 112: Type
- Byte 113: Action
- Byte 114: Device Nr (MSB)
- Byte 115: Device Nr (LSB)
- Byte 116: Extra Parameter (MSB)
- Byte 117: Extra Parameter (LSB)
Page | Byte |
Second page | 118-123 |
These 6 bytes represents the basic action bytes for input 1 of this module:
- Byte 118: Type
- Byte 119: Action
- Byte 120: Device Nr (MSB)
- Byte 121: Device Nr (LSB)
- Byte 122: Extra Parameter (MSB)
- Byte 123: Extra Parameter (LSB)
...