Im ersten Schritt habe ich den RaspberryPi mit dem Pigator versehen, openHabian installiert und 1-Wire zum Laufen bekommen. Nun kommt KNX ins Spiel.

Zunächst müssen auf dem RPi-System einpaar Änderungen vorgenommen werden. Dazu am besten gleich eine Admin-Konsole (root) öffnen:

Nun wird der normale serielle Anschluss des RPi ausgeschaltet, weil unser TPUART genau diesen benutzen soll:

Außerdem muss Bluetooth deaktiviert werden, da dies die GPIO-Pins 14 und 15 verwendet, welche auch von TPUART benutzt werden. Dazu muss erneut die /boot/config.txt bearbeitet werden:

Außerdem deaktivieren wir das BT-Modem im Linux-System:

Anschließend erfolgt ein Neustart mit reboot.

Nun sollte der TPUART auf /dev/ttyAMA0 laufen, dies kann man in der root-Konsole testen:

Je nach Version des Betriebsystem steht dort '/devices/platform/soc/3f201000.serial/tty/ttyAMA0' oder '/devices/platform/soc/3f201000.uart/tty/ttyAMA0'. Dies gilt es für die folgenden Zeilen zu beachten und ggf. anzupassen.
Nun gibt es zwei interessante Zeilen aus der Liste, die wir uns direkt extrahieren und anschließend werden diese Daten direkt in die udev-Regeln geschrieben, damit wir uns einen Klon von '/dev/ttyAMA0' erstellen lassen, der vom KNX-Dienst gelesen werden kann:

Nun muss der KNX-Dienst noch den neuen Pfad benutzen:

Nach einem weiteren Neustart sollte nun alles laufen.

Kommt der KNX-Dienst(knxd) nicht hoch, so kann man diesen bequem testen:

ACHTUNG! Der KNX-Dienst mittels TPUART läuft nur, wenn auch der Bus ordentlich aufgesetzt ist.
Ohne funktionierende Geräte kann der KNX-Dienst nicht erkennen, ob das TPUART-Gerät läuft oder nicht.

Im nächsten Teil geht es dann um das Programmieren der KNX-Geräte.