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 live 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 receives and sends so called messages:
- A message is a simple string, containing the characters asterisk (*), hash (#) and numbers from 0 to 9.
- each message begins with an asterisk (*) and ends with a double hash (##).
- within the message, fields are separated by an asterisk (*).
Example: *field1*field2*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) |
Attribute Request | *#WHO*WHERE*ATTRIBUTE## | Request attribute value |
Attribute Write | *#WHO*WHERE*#ATTRIBUTE*VAL1*VAL2*...*VALn## | Write attribute 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.
- ## remarks the end of a message. Larger facilities might have extension interfaces. Adresses connected to on one of these extension interfaces have the prefix "#4#nn, where nn stands for the 2-digit value of the extension interface number. So a message with an address on interface 7 will end 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 |
---|---|
0 | General (covers 11..99) |
1..9 | Zone/room 1 to 9 |
11..99 | Light point 1.1 to 9.9 |
0110..0915 |
Light point 1.10 to 9.15 extended addresses |
#1..#9 | Group 1 to 9 |
- A WHERE field can also come with optional parameters, separated by a hash (#), e.g. *WHERE#PAR1#PAR2#...#PARn
WHO Table
The tables below gives you an idea of WHO, WHAT, and WHERE:
WHO | Service |
---|---|
0 | Scenarios |
1 | Lighting |
2 | Automation |
3 | Load Control |
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 |