KNX Device Interoperability - How does it work?
KNX is based around a standardised telegram with the data formatted according to a set of fixed data point types (DPT). It is these DPT's, over 80 of them, that ensure products from different manufacturers interpret raw data in the same way.
For example -
To control the brightness of a light a percentage is used. In KNX this would take the form of a 1 byte object with value from 0 - 255. Without DPT's one manufacturer could treat 100% as a value of 255 and another could interpret 100 as being 100%. Hence the need for the DPT 5.001 scaling which defines 100% as 255. When it comes to larger data formats such as temperature, volume and pressure the standardisation becomes critical. For more information on these standardised data points please refer to the KNX website.
So in a telegram we have a reference to the DPT along with the relevant data - lets go with a brightness value of 50% (or 128). If a button is configured to send this value and a dimmer is able to receive this value, how are the two actually linked together? In other words, how do we make sure the telegram is sent to the correct device and all the lights in the building don't come on. To do this we create an envelope, or group address and add an object from both the button and the dimmer.
When the button is pressed it will send the telegram to the address 1/1/1. The dimmer will be listening for this address so when it is received it will check the datapoint type then adjust the brightness of its output to 50%
Whilst this is a very simplified example, the reality is not actually that much more complicated.