OWN OpenWebNet Language Reference
The OpenWebNet protocol was defined in 2000 by Bticino/Legrand to specify the communication with a Bticino home automation gateway, connected via LAN, RS-232 (serial) or USB. Here you'll get a brief overview of the OWN language syntax. To watch the OWN messages of your Bticino gateway, you should try the Python Monitor in our Code Snippets section.
Contents
Basic Syntax Rules
A Bticino gateway sends and receives messages.
- a message begins with an asterisk (*) and is terminated with a double hash (##).
- each message contains fields separated by an asterisk (*).
- a field can contain dimensions and values separated by an asterisk (*) and/or a hash (#)
Example: *field1*field2#dim1#value1*field3...fieldN##
The OWN message syntax
Message Type | Message | Note |
---|---|---|
ACK | *#*1## | Message accepted/understood |
NACK | *#*0## | Message not accepted/understood |
Standard | *WHO*WHAT*WHERE## | Standard message |
Status Request | *#WHO*WHERE## | Request a state (e.g. if a light is ON or OFF) |
Dimension Request | *#WHO*WHERE*DIMENSION## | Request dimension value |
Dimension Write | *#WHO*WHERE*#DIMENSION*VAL1*VAL2*...*VALn## | Write dimension value(s) |
We know already that a standard message consists of *WHO*WHAT*WHERE##
.
- WHO identifies the service, such as scenario, light or automation. See WHO table below.
- WHAT is the action to be performed, such as light ON/OFF or dimmer, shutter up/down etc.
- WHERE identifies the object, which can be an area, group, an environment, or just a single light or shutter etc. Check out the WHERE table below.
- ## terminates a message. Larger facilities might have extension interfaces. Addresses connected to on one of these extension interfaces have the prefix "#4#nn, where nn reflects the 2-digit value of the extension interface number. So a message with an address on interface 7 is terminated with a "#4#07##.
Some Examples
*1*0*25## Turn off light 2.5 on local interface | | | | | +- light address 25 | +- 0=OFF +- WHO=1 lighting *0*13*19#4#06## Launch scenario 13 of scenario list 19 on interface 6 | | | | | | | +- #4#06 = interface 6 | | +- 19 = address of scenario list | +- scenario #13 +- WHO=0 scenarios *1*1*47#4#01## Turn on light 4.7 on interface 1 (#4#01) *1*1*0415## Turn on light 4.15 on local interface *1*0*0## Turn off all lights on local interface *2*1*91#4#03## open (1) shutter 9.1 in on interface 3 (#4#03) *#4*#1*#14*0225*3## Set heating zone 1 manually ON to 22.5°C
WHERE Table
The WHERE field identifies the object, which can be an area, group, an environment, or just a single light or shutter etc.
WHERE | Address | Info |
---|---|---|
0 | General | The whole system, be careful! |
1..9 | Environment 1 to 9 | Can be a zone or a room |
11..99 | Light point 1.1 to 9.9 | Single addresses |
0110..0915 | Light point 1.10 to 9.15 | Extended addresses on newer gateways |
#1..#9 | Group 1 to 9 | A set of single addresses |
- A WHERE field can also come with optional parameters, separated by a hash (#), e.g. *WHERE#PAR1#PAR2#...#PARn.
WHO Table
The WHO value describes the service. Click the service name in table below to get detailed information:
WHO | Service |
---|---|
0 | Scenarios |
1 | Lighting |
2 | Automation |
3 | Power Management |
4 | Heating |
5 | Burglar Alarm |
6 | Door Entry System |
7 | Multimedia |
9 | Auxiliary |
13 | Device Communication |
14 | Light+shutters actuators lock |
15 | WHO=15 - CEN |
16 | Sound System |
17 | Scenario Programming |
18 | Energy Management |
24 | Lighting Management |
25 | WHO=25 - CEN plus |
1000 | Diagnostic |
1001 | Automation Diagnostic |
1004 | Heating Diagnostic |
1008 | Door Entry System Diagnostic |
1013 | Device Diagnostic |
1018 | Energy Management Diagnostic |
1023 | Access Control Diagnostic |
Those last 2 are used by MHSuite to scan the bus... But I don't have any of those to test, yet
1023 scan request messages don't show up in the monitor (wireshark to the rescue)