ANZEIGE

Howto: FHEM Server auf Raspberry einrichten

FHEM Server auf Raspberry Pi installieren

Mit FHEM das eigene zu Hause jederzeit steuern, ohne große Kosten? FHEM macht einen großen Schritt hierhin, nicht zuletzt durch den Raspberry Pi.
In diesem Post möchte ich euch nun zeigen, wie schnell die Installation von FHEM vonstatten geht.

Konfiguration des Raspberry Pi – Raspbian installieren

Auf den RaspberryPi muss zunächst ein Betriebssystem installiert werden, hierfür bietet sich die Linux-Distribution „Raspbian“ an. Die aktuelle Version wird als „Raspbian Stretch“ bereitgestellt. Das ist das Grundsystem, auf das FHEM später aufgespielt wird.

Update: Die derzeit aktuelle Version ist Raspbian Stretch. Auf dem Screenshot ist noch die alte Version zu sehen. Die Vorgehensweise ist identisch.

Auf dieser Seite im rechten Bereich (Raspbian Buster Lite) auf „Download ZIP“ klicken.

Direktdownload hier

Nach dem Download wird die ZIP-Datei entpackt und muss nun noch auf die SD-Karte des Raspberry’s kopiert werden. Hierfür nutze ich einen USB Kartenleser.

Wenn eine gebrauchte SD-Karte verwendet wird, vorher bitte mit dem SD Card Formatter die Karte formatieren, da es ansonsten zu Problemen führen kann. Dadurch ist es möglich, dass der Raspberry im schlimmsten Fall nicht bootet und FHEM dadurch nicht funktioniert.

Letzte Aktualisierung am 29.03.2024 um 12:17 Uhr | Werbung | Bilder: Amazon Product Advertising API

Windows-Nutzer verwenden hierfür am besten den Win32DiskImager.
Hier geht es zum Direktdownload.

  1. Die heruntergeladene Image im Feld Image File auswählen,
  2. dann unter Device die MicroSDHC-Karte auswählen.
  3. Achtung: Der gesamt Inhalt auf der Speicherkarte wird gelöscht, sobald du auf Write klickst.
  4. Nach einer kurzen Wartezeit ist der Vorgang abgeschlossen. Windows möchte danach meist den Datenträger formatieren, da er nicht mehr für Windows lesbar ist. Dies sollte natürlich vermieden werden.

Für die Mac-User empfehle ich für den Flash-Vorgang den Pi Filler.
Hier geht es wieder zum Direktdownload.

Wichtig!
Wenn der Flash-Vorgang beendet ist, muss noch der SSH-Zugang aktiviert werden. Bei der aktuellen Version „Raspbian Stretch“ ist dieser standardmäßig deaktiviert.
Also die SD-Karte im Explorer öffnen (Ordner „boot“) und diese Schritte ausführen:

  1. Auf oberster Ebene -> Rechtsklick – Neu – Textdatei
  2. Die Textdatei wird „ssh“ (ohne Anführungszeichen) benannt und ohne Dateiendung gespeichert!

Hier gibt es diese fertige Datei (entpacken!): SSH Datei (10986 Downloads)

Ebenso besteht die Möglichkeit schon vorab den WLAN Zugang zu konfigurieren.

Hierfür wird eine Datei namens „wpa_supplicant.conf“ in der Boot-Partition angelegt. Diese hat folgenden Inhalt:

country=DE 
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
       ssid="WLAN-NAME"
       psk="Passwort"
       key_mgmt=WPA-PSK
}

SSID und PSK muss mit den eigenen Werten ersetzt werden.

Eine fertige Datei gibt es natürlich ebenfalls hier bei uns zum Download:
wpa_supplicant conf (8467 Downloads)

Danach kann der Raspberry Pi mit Strom versorgt werden. Falls der WLAN Zugang nicht konfiguriert wurde, muss zusätzlich ein Netzwerkkabel angeschlossen werden.

Raspberry Pi in Betrieb nehmen / Ermittlung der IP

Nun kann die Speicherkarte in den Raspberry Pi gesteckt werden, die Stromversorgung, sowie das Netzwerkkabel kann ebenfalls an dieser Stelle angeschlossen werden.

Als nächstes benötigen wir die IP-Adresse des Raspberrys. Diese suchen wir uns in unserem Router heraus. I.d.R. sollte der Zugriff (Fritzbox vorausgesetzt) über „fritz.box“ funktionieren. Alternativ über die IP „169.254.1.1„, ebenfalls Fritzbox vorausgesetzt. Bei anderen Routern muss in der Anleitung nachgelesen werden, wie man auf die Weboberfläche kommt.
Als Name sollte „raspberrypi“ bei euch stehen.
Mit der derzeit aktuellen Firmware-Version sieht diese Übersicht bei mir so aus:

Nun muss noch dafür sorgen, dass der Router dem Raspberry Pi immer die gleich IP-Adresse gibt, damit diese sich bei einem Neustart o.ä. nicht ändert. Ansonsten wäre FHEM immer unter einer anderen IP-Adresse aufzurufen, was auf doch recht umpraktikabel ist. Dazu wird in der Fritzbox der Haken „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“ gesetzt.

Bei mir lautet die IP-Adresse also 10.0.0.30.

AVM FRITZ!Box 7490 WLAN AC + N Router (VDSL/ADSL,...
Angebot AVM FRITZ!Box 7590 WLAN AC+N Router...

Letzte Aktualisierung am 29.03.2024 um 11:27 Uhr | Werbung | Bilder: Amazon Product Advertising API

SSH-Verbindung zum Raspberry aufbauen

Für Mac
Die Mac-Nutzer können statt PuTTY, die Terminal-App benutzen. Der Login erfolgt mit dem Konsolenbefehl: ssh [email protected]
Nach der Bestätigung durch „Enter“ muss die kommende Abfrage mit „yes“ + „Enter“ bestätigt werden. Kommt der Fehler „Host key verification failed“, muss der Befehl „ssh-keygen -R 10.0.0.30“ eingegeben werden. Nun kann man den Login-Befehl erneut ausführen.
Alle weiteren Schritte sind ab diesem Punkt von Windows auf den Mac übertragbar.
PuTTY Login

Wir müssen uns nun per SSH auf dem Raspberry einloggen.
Unter Windows mittels dem Programm Putty.
Bei „Host Name (or IP adress)“ muss nun die zuvor ermittelte IP-Adresse (bei mir 10.0.0.30) eingegeben werden und mittels „Open“ die Verbindung hergestellt werden.

Im nachfolgend erscheinenden Terminal geben wir ein:
Login as: pi
Password: raspberry
(Beim Eingeben des Passwort sind keine Zeichen sichtbar.)

Nach erfolgreichem Login sollte nachfolgendes Fenster zu sehen:

FHEM Grundeinstellungen

Es sollte nun zuerst das Standardpasswort geändert werden – bitte gut merken! Es wird auch später zur Verwaltung für FHEM benötigt.
Dies funktioniert über den Befehl:

passwd

Es muss nun das alte Passwort „raspberry“ eingeben werden, danach dann das neue Passwort zweimal hintereinander.

Mittels

sudo dpkg-reconfigure tzdata
terminal timezone

wird die richtige Zeit auf dem Rasperry eingestellt. Ein grafisches Menü leitet hier den Weg.
Europe -> Berlin. Beides muss mit „Enter“ bestätigt werden.

Nun muss das Filesystem erweitert werden, damit der Raspberry auch den gesamten Speicherplatz auf der Speicherkarte nutzen kann und somit auch für FHEM zur Verfügung steht. Einfach den Befehl

sudo raspi-config

eingeben.

Nun kann Punkt 7 „Advanced Options“ und danach „A1 Expand Filesystem ausgewählt werden. Ab Version „Raspbian Stretch“ nicht mehr zwingend notwendig, schadet aber auch nicht.

Bestätigt wird dir der Vorgang mittels „Root partition has been resized. The filesystem will be enlarged upon next reboot“. Durch „Enter“ gelangt man nun wieder zurück zum „Pi Configuration Tool“. Zweimal mit der Pfeiltaste nach rechts drücken, bis <Finish> rot hinterlegt ist und mit „Enter“ bestätigen.

Die Frage: „Would you like to reboot now?“ wird mit <YES> bestätigt.

Die Verbindung wird nun getrennt und kann nach ca. 1-2 Minuten erneut aufgebaut werden. Nun mit den folgenden Daten einloggen:
User: pi
Passwort: Das selbst vergebene Passwort

Update des Betriebssystems

Damit das Betriebssystem für FHEM auf dem aktuellen Stand ist, muss nun ein komplettes Update durchgeführt werden. Je nach DSL-Geschwindigkeit kann dies eine ganze Weile dauern.

 Tipp: 

Klicke im Code-Fenster oben rechts auf kopieren, danach mittels rechtsklick in das Terminalfenster. So musst du nicht alles abtippen!

sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y autoremove && sudo reboot

Es erscheint nun eine Fehlermeldung, dass die Verbindung zum Raspberry getrennt wurde. Daher muss die Verbindung nach dem Neustart wieder neu aufgebaut werden, also wieder per ssh einloggen. Es werden mit dem nachfolgenden Befehl nun alle notwendigen Voraussetzungen für FHEM installiert:

sudo apt-get -f install && sudo apt-get -y install perl-base libdevice-serialport-perl libwww-perl libio-socket-ssl-perl libcgi-pm-perl libjson-perl sqlite3 libdbd-sqlite3-perl libtext-diff-perl libtimedate-perl libmail-imapclient-perl libgd-graph-perl libtext-csv-perl libxml-simple-perl liblist-moreutils-perl ttf-liberation libimage-librsvg-perl libgd-text-perl libsocket6-perl libio-socket-inet6-perl libmime-base64-perl libimage-info-perl libusb-1.0-0-dev libnet-server-perl

Je nach Internetleitung dauert das nun mehrere Minuten.

Zum Abschluss wird nun noch FHEM heruntergeladen und installiert. Die aktuelle Version von FHEM ist auf der FHEM-Homepage unter „Download“ ersichtlich. Nachfolgend wird Version 5.9 installiert, welche derzeit aktuell ist (18.11.2018).

sudo wget http://fhem.de/fhem-5.9.deb && sudo dpkg -i fhem-5.9.deb

Die Grundinstallation von FHEM ist hiermit abgeschlossen. Das FHEM Webinterface kann nun über http://10.0.0.30:8083 aufgerufen werden.

Die IP-Adresse 10.0.0.30 muss hier natürlich durch die eigene ausgetauscht werden. Standardmäßig ist ist dies vermutlich eine im Bereich 192.168.178.123.

Smart Home in Eigenregie: Schritt für Schritt mit...
Smart Home in Eigenregie: Mit FHEM und Loxone das...

Letzte Aktualisierung am 29.03.2024 um 13:43 Uhr | Werbung | Bilder: Amazon Product Advertising API

Wie die Ersteinrichtung von FHEM funktioniert, wird in diesem Blogpost beschrieben.

Zu den wichtigen Grundeinstellungen

Klicke auf einen Stern um eine Bewertung abzugeben!

Durchschnittsbewertung 4.9 / 5. Bewertungen: 38

Es tut uns leid, dass dieser Beitrag für dich nicht hilfreich war!

Lassen Sie uns diesen Beitrag verbessern!

Wie können wir den Beitrag verbessern?

6 Gedanken zu „Howto: FHEM Server auf Raspberry einrichten“

6 Kommentare

    • Schön, dass ich dir damit helfen konnte 🙂
      Und vielen Dank für dein Feedback!

      Liebe Grüße & eine schöne Adventszeit
      Michael

  1. Hallo, endlich mal eine tolle Anleitung und völlig fählerfrei 🙂
    Habe erst den Teil ab: Update des Betriebssystems gebraucht, weil ich vorher noch
    S.USV und HM-MOD-PCB installiert habe.
    Baue mir gerade ein Testsystem auf und will dabei mit MariaDB arbeiten.
    Maria ist jetzt das nächste was darauf kommt, bevor irgend etwas in Fhem konfiguriert wird
    Läuft 🙂
    Gruß und Danke

    • Hi Werner,

      das freut mich wirklich sehr, dass dir die Anleitung geholfen hat!
      Wünsche dir natürlich weiterhin viel Erfolg 🙂

      Lieben Gruß
      Michael

  2. Moin Michael,

    ich lese mir grade diesen Beitrag durch und finde ihn klasse!
    Hier und da hab ich eine Anmerkung zum ablauf der Installation. Meld dich doch bitte Per Mail dazu.

  3. Hallo,
    wenn ich die Pakete mit dem laaaangen Befehl installieren möchte, Meldet er einen Fehler:
    Paketlisten werden gelesen… Fertig
    Abhängigkeitsbaum wird aufgebaut.
    Statusinformationen werden eingelesen…. Fertig
    0 aktualisiert, 0 neu installiert, 0 zu entfernen und 3 nicht aktualisiert.
    Paketlisten werden gelesen… Fertig
    Abhängigkeitsbaum wird aufgebaut.
    Statusinformationen werden eingelesen…. Fertig
    Hinweis: »perl« wird an Stelle von »libmime-base64-perl« gewählt.
    Paket ttf-liberation ist nicht verfügbar, wird aber von einem anderen Paket
    referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
    wurde oder nur aus einer anderen Quelle verfügbar ist.

    E: Für Paket »ttf-liberation« existiert kein Installationskandidat.

    Was kann das sein ?
    Mein Raspian ist die Version „Buster“

Schreibe einen Kommentar zu Werner Antworten abbrechen

OwnSmartHome.de