About KNX
KNX (previously known as EIB) is an open standard protocol for intelligent buildings, originally developed in Europe in the 1990s. The KNX standard is supported by a large network of qualified contractors, planners, integrators and manufacturers around the world.
The main benefit of KNX is that specifications for interoperability are standardised for all devices. All KNX devices can be connected to form a functional installation thanks to the standardization of telegrams (messages) that are sent between devices. KNX is designed to be independent of any particular hardware platform. This means there is a wide range of available off-the-shelf components.
KNX can operate over several physical communications media such as twisted pair (TP) wiring, power line (PL), radio (RF), Ethernet (IP). Twisted pair wiring is most commonly used.
The control cable supplies energy and control signals for devices over two wires with polarity being critical.
In KNX, the words Actuator and Sensor are used in a general sense. An Actuator is any device that receives information from the network to perform an action and a Sensor is any device that senses an action and sends the information to the network.
PA = Individual (Physical) Address
GA = Group (Logical) Address
KNX Communication
KNX devices communicate by sending telegrams to group addresses on the KNX bus during normal operating mode.
A group address is a logical address which links one or more communication objects (memory locations) in each device. Communication objects can have more than one group address.
Each device can be viewed as a collection of communication objects that are linked by group addresses. A communication object may represent a physical channel, a property or an operation in a device.
You can read or write to a communication object using its group address. Output objects communicate with input objects and all objects sharing a group address must use telegrams of the same size. If an object has several group addresses, only one group address is used as the sending group address
The size of the telegrams can be from 1 bit up to 14 bytes depending on the object’s function. For example, 1 bit telegrams are often used for switching as only two states (1 or 0) are required, whereas text transmission may require the maximum 14 bytes.
KNX Individual Addressing
All KNX devices are represented by a group address and an individual (physical) address. An individual address is a unique two-byte address that is allocated to each device based on its location in the network.
Individual addresses are represented by three digits separated by dots:
x.y.z = x: 0-15, y: 0-15, z: 0-255
(Main Line . Line . Device number)
| Physical Device | Individual Address Range |
|---|---|
Not Used Address |
0.0.0 |
Backbone Line Root Devices |
0.0.z ; z=1-255 |
Backbone Couplers |
x.0.0 ; x=1-15 |
Line Couplers |
x.y.0 ; x=1-15, y=1-15 |
Main Line Root Devices Address |
x.0.z ; x=1-15, z=1-255 |
Line Device Address |
x.y.z ; x=1-15, y=1-15, z=1-255 |
Main Line Devices & Line Devices |
All others |
KNX Group Addressing
The group address is a two-byte logical address used for all bus communication in normal operating mode. Each device can belong to few group addresses. Group address can be represented in three different ways:
-
three digits x/y/z (x: 0-31, y: 0-7, z: 0-255 )
-
two digits x/z (x: 0-31, z: 0-2047 )
-
one digit x (x: 0-65535)
|
The three level structure (Main group/Middle group/Subgroup) is used for translating between KNX and DyNet. Group address 0/0/0 is reserved for telegrams to all bus devices (broadcast messages). The DDNG-KNX only supports the address range x: 0-15. |
Flags
Flags are part of the communication object properties. Each communication object has two main properties; data type and flags. The flag default settings are only changed in exceptional circumstances or for advanced settings. Flags can to set the following properties:
| Flag | Setting | Description |
|---|---|---|
Communication |
|
The group object has a normal link to the bus. |
|
Telegrams are acknowledged. The group object is not modified. |
|
Read |
|
The object value can be read via the bus. |
|
The object value CANNOT be read via the bus. |
|
Write |
|
The object value can be modified via the bus. |
|
The object value CANNOT be modified via the bus. |
|
Transmit |
|
A telegram is transmitted when the object value (at the sensor) has been modified. |
|
The group object will generate a response only when receiving a read request. |
|
Update |
|
Value response telegrams are interpreted as a write command. The value of the group object is updated (always enabled in System 1 devices). |
|
Value response telegrams are NOT interpreted as a write command. The value of the group object remains unchanged. |
Telegrams
Telegrams sent over the KNX network must conform to one of the standard data point types (DPT). The DPT specifies the size and meaning of information in the telegram.
Standardised data point types guarantee compatibility of similar devices from different manufacturers, for example; dimmers clocks etc. The combination of several standardised data point types (for example; in dimming actuators) is called a functional block.
The telegram is a sequence of characters that are combined into fields together with the associated useful information such as commands, messages, setting parameters, measured values etc.
| Bits | |
|---|---|
Control |
8 |
Source (Individual) Address |
16 |
Target (Group) Address |
16+1 |
Routing Counter |
3 |
Length |
4 |
Useful Information |
16x8 |
Control Checksum |
8 |
Datapoint Types
Datapoint Types are labeled using a main number separated by a dot from a sub-number.
e.g.: 1.004 (1)
In addition, the number in brackets indicates the number of bits in the data type.
e.g.: (1) = 1 bit, (8) = 8 bits
All DPTs with the same main number have the same format and encoding. The full list of standardised datapoint types can be downloaded from https://support.knx.org/