Grundinstallation von FHEM und dem Raspberry Pi
Seiteninhalte
Einkaufsliste
Name | Anbieter |
Raspberry Pi 3 Complete Starter Kit (empfohlen)
| Amazon |
Raspberry Pi 3 Model B | Amazon |
Transcend microSDHC 16GB (inkl. SD-Adapter) | Amazon |
USB Netzteil 5V 2,5A für Raspberry Pi | Amazon |
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
Als 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.
Seit 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.
1 2 3 | C:\Users\Carsten>ping raspberrypi Ping-Anforderung konnte Host "raspberrypi" nicht finden. Überprüfen Sie den Namen, und versuchen Sie es erneut. |
Wenn 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.
1 | pi@raspberry:~ $ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf |
Am Ende der Datei fügen wir folgendes ein:
1 2 3 4 5 | network={ ssid="DeineSSID" psk="DeinWlanKey" key_mgmt=WPA-PSK } |
In der Theorie reicht jetzt ein „Neustart“ vom WLAN-Device:
1 2 3 4 | pi@raspberry:~ $ sudo ifdown wlan0 pi@raspberry:~ $ sudo ifup wlan0 # ggf muss noch eine Adresse über DHCP gezogen werden pi@raspberry:~ $ sudo dhclient wlan0 |
Ü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
Auch 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.
Bei 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ß.
1 2 3 4 5 6 7 8 9 | pi@fhemtest:~ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/root 1.2G 815M 291M 74% / devtmpfs 459M 0 459M 0% /dev tmpfs 463M 0 463M 0% /dev/shm tmpfs 463M 6.2M 457M 2% /run tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 463M 0 463M 0% /sys/fs/cgroup /dev/mmcblk0p1 60M 20M 41M 34% /boot |
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:
1 2 3 4 5 6 7 8 9 | pi@fhemtest:~ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/root 15G 816M 14G 6% / devtmpfs 459M 0 459M 0% /dev tmpfs 463M 0 463M 0% /dev/shm tmpfs 463M 6.2M 457M 2% /run tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 463M 0 463M 0% /sys/fs/cgroup /dev/mmcblk0p1 60M 20M 41M 34% /boot |
Linux Systemupdate und die Installation von FHEM
Um unser System auf den aktuellen Stand zu bringen, reicht folgender Befehl:
1 | pi@fhemtest:~ $ sudo apt-get update && sudo apt-get dist-upgrade |
Um FHEM zu installieren laden wir uns die aktuelle Version von der FHEM-Webseite und installieren das Paket im Anschluss:
1 2 | pi@fhemtest:~ $ wget http://fhem.de/fhem-5.8.deb pi@fhemtest:~ $ sudo dpkg -i fhem-5.8.deb |
Da Paketabhängigkeiten von „dpkg“ nicht automatisch aufgelöst werden, installieren wir die benötigten Paket im Anschluss folgendermaßen:
1 | pi@fhemtest:~ $ sudo apt-get -f install |
Wenn 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.
1 2 3 | 22 19:01:21 Global global update finished, "shutdown restart" is needed to activate the changes. 2016-04-22 19:01:21 Global global 2016-04-22 19:01:21 Global global Please consider using the global attribute sendStatistics |
Farben in PuTTY
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