KNX-RF Stack with PushButton Pairing for Embedded Devices

Hochschule Bonn-Rhein-Sieg
CUL: MCU + 868MHz radio tranciever


Currently there are many incompatible communication protocols in the home automation environment. KNX is a open standard that is already used for building automation in many public and comercial buildings. KNX-RF is part of this standard that uses wireless communication which makes it easier to retrofit existing buildings. There are two common modes to configure KNX devices, S-mode wich uses a special configuration software and PB-mode which uses preconfigured device modes. Most existing KNX-RF components use push-button pairing as it is easier to use for non profesional users.

Hochschule Bonn-Rhein-Sieg
radio module from Becker motor

Existing Libraries

Existing open implementations of KNX either need resources that are not available on small embedded devices or don't implement pairing. Two existing open implementations of the KNX stack have been developed by TU-Wien. EIBD/knxd uses posix-threads and is intendet to run on Linux systems. Calimero is a Java based implementation.


This project is intendet to be an open implementation of KNX-RF with PB-Mode pairing that is capable of running on small microcontrolers. It is supposed to be lightweigt and portable C code that can be used on most microcontrollers. A reference implementation targets an ATmega32U4 MCU and a CC1101 radio tranciever and can be used for demonstaration and debugging. It has also been used to implement a communication module for a roller-shutter.

Additional Links: Martin Kögler (TU Wien): eidb, The Calimero Project (TU Wien).

The contact person of this project is Jannis Konrad.