HomeMatic – CCU-Historian auf einem Raspberry Pi 2 Model B betreiben

Nachdem ich den CCU-Historian vor einigen Jahren lange Zeit erfolgreich auf einem Igel Thin Client unter FreeNAS eingesetzt aber zugunsten von ccu.io Highcharts und andere Lösungen eine ganze Weile darauf verzichtet habe, bin ich nun wieder zum Historian zurückgekehrt, nicht zuletzt, weil mir die Diagramme doch optisch besser gefallen und diese sich prima in Fernbedienungen (ich nutze u.a. Mediola a.i.o.) integrieren lassen.

Als Plattform verwende ich nun einen performanten Raspberry Pi 2 Model B, der die Grafiken ganz ordentlich darstellen kann. Da die seit längerem bekannte Anleitung von Michael Leinich für dieses Modell und die aktuellen Softwareversionen nicht mehr so ganz passt, sind die Schritte nachfolgend noch einmal kurz zusammengefasst.

Einkaufsliste:

1 Raspberry Pi 2 Model B

1 kompatible MicroSD Speicherkarte (ich habe eine SanDisk Ultra MicroSDHC UHS-I 32GB Class 10 genommen)

1 passendes Netzteil

1 passender Ferritkern (zwei bis vier Windungen des Netzteil-Kabelendes dort durchwickeln um Störausstrahlungen zu vermeiden)

1 HDMI-Kabel (Monitor Anschluss)

1 USB Tastatur

1 optional noch eine Gehäuse für den Raspi

1 Adapter SD/MicroSD-USB (falls kein Speicherkartenslot vorhanden ist)

Installation des Betriebsystems

Ich habe das Raspbian Debian Wheezy (Release date: 2015-05-05, Kernel Version: 3.18) von der Download Seite der Raspberry Pi Foundation genommen. Wahrscheinlich funktioniert auch die Noobs-Variante aber mir gefällt der klassische Weg besser. Wie dieser beschritten wird, ist ebenfalls bei der Foundation beschrieben (unter „Installing Operating System Images“) und soll an dieser Stelle nicht wiederholt werden.

Nachdem die Speicherkarte eingesteckt und der Pi hochgefahren wurde kann man sich (über die angesteckte Tastaur) mit dem Default login „pi / raspberry“ anmelden und sollte zunächst mit…

sudo raspi-config

…das Konfigurationstool öffen und nach der Anleitung zumindest die folgenden Schritte ausführen:

1 Expand Filesystem

4 Internationalisation Options

– Change locale -> de_DE.UTF-8 UTF-8

– Change timezone -> Europe / Berlin

– Change keyboard layout -> Generic 105-key (Intl) PC / Other / German,

der Rest kann bei den Voreinstellungen bleiben.

Optional kann z.B. noch eingestellt werden:

2 Change User Password (eigens Passwort)

8 Advanced Options

– Hostname (eigener Hostname)

Nach dem Reboot aktualisieren wir das System mit (nacheinander)…

sudo apt-get update

sudo apt-get upgrade

sudo apt-get clean

sudo rpi-update

sudo ldconfig

und starten nochmal neu…

sudo reboot

Nun haben wir ein aktuelles System, bei dem – sofern die oben genannte Debian Wheezy Kernel Version: 3.18 genommen wurde – auch bereits die Java 1.8 Version laufen sollte, was wir mit dem folgenden Befehl überprüfen können…

java -version

Das Ergebnis sollte etwa so aussehen…

java version „1.8.0“

…

Ich habe die aktuelle Entwicklerversion des CCU-Historian „ccu-historian-0.7.7dev8-bin.zip“ von der CCU-Historian-Seite benutzt. Diese Version benötigt mindestens Java 1.7 und läuft mit der im Weeezy Paket integrierten Java 1.8 einwandfrei.

Übertragen der CCU-Historian Dateien

Zur Installation des CCU-Historian wechseln wir zunächst in den Ordner…

cd /opt

…und legen dort einen Ordner für den Historian an…

sudo mkdir ccu-historian

Für Download und Installation gibt es fortan mehrere Wege, z.B. den von Michael Leinich beschriebenen Weg mittels „wget“ (bei den Befehlen ist dann natürlich die Versionsnummer des Historian-Installationspaketes anzupassen).

Meine Vorgehensweise war jedoch etwas anders. Nach dem Herunterladen des Installationspaketes habe ich es manuell auf einem Windows PC entpackt und mit WinSCP auf den Raspi kopiert. WinSCP ist ohnehin praktisch, z.B. um später die Backups der Datenbank zu sichern.

Um mit allen Rechten auf den Raspi zugreifen zu können, sollte mit…

sudo passwd root

…ein Root Passwort vergeben werden, mit dem wir uns dann mit WinSCP auf dem Raspi einloggen…

…und die Dateien und Ordner des CCU-Historian „rüberschieben“.

Um auf die (umbenannte) Config-Datei uneingeschränkt zugreifen zu können, habe ich noch deren Rechte ein wenig angepasst…

sudo chmod 755 /opt/ccu-historian/ccu-historian.config

Alles Weitere erfolgt nach der Anleitung des Historian.

Zunächst ist die Datei „ccu-historian.config“ gemäß der Anleitung mindestens um Typ und IP-Adresse der CCU zu ergänzen. Hierzu kann man z.B. den bereits im Betriebssystemimage integrierten NANO-Editor verwenden…

sudo nano /opt/ccu-historian/ccu-historian.config

Damit Daten von den HomeMatic BidCos-RF Geräten im Historian ankamen, war es bei mir erforderlich, ergänzend folgende Parameter zu definieren…

devices.historianAddress='IP des Raspi'
webServer.historianAddress='IP des Raspi'

Außerdem sollten – entgegen der Voreinstellung – in der „ccu-historian.config“ absolute Pfade verwendet werden, da es sonst zu Problem (z.B. bei der Implementierung des Autostarts) kommen kann,

also z.B. an Stelle von…

database.dir='./data'

…besser…

database.dir='/opt/ccu-historian/data'

Gespeichert wird mit…

<Strg> o und <Enter>

…und wir verlassen den Editor mit…

<Strg> x

Starten des CCU-Historian

Wenn alles passt, sollte sich der CCU-Historian wie folgt starten lassen…

cd /opt/ccu-historian

sudo java -jar /opt/ccu-historian/ccu-historian.jar

Alternativ, ohne vorher in das Historian-Verzeichnis wechseln zu müssen, geht auch

sudo java -jar /opt/ccu-historian/ccu-historian.jar -config /opt/ccu-historian/ccu-historian.config

Der Aufruf der Web-Seiten erfolgt wie üblich in der Form

http://[webServer.historianAddress]:[webServer.port]

Zum Beenden des Historians ist die Tastenkombination…

<Strg> c

…einzugeben.

Falls es noch Probleme mit den BidCos-RF Daten gibt, hilft es eventuell, die IP des Raspi auch in der Firewall der CCU einzutragen.

Tipp:

Wer noch einen Autostart braucht, findet eine funktionierende Anleitung bei Michael Leinich.

Ich hatte mit der Übernahme dieser bash-Datei einige Probleme. Sowohl beim direkten Kopieren als auch bei der Verwendung der Download-Datei hatten sich einige dubiose Sonderzeichen eingschlichen.

In der Folge blieb das Skript beim Start des Paspberry Pi mit einem Fehler stehen.

Obwohl in Notepad++ und im Editor von WinSCP alles gut aussah zeigte sich beim manuellen Ausführen der Datei mit…

sudo bash /etc/init.d/ccu-historian start

ein Fehler, nachdem in den Zeilen 17 und 18 der Aufruf „\R“ nicht gefunden wurde.

Erst nach Löschen der Leerzeichen in diesen Zeilen ging es dann.

Also das mal bitte prüfen, falls es mit dem Autostart Probleme gibt.

Wenn der Autostart funktioniert, bootet der Raspberry Pi bis zum Login und der CCU-Historian läuft automatisch im Hintergrund. Ein Einloggen ist nicht unbedingt erforderlich. Falls der CCU-Historian aber doch einmal manuell gestoppt…

sudo bash /etc/init.d/ccu-historian stop

…oder gestartet…

sudo bash /etc/init.d/ccu-historian start

…werden soll, geht dies nach dem Einloggen mit den oben genannten Befehlen.

Ein weiterer Tipp:

Der Nutzer „dj_membrane“ aus dem HomeMatic-Forum hat – auf Basis dieses Tutorials und einer Anleitung zu dem Thema Endgeräte mit dem Raspberry via Infrarot fernsteuern – eine Möglichkeit beschrieben, um beliebige infrarot-fernbedienbare Geräte über die HomeMatic CCU und einen Raspberry Pi zu steuern.

Zum korrespondierenden Beitrag im…

Bitte beachten...

Die Verwendung meiner Hinweise, Anleitungen, Schaltungen und Software erfolgt auf eigenes Risiko. Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung.

Copyright © Jens-P. Stern | sTeRn AV | stern-av.de

Contents