RPi + KNXD + Selfbus FT1.2 HAT
Hier werden die notwendigen Schritte beschrieben, wie man auf einem RPi mit einem Raspbian Stretch / Jessie den knxd so aufsetzt, dass die ETS den RPi als KNX Schnittstelle erkennt.
Image oder Installskript verwenden
Fertiges Image mit knxd
Die einfachste Variante: dieses fertige Image mit Raspian Stretch lite und fertig intalliertem knxd verwenden: https://www.amazon.de/clouddrive/share/DrtE0xuvLclr7FxfR0KVj41ZiOwnxKHJ9pNwVsecX20
Datum der Erstellung: 09.01.2018
User: pi
Pass: raspberry
Unter WIndows z.B. mit dem Win32 DiskImager auf die SD Karte schreiben und nach dem Start mit raspi-config die Partition auf die gesamte Karte ausweiten.
Skript zur Installation durch laufen lassen
- Image für Raspian Stretch lite, Raspian Stretch oder Raspbian Jessie herunter laden
- Image auf SD Karte schreiben (z.B. mit Win32 Disk Imager)
- Ein leeres File mit dem Namen ssh im dann erstellten Laufwerk "boot" erstellen, das aktiviert SSH ohne, dass man die Tastatur am RPi anschließen muss
- SD Karte + Netzwerk in RPi stecken, dann Strom an den RPi
- Per Putty mit pi / raspberry auf den RPi zugreifen
- unten stehende Befehle per c&p (paste = rechte Maustaste im Putty) ins Putty
- ETS anwerfen, Kaffee trinken, hoffentlich nach ein paar Minuten den knxd in der ETS sehen
cd ~
wget https://github.com/selfbus/linux-bus-tools/raw/master/raspberry/Scripts/selfbus_knxd_installation.sh
chmod 700 ./selfbus_knxd_installation.sh
sudo ./selfbus_knxd_installation.sh
ACHTUNG: durch das Skript werden auch Einstellungen zur Zeitzone auf Europe/Berlin gemacht! Wer das nicht will, muss die Zeile entsprechend auskommentieren. Ansonsten sollte es ein guter Punkt sein, um einfach mal ein Stretch / Jessie mit einem knxd zu versehen.
Der KNXD läuft dann als Gerät 0.0.0. Es wird durch das Skript noch keine feste IP vergeben!
Skript im Git: https://github.com/selfbus/linux-bus-tools/blob/master/raspberry/Scripts/selfbus_knxd_installation.sh
Manuelle Installation von knxd
Testen der Installation
Ein systemctl status knxd.service zum Beispiel so eine Ausgabe erzeugen:
systemctl status knxd.service
â knxd.service - KNX Daemon
Loaded: loaded (/lib/systemd/system/knxd.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2018-01-10 22:08:50 CET; 1h 12min ago
Main PID: 593 (knxd)
CGroup: /system.slice/knxd.service
ââ593 /usr/bin/knxd -e 0.0.0 -E 0.0.1:8 -D -R -T -S -i --trace=15 -b ft12:/dev/ttyKNX1
Hat man zum Beispiel eine Gruppenadresse 1.1.1 für einen Schaltvorgang vergeben, so kann man mit einem knxtool groupswrite ip:localhost 1/1/1 1 und einem knxtool groupswrite ip:localhost 1/1/1 0 ein- bzw. ausschalten.
Natürlich sollte das Schalten aus der ETS heraus genauso funktionieren.
Getestete Geräte / Software
Getestet wurde das ganze mit
- ETS: ETS5
- RPi Image: Stretch (lite), Jessie
- RPi Version: 1B, 2B+, 3B
Contents
RPi 3 mit Selfbus FT1.2 HAT
ETS5 Schnittstellenerkennung