Memory Model AIO

From OpenMotics
Jump to navigation Jump to search

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)


ascii Names outputs

Page Byte
First page 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)