KNX is an open communication protocol standard for intelligent buildings.This KNX device library is a free open-source (GPL v3) software that allows you to create your “self-made” KNX bus device. For that, you need an Arduino board and a Siemens TPUART chipset for the physical coupling to the KNX bus… and of course a home KNX installation (or at least a prototyped one like I have)!

The code is available in the GITHUB REPOSITORY

The API and the general usage of the library are described in the Library API page.

This blog aims at presenting and discussing concrete (future) realizations, shown in Realizations page.

Actors introduction

Let’s make the concrete actors introduction. As explained in the Github page, we use an Arduino Mini Pro (5V, Atmega328) and a TPUART2 “BTM2-PCB” board (from Opternus company) to create KNX devices. Both fit in a standard (67mm diameter) flush-mounted wall box :

So they are the ideal companions to create flush-mounted wall devices like push buttons/detectors/sensors.

How to connect the Arduino Mini Pro to the TPUART?

The datasheet of the used TPUART2 board is available here.

Since the Arduino Mini Pro (5V, Atmega328) is powered by the KNX bus, we shall connect the Arduino GND and VCC (5V) pins to the Supply ouput pins of the TPUART. Then connect the Arduino Rx pin to the Tpuart Tx pin and Arduino Tx to Tpuart Rx.

On TPUART side : On Arduino side : Fritzing view :