Grundinstallation von FHEM und dem Raspberry Pi

Linux Smarthome
Raspberry Pi 3

FHEM ist grundsätzlich erst einmal überall lauffähig, wo PERL zur Verfügung steht. Für große Umgebungen empfiehlt es sich, einen Linux-Server einzusetzen, für den Anfang reicht aber ein Raspberry Pi der 1. Generation aus. So hatte ich meine Installation ebenfalls laufen, bis der Kleine so stark überlastet war, dass ich auf einen Linux-Server umgezogen bin. Mittlerweile ist der Raspberry Pi in der 3. Generation zu haben, so dass hier sicher ausreichend Leistung zur Verfügung steht. Aus diesem Grund würde ich diesen auch jedem empfehlen, der mit FHEM starten möchte. Für mich persönlich soll hier ein Testsystem entstehen, so dass ich die Installation mit Euch zusammen durchführen werde. Auch wenn ihr bisher noch nicht mit Linux in Kontakt gekommen seid, eignet sich das Projekt daher, hier erste Kenntnisse zu sammeln.

Einkaufsliste

NameAnbieter
Raspberry Pi 3 Complete Starter Kit (empfohlen)

  • Raspberry Pi 3 Model B
  • Gehäuse für Raspberry Pi 3
  • 16GB Micro SD-Card
  • 5V USB-Netzteil
  • HDMI-Kabel für Monitoranschluss
  • Heatsink/Kühlkörper für Raspberry Pi
 

Amazon

Raspberry Pi 3 Model BAmazon
Transcend microSDHC 16GB (inkl. SD-Adapter)Amazon
USB Netzteil 5V 2,5A für Raspberry PiAmazon
Premium Case für Raspberry Pi 3 (optional, zum Schutz des rPi3)Amazon
SD/microSD Card Reader (wenn nicht vorhanden)Amazon
Netzwerkkabel (wenn das WLAN des rPi3 genutzt werden soll,
nur für die WLAN-Grundkonfiguration benötigt)
Amazon

Grundinstallation des Raspberry Pi

raspberry pi win32 disk imagerAls erstes laden wir uns das aktuelle Raspbian-Image von raspberry.org, um es im Anschluss auf die SD-Karte zu übertragen. Den Direktlink zu dem Image findet ihr hier.

Ich beschreibe den Vorgang unter Windows, unter Linux und Mac kann DD genutzt werden.

Windows-Benutzer laden sich den Win32 Disk Imager herunter und installieren diesen im Anschluss. Dieser wird benötigt, um das Raspian-Image auf die SD-Karte zu schreiben. Wir schließen die SD-Karte mit Hilfe des Card-Readers am PC an und starten den „Win32 Disk Imager“. Nachdem das Image entpackt wurde, wird es im Disk-Imager ausgewählt. Als Device müsst Ihr die SD-Karte auswählen. Stellt in jedem Fall sicher, dass hier nicht das falsche Device ausgewählt wurde, da es vollständig überschrieben wird. Über „Write“ wird das Image nun auf die Karte geschrieben.

raspbian rpi ssh aktivierenSeit November 2016 ist SSH unter Raspbian standardmäßig deaktiviert. Damit wir den Raspberry Pi im nächsten Schritt über das Netzwerk erreichen können, müssen wir eine neue, leere Datei mit dem Namen „ssh“ auf der SD-Karte anlegen.

Achtet beim Anlegen der Datei darauf, dass sie keine Dateiendung besitzt (siehe Screenshot).

Start des Raspberry Pi und Verbindung über SSH

Entfernt die micro-SD Karte aus dem Kartenleser und steckt sie in den Raspberry Pi. Verbindet das Netzwerkkabel mit Eurem Netzwerk. Der Pi kann nun über das USB-Netzteil mit Strom versorgt werden und starten. Im Normalfall sollte er sich über DHCP eine IP-Adresse holen. Wenn ihr z.B. eine Fritzbox einsetzt, sollte der Pi nach kürzester Zeit über einen Ping erreichbar sein.

ping raspberry ssh puttyWenn dies wie im obigen Beispiel nicht der Fall sein sollte, müsst ihr in dem Webinterface Eures Router einmal schauen, welche IP-Adresse dem Pi zugeteilt wurde. Im Screenshot rechts ist der erfolgreiche Versuch zu sehen.

Um nun eine SSH-Verbindung aufzubauen, benötigt ihr einen SSH-Client, z.B. PuTTY. Startet PuTTY und baut wie im Screenshot rechts eine Verbindung auf. Hat der Ping funktioniert, könnt Ihr auch hier als Hostnamen „raspberry“ verwenden, ansonsten nutzt Ihr die vorher ermittelte IP-Adresse. Der Login lautet „pi“, das Passwort „raspberry“.

WLAN des Raspberry Pi konfigurieren

Das schöne am Raspberry Pi 3 ist, dass er über einen internen WLAN und Bluetooth Adapter verfügt. Wenn ihr ein älteres Pi nutzt, könnt ihr auf einen WLAN-USB-Adapter zurückgreifen. Ich beschreiben hier die Möglichkeit, das WLAN über die Console zu konfigurieren. Habt ihr Euch nicht an diese Anleitung gehalten und eine X-Oberfläche eingerichtet, findet ihr dort einen einfacheren Weg. Ich gehe in diesem Tutorial aber davon aus, dass wir den Pi als Server und ohne angeschlossenen Monitor benutzen wollen. Wenn ihr kein WLAN nutzen wollt, überspringt ihr diesen Absatz einfach.

Um das WLAN zu konfigurieren, nutzen wir den Editor unserer Wahl und editieren die Datei „/etc/wpa_supplicant/wpa_supplicant.conf“. Einsteiger finden sich ggf. am ehesten mit dem Editor „nano“ zurecht, ich arbeite mit dem „vi“, dessen Nutzung am Anfang sicher etwas Gewöhnung bedarf, später aber sehr viel Zeit einspart, wenn ihr Euch darauf einlasst. „vi“ also einfach durch den Editor Eurer Wahl ersetzen.

Am Ende der Datei fügen wir folgendes ein:

In der Theorie reicht jetzt ein „Neustart“ vom WLAN-Device:

Überprüft mit „ifconfig“, ob die WLAN-Verbindung zustande gekommen ist und ob das Device „wlan0“ von Eurem DHCP-Server eine Adresse erhalten hat. Wenn das der Fall ist und noch eine LAN-Verbindung besteht, startet ihr den Pi am besten über die Eingabe von „sudo reboot“ neu und zieht das Netzwerkkabel danach schnell ab. Wiederholt den „ping“ aus dem vorherigen Abschnitt und guckt, ob der Pi diesmal über WLAN antwortet. Auch sollte er über WLAN nun eine andere Adresse zugeordnet haben.

Passwort und Hostnamen des Pi ändern und Dateisystem vergrößern

raspi-configAuch wenn der Pi bei Euch im lokalen Netzwerk hängt, würde ich als erstes das Standardpasswort ändern. Erfahrene Benutzer erledigen dies schnell und einfach über „passwd“. Der Raspberry bringt allerdings auch ein Tool mit, das ihr über „sudo raspi-config“ starten könnt. Punkt 2 lautet „Change User Passwort“ und erziehlt das gleich Ergebnis.

raspi-config hostnameBei dem Hostnamen handelt es sich um den Namen „raspberry“, den Ihr in den vorherigen Schritten bereits verwendet habt. Diesen könnt ihr ändern, dies ist aber natürlich optional. Erfahrene Benutzer editieren einfach die Dateien „/etc/hostname“ und „/etc/hosts“. Wer „raspi-config“ benutzen möchte, findet die einfache Möglichkeit unter „Advanced Options“ -> „Hostname“. Ich nenne meinen Pi ab sofort „fhemtest“.

Da das Raspian-Image, das wir vorhin installiert haben, für alle Größen von SD-Karten passen soll, müssen wir es unserer SD-Kartengröße noch anpassen, das Dateisystem also „größer ziehen“.

Ich selber nutze eine 16GB microSD-Karte. Wie ihr bei der Ausgabe von „df“ seht, ist das Root-Datesystem aber nur 1,2GB groß.

Wie ihr die Vergrößerung manuell durchführt möchte ich Euch an dieser Stelle nicht beschreiben, da die Gefahr hier etwas kaputt zu machen doch recht groß ist. Ich nutze an dieser Stelle ebenfalls gerne das Tool „raspi-config“. Punkt 1 lautet „Expand Filesystem“ und führt die nötigen Schritte kurz und schmerzlos für Euch durch. Die Vergrößerung findet allerdings erst nach dem nächsten „reboot“ statt, dieser ist an dieser Stelle aber auch überfällig.

Eine abschließende Kontrolle nach dem Neustart zeigt nun, dass die gesamten 16GB genutzt werden:

Linux Systemupdate und die Installation von FHEM

Um unser System auf den aktuellen Stand zu bringen, reicht folgender Befehl:

Um FHEM zu installieren laden wir uns die aktuelle Version von der FHEM-Webseite und installieren das Paket im Anschluss:

Da Paketabhängigkeiten von „dpkg“ nicht automatisch aufgelöst werden, installieren wir die benötigten Paket im Anschluss folgendermaßen:

FHEM WebinterfaceWenn der letzte Schritt fehlerfrei durchgelaufen ist sollte FHEM nun über den Browser über „http://fhemtest:8083/fhem“ erreichbar sein.

Als erstes bringen wir FHEM auf den aktuellen Stand, indem wir „update“ in das obige Textfeld eingeben und mit Enter bestätigen. Lasst das Fenster offen, bis das Update komplett durchgelaufen ist. Wenn ihr Updates durchführt überfliegt die Meldungen und schaut, ob von euch genutzte Module von dem Update betroffen waren. Hin und wieder sind Änderungen dabei, die für die weitere Funktion wichtig sein können. Gibt es nach dem Update größere Probleme, legt die Update-Routine automatisch ein Backup an, so dass ihr jederzeit auf den letzten, noch funktionierenden Stand zurück könnt. Wie die Textausgabe am Ende des Updates in der Regel schon klar macht, sind die Änderungen erst nach einem „shutdown restart“ aktiv.

Farben in PuTTYputty blaue schrift unlesbar

Wenn ihr die blaue Schrift in PuTTY nur schlecht lesen könnt, ändert vor dem Verbindungsaufbau unter „Window“ -> „Colours“ die Option „Indicate bolded text by changing:“ auf „The colour“. Unter „Session“ kann diese Option nach der Änderung als Standardwert oder unter einer anders benannten Session gespeichert werden.

Im nächsten Schritt fangen wir dann endlich an, unsere Steckdosenschalter mit FHEM zu steuern.

Update 24.2.17: FHEM-Download von Version 5.7 auf 5.8 angepasst und PuTTY-Downloadlink aktualisiert.

Update 16.3.17: Hinweis zum Aktivieren von SSH unter Raspbian hinzugefügt.

Schreibe einen Kommentar

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

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.