OpenHAB als Alternative zu FHEM auf meinem Raspberry Pi

raspberry.tips
raspberry.tips - Raspberry Pi Projekte und Tutorials

Ich habe bereits sehr viele verschiedene HomeMatic und weitere Komponenten in meiner FHEM Installation via 868MHz CUL-Stick integriert. Da es wieder kälter wird steht die Programmierung der Heizungssteuerung an, diese wollte ich eigentlich im vorhandenen FHEM anpassen und erweitern. Nachdem ich über den Sommer nicht viel an meiner FHEM Installation gemacht habe war sämtliches Wissen wieder aus meinen Gedächtnis verschwunden und mir viel es noch immer schwer mich an die sehr komplexen Vorgänge in FHEM zu gewöhnen. Die perfekte Motivation mich endlich mal mit dem etwas komfortableren OpenHAB zu beschäftigen, FHEM ist was die Programmierung, das Backend und die Konfiguration angeht einfach nicht mehr zeitgemäß.

Heute möchte ich mir OpenHAB als alternative Lösung zu FHEM ansehen und eventuell vorhandene Geräte darauf umstellen.

Hardware

Folgendes habe ich an Hardware verwendet:

  • Raspberry Pi 3
  • Netzteil (2,5A@5,1V),
  • Eine Class 10 MicroSD Karte
  • Ein Netzwerkkabel – Falls kein WLAN vorhanden
  • Busware USB Stick CC1101-USB-Lite 868MHz – Für HomeMatic Ansteuerung

Zusätzlich empfohlen

  • Ein Gehäuse für den Pi mit Lüfter Vorbereitung
  • Ein Lüfter für das Gehäuse
  • Eine externe USB Festplatte – Speichern der Daten und Backups
  • Kabellose Media Center Tastatur
  • HDMI Kabel

Installation von OpenHAB auf den Raspberry Pi

Für die Grundeinrichtung des Raspberry Pi mit Raspbian benutze ich selbst immer meinen Einsteiger Guide, wenn auch mittlerweile aus dem Gedächtnis. Es kommt das aktuelle Raspbian Strecht Image zum Einsatz.

Für die Installation von OpenHAB gibt es zwei Varianten, es kann das vorkonfigurierte OpenHABian Image verwendet werden oder die Installation wird manuell auf Basis von Raspbian durchgeführt. Da ich möglichst selbst die Kontrolle über das System behalten und flexibel bleiben möchte habe ich mich für das manuelle Setup von OpenHAB auf Basis von Raspbian entschieden.

Als erstes installieren wir alle notwendige Software und Abhängigkeiten

sudo apt-get install dirmngr apt-transport-https screen mc vim git htop

Dann entferne ich das Oracle JAVA und den GNU Java Compiler von meinem System

sudo apt-get remove --purge oracle-java8-jdk openjdk-7-jre oracle-java7-jdk openjdk-8-jre gcj-jre

Ich verwende das OpenSource Java Build von Zulu. Zulu ist die empfohlene Java Variante. Installiert wird Zulu Java indem wir den Schlüssel des Repository und das Repository selbst hinzufügen, die Installation starten und dann rebooten.

sudo su
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 219BD9C9
echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list

apt-get update
apt-get install zulu-embedded-8 -y

sudo reboot

Nun können wir schon mit der Installation von OpenHAB beginnen, als erstes benötigen wir wieder das Repository und den Schlüssel

wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' | sudo apt-key add -
echo 'deb https://dl.bintray.com/openhab/apt-repo2 stable main' | sudo tee /etc/apt/sources.list.d/openhab2.list

sudo apt-get update

Dann installieren wir OpenHAB und wichtige Addons via Paket aus dem Repository

sudo apt-get install openhab2 openhab2-addons

Wir konfigurieren noch den Autostart für OpenHAB via systemd und starten den Dienst direkt

sudo systemctl start openhab2.service
sudo systemctl status openhab2.service

sudo systemctl daemon-reload
sudo systemctl enable openhab2.service

Ruft die OpenHAB Webseite im Browser auf, entweder via IP-Adresse eures Raspberry Pi (ifconfig Befehl zeigt diese an) oder über den Rechnernamen. Wichtig! Der erste Start von OpenHAB kann sehr lange dauern (>10Minuten), wartet etwas ab falls ihr die Webseite nicht gleich erreichen könnt.

  • http://ip-adresse:8080 als zum Beispiel http://192.168.178.20 oder
  • http://raspberrypi:8080

Ihr müsst nun euer initiales Addon-Setup wählen, ich verwende erst mal Standard.

openhab webseite

Danach könnt ihr die bevorzugte Oberfläche auswählen in welcher sich OpenHAB präsentiert, ich benutze erst mal das Paper UI. Auf dem Paper UI lassen sich viele Dinge über die Webseite einstellen anstelle Konfigurationsdateien via Texteditor zu bearbeiten, via Basic UI ist das nicht möglich.

openhab ui auswählen

Da ich meine Homematic Komponenten mit meinem CUL Stick am Raspberry Pi steuern möchte ist noch eine weitere Installation und Einrichtung notwendig.

CUL Firmware Flashen

Unser CUL Stick benötigt die letzte CUL Firmware um mit OpenHAB bzw. Homegear kommunizieren zu können. Wir benötigen zum flashen via Raspberry Pi das Tool dfu-programmer

sudo apt-get install dfu-programmer

Dann laden wir uns die letzte Firmware von culfw.de runter, schaut bitte auf culfw.de ob die Version noch passt.

wget http://culfw.de/culfw-1.67.tar.gz

Wir entpacken die Datei mit tar und wechseln in das Verzeichnis

tar zxf culfw-1.67.tar.gz

Da ich einen CC1101-USB-Lite 868MHz besitze, was dem CUL V3 entspricht, wechsle ich in das Verzeichnis in welchem die entpackte Firmware liegt

cd culfw-1.67/Devices/CUL

Dann flashe ich die Firmware Datei für den CULv3 auf meinen Stick, verbindet ihn hierzu via USB. Wichtig! Während des Verbindens muss der Flash Button auf der Rückseite des Sticks gedrückt sein, sonst wird der Stick nicht erkannt und kann nicht programmiert werden (Programmier-Modus).

sudo make usbprogram_v3

Steckt nach erfolgreichem flashen euren Stick einmal ab und wieder an um den Progammier Modus zu beenden.

OpenHAB für Homematic einrichten – Homegear

Da meine Homematic Komponenten bisher nicht über die CCU des Herstellers angebunden waren sonder ein CUL USB Stick der Firma Busware verwendet wurde benötige ich eine spezielle Software als „Brücke“ zwischen OpenHAB dem CUL Stick und meinen HomeMatic Geräten.

Die Brücke wird mit der Software Homegear erstellt.

Wir installieren Homegear aus dem Repository, fügen vorher wieder die Keys hinzu.

sudo apt install apt-transport-https
curl https://homegear.eu/packages/Release.key | sudo apt-key add -

sudo sh -c 'echo "deb https://homegear.eu/packages/Debian/ stretch/" >> /etc/apt/sources.list.d/homegear.list'

sudo apt update

sudo apt install homegear homegear-nodes-core homegear-nodes-extra homegear-homematicbidcos homegear-homematicwired homegear-insteon homegear-max homegear-philipshue homegear-sonos homegear-kodi homegear-ipcam homegear-beckhoff homegear-knx homegear-enocean homegear-intertechno homegear-influxdb

Nach der Installation müssen wir in HomeGear noch unseren CUL Stick konfigurieren, wichtig der CUL Stick muss die letzte CUL Firmware haben. Folgendes fügen wir am Ende der Datei homematicbidcos.conf ein um unseren CUL stick mit Heamgear bekannt zu machen

sudo nano /etc/homegear/families/homematicbidcos.conf

Inhalt

[CUL]
id = CUL868
default = true
deviceType = cul
device = /dev/ttyACM0
responseDelay = 95

Innerhalb der Konfiguration muss noch folgendes editiert werden

  • centralAddress
  • rfKey

Für die centralAddress entferne ich einfach die voranstehende Raute (#) und ändere den Hex-Wert ab um zu vermeiden das in meiner Nachbarschaft die gleichen Adressen vorhanden sind.

centralAddress = 0xFD0009

Den rfKey ändere ich auch ab, dieser wird für die verschlüsselte Kommunikation benutzt, der Key muss 32 Zeichen lang sein, es sind nur HEX Werte erlaubt 0-9 und A-F. Hier ein Beispiel:

rfKey = 012345678901234567890123456789AB

Wichtig!
Notiert euch den Key an einem sicheren Ort, falls der Key verloren geht sind eure HomeMatic Devices Wertlos

Speichert mit STRG+X, Y und Enter.

Homematic Geräte mit OpenHAB / Homegear Pairen

Wir können nun unsere HomeMatic Komponenten mit OpenHAB bzw. Homegear verbinden, ich paire/peere jetzt erst mal nur ein Gerät um die weitere Einrichtung zu beschreiben, später können über den selben Weg weitere Geräte gepaired werden. Bereits gepairte Geräte sollten erst vom alten System abgelernt werden, alternativ ist ein Werksreset ggf. hilfreich (insofern kein AES verwendet wurde).

Wir starten dazu Homegear

sudo homegear -r

Innerhalb der Kommandozeile von Homegear wählen mir nun BidCos zum Konfigurieren aus. Gebt folgenden Befehl ein

families select 0

Dann aktiviert den Pairing Modus

pairing on

homegear pairing aktivieren

Nun löst das Pairing an eurem HomeMatic Device aus (das ist bei jedem Gerät anders, lest dazu die Anleitung). Nach einigen Sekunden Wartezeit könnt ihr via peers list die verbundenen Geräte anzeigen.

peers list

homegear list peers

Es macht Sinn einem Gerät direkt nach dem Anlernen einen sprechenden Namen zu geben. Geht unter Angabe der ID des angelernten Geräts einen neuen Namen ein. Ich gebe dem Gerät mit der ID 1 den Namen „Rollladen-Buero-Philipp

peers setname 1 Rollladen-Buero-Philipp

Damit haben wir nun unsere Homematic Geräte mit dem Raspberry Pi verbunden, nun müssen wir noch eine Verbindung zwischen OpenHAB und Homegear herstellen.

Beendet Homegear mit STRG+C.

Homegear und OpenHAB verbinden

Wir müssen nun via OpenHAB Modul die Brücke zwischen OpenHAB, dem CUL Stick und unseren Geräten fertig bauen. Hierfür öffnet ihr die OpenHAB Webseite wieder in eurem Browser.

Wechselt in das Menu Add-Ons

OpenHAB addons

Wählt im unter Menu „Bindings„, Sucht nach Homematic und installiert das „Homematic Binding

Homematic openhab binding

Wartet etwas ab und wechselt dann in die Inbox, wählt dort über das + Zeichen euer Binding aus.

openhab inbox

OpenHAB als Alternative zu FHEM auf meinem Raspberry Pi

Da vermutlich der CUL Stick nicht automatisch erkannt wird wählt ihr „Add Manualy“ aus

OpenHAB als Alternative zu FHEM auf meinem Raspberry Pi

Innerhalb des Dialogs zum Hinzufügen eures über Homegear angebunden CUL müsst ihr nun noch localhost als Adresse eingeben und bestätigen.

OpenHAB als Alternative zu FHEM auf meinem Raspberry Pi

Nach kurzer Wartezeit taucht unter Configuration > Things euer CUL als Homematic Bridge mit dem Status „online“ auf. Die Webseite muss ggf. mit F5 refreshed werden, der Status aktualisiert sich nicht.

homematic bridge

Das bereits gepairte Gerät taucht wenig später in der „Inbox“ auf und kann direkt verwendet werden. Klickt auf den Blauen Haken neben dem Namen und bestätigt den Dialog um das Gerät in OpenHAB verwenden zu können, führt das für beide Geräte durch.

homematic device in openhab

add as thing openhab

Nun möchten wir uns noch in der Oberfläche unter „Control“ die Geräte und Steuerungsmöglichkeiten anzeigen lassen. Hierzu gehen wir auf Configuration > Things dort klicken wir auf die beiden neuen Homematic Gerät und aktivieren die Knöpfe der Eigenschaften die wir unter „Control“ angezeigt haben wollen.

Zum Beispiel für meinen Rollladenaktor

rolladen

Die Homegear Extras:

gateway extras

Hiernach finden wir auf der Seite unter Control die Steuerbefehle für die Geräte und können mit der Steuerung beginnen.

control panel openhab

Die weitere Einrichtung und Umstellung meiner Geräte und Funktionen werde ich in den nächsten Wochen veröffentlichen, ich habe Gefallen an OpenHAB gefunden und werde darauf umsatteln.

OpenHAB als Alternative zu FHEM auf meinem Raspberry Pi
raspberry.tips


wallpaper-1019588
Mit Kindern über gleichgeschlechtliche Liebe reden
wallpaper-1019588
[Comic] Seven Sons
wallpaper-1019588
Momentary Lily: Original-Anime angekündigt
wallpaper-1019588
LUCK LIFE: Band feiert Europapremiere auf der Connichi