HomeMatic Raspberry Pi Tutorial

HomeMatic – CCU-Historian auf einem Raspberry Pi 3 Model B betreiben (Raspbian Stretch)

CCU-Historian

Mit Raspbian Stretch hat sich die Vorgehensweise beim Aufsetzen des Raspberry Pi 3 Model B für den CCU-Historian gegenüber Raspian Jessie etwas geändert. Hier das aktualisierte Vorgehen mit der derzeit neusten Kernel Version 4.9 vom 7. September 2017.


Einkaufsliste:

1 Raspberry Pi 3 Model B
1 kompatible MicroSD Speicherkarte (ich habe eine SanDisk Ultra MicroSDXC I 64 GB Class 10 genommen, da darauf ja auch die Backups des CCU-Historian für einen längeren Zeitraum passen sollen, natürlich kann man auch kleinere Karten nehmen, weniger als 16 GB würde ich aber nicht verwenden)
1 passendes Netzteil
1 passender Ferritkern (zwei bis vier Windungen des Netzteil-Kabelendes dort durchwickeln um Störausstrahlungen zu vermeiden)
1 optional noch ein Gehäuse für den Raspi

Temporär zum Einrichten werden zusätzlich benötigt:
1 HDMI-Kabel (Monitor Anschluss)
1 USB Tastatur
1 USB Maus
1 Adapter SD/MicroSD-USB (temporär zum Einrichten, falls kein Speicherkartenslot vorhanden ist)

Installation des Betriebsystems

Ich habe das „Raspbian Stretch with desktop“ (Release date: 2017-09-07, Kernel version: 4.9) von der Download Seite der Raspberry Pi Foundation verwendet. Die „Lite“ Version sollte nicht benutzt werden, da ansonsten Java (und möglicherweise noch mehr) manuell nachinstalliert werden muss. Nach dem Download wird das Image im bekannten Verfahren) auf die microSD-Karte geschrieben.

Vor dem Entfernen der Karte sollte das System für den SSH-Zugriff vorbereitet werden. Hierzu gibt es bei Stretch keinen Menüpunkt in der Raspberry Pi Configuration mehr. Statt dessen muss eine (leere) Text-Datei mit dem Namen SSH in der Bootpartition erstellt werden. Dies erleigt man am besten gleich vom PC aus…

CCU-Historian

CCU-Historian

Nachdem die Speicherkarte eingesteckt und die Spannungsversorgung verbunden wurden, bootet der Raspberry Pi in die graphische Benutzeroberfläche. Wir konfigurieren ihn zunächst mit ein paar Mausklicks so, dass er in die Kommandozeile bootet.

Unter „Preferences -> Raspberry Pi Configuration“ (die Bildschirmfotos sind noch von Jessie)…

CCU-Historian auf Raspberry Pi 3

…wählen wir bei „Boot“ an Stelle der Voreinstellung „To Desktop“ die Einstellung „To CLI“ aus…

CCU-Historian auf Raspberry Pi 3

… und starten das System neu.

Nach dem Neustart bootet der Raspberry Pi automatisch in die Konsole und zeigt die Kommandozeile, die Maus wird nun nicht mehr benötigt…

Zunächst konfigurieren wir den Raspberry Pi mit dem Konfigurationstool…

sudo raspi-config

…und führen dabei zumindest die folgenden Schritte aus…


Hinweis:

Zwischen den Internationalisierungseinstellungen und dem Setzen eines neuen Passwortes sollte einmal neu gestartet werden, damit die Einstellungen sicher übernommen wurden, bevor man ggf. Sonderzeichen beim Passwort verwendet.


7 Advanced
A1 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:


1 Change User Password (aus Sicherheitsgründen sollte ein eigenes Passwort vergeben werden)


2 Hostname (eigener Hostname)

Nach einem weiteren Reboot aktualisieren wir das System mit (nacheinander)…

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Nun wird noch etwas aufgeräumt…

sudo apt-get autoremove
sudo apt-get autoclean

…und der Raspberry Pi noch einmal neu gestartet…

sudo reboot

Jetzt haben wir ein aktuelles System, bei dem auch bereits Java laufen sollte, was wir mit dem folgenden Befehl überprüfen können…

sudo java -version

Das Ergebnis sollte etwa so aussehen…

CCU-Historian

Übertragen der CCU-Historian Dateien

Zum Übertragen des CCU-Historian richten wir zunächst WinSCP ein.

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

sudo passwd root

…ein Root Passwort vergeben.

Anschließend wird die Root Passwortabfrage eingeschaltet…

Dazu muss lediglich in der Datei „/etc/ssh/sshd_config“ ein Eintrag verändert werden. Hierfür kann man z.B. den bereits im Betriebssystemimage integrierten NANO-Editor verwenden…

sudo su
nano /etc/ssh/sshd_config

Im Block…

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin without-password
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

…wird die Zeile „PermitRootLogin without-password“ in „PermitRootLogin yes“ geändert und der „#“ am Anfang der Zeile entfernt.

# Authentication:

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

Gespeichert wird mit…

<Strg> o und <Enter>

Wir verlassen den Editor mit…

<Strg> x

…und starten einmal neu…

sudo reboot

Jetzt sollten das Einloggen mit dem eben vergebenen Root Passwort und der Zugriff auf das Dateisystem über WinSCP funktionieren.

CCU-Historian auf Raspberry Pi 3

Im Verzeichnis…

/opt

…werden ein Unterverzeichnis…

/opt/ccu-historian

…angelegt und dorthin die die Dateien des CCU-Historian kopiert.

CCU-Historian auf Raspberry Pi 3

Um auf die (gemäß Anleitung des CCU-Historian 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“ mindestens um Typ und IP-Adresse der CCU zu ergänzen.


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 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]

CCU-Historian auf Raspberry Pi 3

Zum Beenden des Historians ist die Tastenkombination…

<Strg> c

…einzugeben.


Falls es doch noch Probleme mit den BidCos-RF Daten gibt, hilft es eventuell, die IP-Adresse des Raspberry Pi in der Firewall der CCU einzutragen.

Tipp:

Wer seine Datenbank von einem bestehenden System umziehen möchte, geht genauso vor, wie oben beschrieben, kopiert aber den zuvor vom Altsystem heruntergeladenen Ordner „data“ mit den dort enthaltenen Dateien in den Ordner „/opt/ccu-historian“ (ggf. bereits vorhande Dateien überschreiben)…

CCU-Historian auf Raspberry Pi 3

Zusätzlich bitte daran denken, in der Datei…

/opt/ccu-historian/ccu-historian.config

überall bei

historianAddress

die IP-Adresse des neuen Raspberry Pi 3 Modell B einzutragen.


Noch ein Tipp:

Falls das System neu aufgesetzt wird, sollte gleich eine CCU-Historian Version ab 1.1.1 Beta 1 genutzt werden, da diese eine Datenbank mit Performanceverbesserungen und einem neuen, für SSD-/Flashspeicher optimierten Datenbankformat verwendet.

Autostart einrichten

Die folgende Vorgehensweise basiert auf einer Anleitung von Michael Leinich

Zunächst muss eine Datei mit dem Namen…

ccu-historian

…in…

/etc/init.d

…angelegt werden, was am Einfachsten mit WinSCP funktioniert…

CCU-Historian auf Raspberry Pi 3

…dort hinein wird das von Michael Leinich erstellte Shellskript (siehe Link) kopiert.

Anschließend werden die Rechte noch angepasst…

sudo chmod 755 /etc/init.d/ccu-historian

…und das Skript im Startup eingetragen…

sudo update-rc.d ccu-historian defaults

Wenn der Autostart funktioniert, lässt sich der Historian nach dem Reboot des Raspberry Pi nach kurzer Zeit wie folgt aufrufen…

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

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, gelingt dies mit den oben genannten Befehlen.


Zum Schluss ein weiterer Tipp:

Wenn remote auf den Raspberry Pi zugegriffen werden soll, empfehle ich hierzu Putty.

Das Einloggen erfolgt damit als „root“ mit dem oben vergebenen Root Passwort…

CCU-Historian auf Raspberry Pi 3

CCU-Historian auf Raspberry Pi 3


Und noch ein Hinweis:

CCU-Historian Highcharts bietet ein alternatives Front-End für den CCU-Historian, das sehr einfach zu installieren ist, indem die Dateien aus dem verlinkten Projektordner „dist/“ z.B. mit WinSCP in das Verzeichnis „webapp/custom/“ der CCU-Historian Installation kopiert werden…

CCU-Historian Highcharts

In der Datei config.js ist zumindest die IP-Addresse und der Port des CCU-Historian einzutragen (weitere Konfigurationen sind optional).

Aufgerufen wird das Front-End mit…

http://[webServer.historianAddress]/custom/index.html

CCU-Historian Highcharts

 

Bitte beachten...

Die Verwendung meiner Hinweise, Anleitungen, Schaltungen und Software erfolgt auf eigenes Risiko. Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung.
Creative Commons Lizenzvertrag
Copyright © Jens-Peter Stern | SMART WOHNEN by sTeRn AV | smart-wohnen.org

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

* Die Checkbox für die Zustimmung zur Speicherung ist nach DSGVO zwingend.

Ich stimme zu.