1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Filebase
  4. Forum
  5. Zebradem-WIKI
  6. Foren-Regeln
  7. Spenden Liste
    1. Spenden
  • Anmelden
  • Registrieren
  • Suche
ZebraDem-Sponsoring
Dieses Thema
  1. Forum
  2. Computer Ecke
  3. Mini PC s
  4. Raspberry PI und Co

FHEM-Server auf dem Raspberry Pi in weniger als einer Stunde einrichten

  • Tuppel
  • 25. Mai 2016 um 22:19
  • Tuppel
    Super Moderator
    Reaktionen
    17
    Punkte
    48.122
    Beiträge
    7.863
    • 25. Mai 2016 um 22:19
    • #1

    Fast drei Jahre ist es nun her, dass ich in diesem Artikel beschrieben habe, wie man FHEM auf einem RPI in einer Stunde zum Laufen bekommt. Obwohl die Inhalte im Grunde noch aktuell sind und der Artikel weiterhin auf Platz 1 bei Google gerankt wird, möchte ich dennoch mit diesem Artikel ein umfangreiches Update liefern, um zu zeigen, was sich soft- wie hardwaretechnisch in der Zwischenzeit so alles getan hat.Neben dem Installationsprozess, der nun ein Stück schneller läuft und komfortabler ist, sollen jedoch vor allem auch Fragen geklärt werden, welche Vorteile die neueren Raspberry Pi-Modelle aufweisen und ob bzw. wann sich ein Upgrade auch für eingefleischte Anwender lohnt.Hierbei handelt es sich um das offizielle Update des Artikels FHEM-Server auf dem Raspberry Pi in einer Stunde einrichten aus dem Jahr 2013!
    [h=3]Hardwareplattform Raspberry Pi - Aller guten Dinge sind drei[/h]Obwohl sich optisch seit dem "ursprünglichen" Raspberry Pi Modell B(+) auf den ersten Blick nicht viel getan hat, ist vor allem unter der Haube eine ganze Menge passiert.
    Die wichtigsten Änderungen der Nachfolger-Pis betreffen sowohl den Prozessor, die Taktfrequenz als auch den verbauten Arbeitsspeicher. Aber auch die Upgrades in Bezug auf die Peripherie sind nicht zu verachten:[TABLE="class: wp-table-reloaded wp-table-reloaded-id-23"]
    [TR="class: row-1 odd"]
    [TH="class: column-1 sorting_disabled, colspan: 1"][/TH]
    [TH="class: column-2 sorting_disabled, colspan: 1"]RPI Modell B[/TH]
    [TH="class: column-3 sorting_disabled, colspan: 1"]RPI 2 Modell B[/TH]
    [TH="class: column-4 sorting_disabled, colspan: 1"]RPI 3 Modell B[/TH]
    [/TR]
    [TR="class: row-2 even"]
    [TD="class: column-1"]CPU[/TD]
    [TD="class: column-2"]1x 700 MHz - ARMv6 (32-bit)[/TD]
    [TD="class: column-3"]4x 900 MHz - ARMv7 (32-bit)[/TD]
    [TD="class: column-4"]4x 1200 MHz - ARMv8-A (64-bit)[/TD]
    [/TR]
    [TR="class: row-3 odd"]
    [TD="class: column-1"]RAM[/TD]
    [TD="class: column-2"]512 MB (früher 256 MB)[/TD]
    [TD="class: column-3"]1024 MB[/TD]
    [TD="class: column-4"]1024 MB[/TD]
    [/TR]
    [TR="class: row-4 even"]
    [TD="class: column-1"]Netzwerk[/TD]
    [TD="class: column-2"]10/100-MBit Ethernet[/TD]
    [TD="class: column-3"]10/100-MBit Ethernet[/TD]
    [TD="class: column-4"]10/100-MBit Ethernet

    WLAN b/g/n

    Bluetooth 4.1[/TD]
    [/TR]
    [TR="class: row-5 odd"]
    [TD="class: column-1"]USB[/TD]
    [TD="class: column-2"]2x USB 2.0[/TD]
    [TD="class: column-3"]4x USB 2.0[/TD]
    [TD="class: column-4"]4x USB 2.0[/TD]
    [/TR]
    [TR="class: row-6 even"]
    [TD="class: column-1"]GPIO[/TD]
    [TD="class: column-2"]17[/TD]
    [TD="class: column-3"]26[/TD]
    [TD="class: column-4"]26[/TD]
    [/TR]
    [TR="class: row-7 odd"]
    [TD="class: column-1"]Kartenleser[/TD]
    [TD="class: column-2"]SD[/TD]
    [TD="class: column-3"]microSD[/TD]
    [TD="class: column-4"]microSD[/TD]
    [/TR]
    [TR="class: row-8 even"]
    [TD="class: column-1"]Preis[/TD]
    [TD="class: column-2"]ca. 35 EUR (Affiliate-Link)[/TD]
    [TD="class: column-3"]ca. 40 EUR (Affiliate-Link)[/TD]
    [TD="class: column-4"]ca. 45 EUR (Affiliate-Link)[/TD]
    [/TR]
    [/TABLE]

    Wie man an den Hardwarespecs erkennen kann, hat sich bei der CPU einiges getan. Statt nur eines Kerns werkeln im RPI3 nun gleich vier Kerne, wobei sich deren Taktfrequenz um über 70% erhöht hat.Im direkten Vergleich zu einer ausgewachsenen Intel CPU (wie bspw. in PCs und Servern) wirken die CPU-Specs des RPI3 auf den ersten Blick einigermaßen vergleichbar. Aufgrund der unterschiedlichen Architektur (Intel vs. ARM) hinkt der Vergleich jedoch gewaltig. Ein ARM-Prozessor eines RPI3 ist zwar annäherend vergleichbar getaktet, bringt aber wesentlich weniger Power mit, da die Befehlssätze einer ARM-CPU (RISC) vereinfacht gesagt "kleiner" sind als die einer Intel-CPU (CISC). Das ist jedoch für den vorgesehenenen Aufgabenbereich als FHEM-Server ziemlich egal, da die Leistung dennoch mehr als ausreichend ist - auch für ein größeres Setup.Vielmehr besitzen ARM-CPUs den entscheidenden Vorteil, dass sie wesentlich weniger Strom konsumieren. So verbrauchen die RPI-Modelle nur knapp 3 Watt, was die Stromrechnung im Dauerbetrieb nicht unnötig belastet. Und gerade der RPI3 bietet mit seinen vier schnell getakteten Kernen und doppelt so viel Arbeitsspeicher genug Potenzial als ausgewachsener FHEM-Server.Hinzu kommt, dass der RPI3 neben einem normalen Netzwerkanschluss weiterhin ein eingebautes WiFi- sowie Bluetooth-Modul mitbringt und damit perfekt für einen kabellosen Betrieb geeignet ist. So lässt sich bspw. die Bluetooth-Anwesenheitserkennung - im Artikel Howto: Mit FHEM Push-Nachrichten aufs iPhone schicken (Update) erklärt - ohne zusätzlichen Bluetooth-Dongle umsetzen.Genau wie der RPI2 auch, bietet er weiterhin 4 USB-Ports für den Anschluss von Gateway-Sticks (z.B. für die Unterstützung von FS20, HomeMatic, ZWave, Zigbee) samt 26 GPIO-Pins für DIY-Erweiterungen aller Art.Affiliate-Link

    Zum Betrieb werden dann noch ein passendes Netzteil und eine MicoSDHC-Karte benötigt.Da am RPI3 mehrere stromhungrige Verbraucher per USB betrieben werden können, empfiehlt sich direkt ein Netzteil mit 3A (Affiliate-Link) einzusetzen. Auf diese Weise kann der Pi auf max. 15 Watt zurückgreifen und besitzt damit genug Reserven.Affiliate-Link

    Da Speicherkarten inzwischen wirklich günstig sind, kann man gleich zu einer 32GB SanDisk MicroSDHC-Karte (Affiliate-Link) mit einer ordentlichen Lese- und Schreibrate greifen. Davon habe ich mittlerweile ettliche im Dauereinsatz (FHEM-Server, Plex-Clients) - bisher ohne jegliche Probleme.Affiliate-Link

    Nicht zwingend notwendig aber dennoch sinnvoll ist die Unterbringung des RPI in einem passenden Gehäuse. Für das Modell 2 und 3 empfielt sich das offizielle Gehäuse (Affiliate-Link) inkl. Kühlkörper, die auf CPU und GPU aufgeklebt werden. Durch die eher winzig wirkenden Kühlkörper - sind nicht zwingend notwendig - bleiben die Komponenten etwas kühler, was die Lebensdauer erhöhen bzw. bei etwaigen Übertraktungsversuchen etwas mehr Spielraum schaffen dürfte.Affiliate-Link

    [h=3]Konfiguration des RPI - Betriebssystem Raspbian installieren[/h]Damit FHEM installiert werden kann, wird ein Betriebssystem auf dem RPI vorausgesetzt. Hier bietet sich die fertig kompilierte Linux-Distribution Raspbian an, welche aktuell in der Version "Jessie" bereitgestellt wird.Direktdownload Raspbian Jessie Light
    Nach dem Download wird die zip-Datei auf der Festplatte entpackt und muss nun noch auf die MicroSDHC-Karte geflasht werden, welche später im RPI ihre Arbeit verrichten wird.Windows-Anwender können den win32diskimager nutzen:win32diskimager Direktdownload (Windows)Zuerst das heruntergeladene und entpackte Image unter Image File auswählen (1).
    Dann die MicroSDHC-Karte unter Device auswählen (2). Achtung: Der gesamte Inhalt der Karte wird beim Flashvorgang gelöscht!
    Zum Schluss den Flashvorgang mit Write starten (3).
    Nach einigen Minuten sollte der Vorgang erfolgreich abgeschlossen sein.Wer OSX auf einem Mac einsetzt, kann das Image mit dem Pi Filler auf die MicroSDHC-Karte flashen:Pi Filler Direktdownload (OSX)
    Ist der Schreibvorgang abgeschlossen, wird die MicroSDHC-Karte ausgeworfen und kann direkt in den MicroSD-Reader des Raspberry Pi gesteckt werden.[h=3]RPI in Betrieb nehmen und IP-Adresse ermitteln[/h]Jetzt den RPI ans Netzwerk anstecken und mit Strom versorgen. Nach dem Einschalten blinken kurz alle Lämpchen, nach dem Hochfahren leuchtet dann nur noch das rote Licht. Beim alten RPI1 war das noch etwas anders. Bei ihm leuchten nach kurzer Zeit alle Lämpchen - orange, grün und rot.Nun wird die IP-Adresse des RPI benötigt. Diese wird gewöhnlich vom Router (z.B. FritzBox) per DHCP zugewiesen und kann über das Router-Interface abgefragt werden. Bei einer FritzBox kann die Info im Menüpunkt Heimnetz -> Heimnetzübersicht eingesehen werden. Der RPI taucht hier gewöhnlich als "raspberrypi" auf.
    Bei der aktuellen Fritz!Box-Software wird die IP-Adresse blöderweise nicht mehr direkt in der Übersicht angezeigt, sodass man noch einmal auf "Details" klicken muss. Dumm nur, wenn man mehrere RPIs im Einsatz hat, die standardmäßig alle den selben Namen tragen.In den Details wird dann noch der Haken bei "Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen" gesetzt, damit sich die IP später nicht bei einem Neustart o.Ä. verändert.
    Die IP des RPI lässt sich aber bspw. auch über das Mac-Tool Pi Finder herausfinden.Pi Finder Direktdownload (OSX)Im nachfolgenden Beispiel lautet die IP des RPI:
    192.168.3.178Wer eine statische IP-Adresse manuell vergeben möchte, kann im Artikel FHEM-Kundenprojekt: Pimp my Keller mit HomeMatic und Sonos nachlesen. Hier ist alles detalliert beschrieben.[h=3]SSH-Login auf dem RPI[/h]Als nächstes erfolgt der Login per SSH-Konsole auf dem RPI. Unter Windows kann das Tool PuTTY genutzt werden:PuTTY Direktdownload (Windows)Unter Host Name (or IP address) wird die vorher ermittelte IP-Adresse des RPI eingegeben. Mit Open wird die Verbindung hergestellt.
    In der Terminalsicht wird bei Login as: der Benutzer pi eingegeben. Das Standardpasswort, welches im Anschluss abgefragt wird, lautet raspberry. Hat der Login geklappt, sieht es so aus wie im Screenshot.
    Wer einen Mac benutzt, kann statt PuTTY die bereits installierte Terminal-App benutzen. Dazu in die Spotlight-Suche (auf dem Desktop die Lupe oben rechts) "Terminal" eingeben und den entsprechenden Treffer auswählen. Der Login erfolgt hier mit dem Konsolenbefehl:
    ssh pi@192.168.3.178
    Nach dem Drücken der Enter-Taste kommt eine Abfrage, die mit yes -> Enter bestätigt wird. Das Standardpasswort lautet natürlich ebenfalls raspberry. Erhält man den Fehler Host key verification failed., muss der Befehl "ssh-keygen -R 192.168.3.178" eingegeben und der Login-Befehl wiederholt ausgeführt werden.Ist der Login erfolgt - egal ob per PuTTY oder Terminal-App - sollte erst einmal das Raspbian-Standardpasswort geändert werden. Das geschieht über den Konsolenbefehl


    und der Eingabe des alten und nun doppelten Eingabe des neuen Passworts, welches beim nächsten Login abgefragt wird. Also gut merken!FHEM ist später auf die richtige Zeit angewiesen, um Befehle rechtzeitig zu schalten und die Zeitstempel bei Log-Einträgen korrekt zu schreiben. Deshalb muss der RPI die richtige Zeitzone erhalten.


    führt in ein grafisches Interface, in welchem die richtige Zeitzone ausgewählt werden kann. Hier per Keyboard erst "Europe" und dann im zweiten Schritt "Berlin" auswählen. Hierbei muss jeweils durch Druck auf die Enter-Taste bestätigt werden. Die Navigation per Maus funktioniert im Terminal übrigens generell nicht.
    Damit der RPI den gesamten Speicherplatz der SD-Karte nutzen kann, wird das Filesystem im nächsten Schritt erweitert. Mit dem Befehl


    gelangt man in ein weiteres grafisches Interface. Hier wird die Option "Expand Filesystem" bzw. "expand_rootfs" ausgewählt und mit Enter bestätigt.
    Jetzt wird die Mitteilung "Root partition has been resized. The filesystem will be enlarged upon next reboot" angezeigt. Mit Enter gelangt man zurück zum "Configuration Tool".Um die Bearbeitung abzuschließen, klickt man im Menü zwei mal nach rechts, sodass der Eintrag <Finish> rot markiert ist und bestätigt mit Enter.
    Die Rückfrage Would you like to reboot now? wird mit der aktiven Auswahl von <YES> und einem weiteren Klick auf Enter bestätigt. Die Terminal-Verbindung zum Raspberry Pi wird jetzt automatisch getrennt und muss nach dem Reboot des RPI neu aufgebaut werden - jetzt mit dem vorher neu vergebenen Passwort.Um das System auf den aktuellen Stand zu bringen, wird nach dem erneuten Login per Terminal ein komplettes Systemupdate durchgeführt, welches je nach Internetanbindung und zu installierender Pakete mehrere Minuten dauern kann. Anschließend werden nicht benötigte Pakete entfernt und das System nochmals neugestartet.


    Nach dem Reboot des RPI erstmal wieder per ssh einloggen und nachfolgende Befehle absetzen, um alle notwendigen Voraussetzungen und zum Schluss auch FHEM zu installieren:


    Der Code wurde aus dem FHEM-Wiki entnommen und mit notwendigen Ergänzungen angereichert. Sobald der Code im Terminal abgesetzt wurde, sollte nach einiger Zeit der Eintrag "Starting fhem..." erscheinen. Ab jetzt läuft FHEM immer sobald der RPI gestartet wird.Das Webinterface ist ab sofort auch unter http://192.168.3.178:8083 erreichbar. Hier muss natürlich jeder die eigene IP-Adresse ersetzen, der Port 8083 am Schluss bleibt unverändert.
    [h=3]Erste Schritte in FHEM[/h]Bevor man jetzt direkt losstartet, sollte man noch einige Dinge initial durchführen, um das System abzusichern und auf den neuesten Stand zu bringen.Sofern man auch außerhalb des eigenen Netzwerks auf FHEM zugreifen möchte, sollte man den Zugriff per Passwort sichern. Dazu zählt der klassische Webzugriff, der standardmäßig per Port 8083 erreichbar ist.Als erstes muss man per Terminal einen Benutzernamen-Passwort-String im Base64-Format erzeugen. Das sieht dann bspw. so aus (jay ist der Benutzername und meintechblog das Passwort):


    Als Ergebnis wird der StringamF5Om1laW50ZWNoYmxvZw==ausgespuckt, welcher gleich in FHEM benötigt wird.Im FHEM-Interface gelangt man über den Menüpunkt Everything und WEB zu den Parametereinstellungen des betreffenden Zugriffselements, welches den Webservice auf Port 8083 zur Vefügung stellt.
    Hier wählt man das Attribut basicAuth (1) und trägt im nachfolgenden Textfeld den ermittelten base64-String ein (2).
    Bestätigt wird die Eingabe über einen Druck auf den Button attr (3). Jetzt wird man bereits nach den gerade hinterlegten Logindaten gefragt, welche nun eingegeben werden müssen.
    Dauerhaft gespeichert wird die Einstellung schließlich über einen Klick auf Save config (4).
    Diese Schritte lassen sich dann neben dem Device "WEB" auch weiter für die Devices "Webphone" und "WEBtablet" mit den Port 8084 und 8085 wiederholen, welche standardmäßig bereits aktiviert sind. Wer neben dem unter Port 8083 zur Verfügung gestellten Webservice keine weiteren benötigt, kann die überflüssigen Einträge auch mit dem Button "Delete this device (WEBphone)" im jeweiligen Device löschen.Weiterhin stellt FHEM einen Telnetport 7072 bereit, welcher standardmäßig aktiviert ist und ebenfalls noch per Passwort geschützt werden sollte. Hierzu gibt man folgenden Befehl in die FHEM-Kommandozeile (die lange Textzeile oben im FHEM-Webinterface) ein:


    meintechblog ist in diesem Beispiel das verwendete Passwort, welches jeder entsprechend anpassen und sicher gestalten sollte. Hier ist keine base64-Formatierung notwendig, also einfach das gewünschte Passwort direkt eingeben. Jetzt sollte die Mitteilung telnetPort: creating device allowed_telnetPort for attribute password erscheinen. Um die Änderung dauerhaft zu speichern jetzt noch einmal auf Save config unterhalb des FHEM-Logos klicken.Als nächstes wird ein Update von FHEM durchgeführt. Dies geschieht über die Eingabe von update in die FHEM-Kommandozeile (Textschlitz oben im FHEM-Interface).
    Nach einer Weile ist der Vorgang mit dem Hinweis "update finished..." abgeschlossen. Jetzt muss noch shutdown restart in die FHEM-Kommandozeile eingegeben werden, um das System einmal neuzustarten.
    Nach einigen Sekunden sollte das System dann bereits wieder erreichbar sein und man kann beginnen die gewünschten Devices anzulernen und zu nutzen. Input zum Thema FHEM sollte es im Blog ja mittlerweile genug geben. :)[h=3]Aus meinem täglichen Leben[/h]FHEM leistet mir jetzt bereits seit einigen Jahren treue Dienste. Gerade der Einstieg fiel auch mir damals nicht wirklich leicht und deshalb hoffe ich sehr, dass dieses Einstiegstutorial vielen Neueinsteigern weiterhilft.Wer noch vor der Enscheidung steht, welcher Raspberry Pi als FHEM-Server herhalten soll, dem kann ich klar den Tipp geben direkt das Spitzenmodell zu nutzen, derzeitig der Raspberry Pi 3 (Affiliate-Link).Gerade mit vielen Devices, Modulen und Funktionen ist der höher getaktete Vierkerner den Vorgängermodellen als FHEM-Server ein gutes Stück überlegen. Der Aufpreis des RPI3 ist dabei verschwindend gering. Wer das erste RPI-Modell einsetzt und mit der Performance unzufrieden ist, sollte dem RPI-Modell der dritten Generation eine Chance geben, denn nicht immer ist gleich ein Rechner mit Intel-Architektur notwendig, wie bspw. im Artikel Intel NUC als Smart Home Server - FHEM on steroids angesprochen.Damit das System dauerhaft stabil läuft, sollte man zudem ein leistungsfähiges Netzteil mit 3A (Affiliate-Link) einsetzen, um genug Reserven zu haben, auch wenn mehrere USB-Verbraucher am RPI betrieben werden. Wer wenig bis keine Periphere plant, kommt aber sicher auch mit einem 2A-Netzteil aus. Bei der Neuanschaffung hält sich der Auf- bzw. Minderpreis aber in Grenzen, also besser gleich zum 3A-Modell greifen.In Sachen Speicher habe ich schon vieles ausprobiert und bin nun schließlich bei der 32GB SanDisk MicroSDHC-Karte (Affiliate-Link) gelandet. Hier habe ich Modelle zwischen 8 und 64GB im Einsatz, wobei die 32GB-Variante ein super Preis-Leistungsverhältnis bietet. Durch den ausreichenden Speicherplatz braucht man keine Angst zu haben, dass die Logfiles aus Platzmangel nicht mehr geschrieben werden können und durch den Class 10-Standard ist die Karte schnell genug für alle denkbaren Aufgaben (schnelles Booten und schneller Zugriff auf Daten während des Betriebs).

    Quelle: http://www.meintechblog.de/

    • Zitieren

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!

Benutzerkonto erstellen Anmelden

Spenden

Vielen Dank für die Unterstützung!
Hiermit unterstützt du Zebradem.
Das beinhaltet überwiegend die Serverkosten und Lizenzgebühren.
Spenden

Letzte Beiträge

  • ECHO gegen Malware: Ein revolutionäres Tool zur Selbstzerstörung von Schadsoftware

    heugabel 12. Mai 2025 um 12:27
  • Samsung TV Plus/Rakuten TV

    Fellfresse 10. Mai 2025 um 22:07
  • Pluto TV

    Fellfresse 10. Mai 2025 um 20:59
  • Elektronische Patientenakte: Sicherheitsbedenken durch den CCC

    Katze Flohli 10. Mai 2025 um 08:58
  • Festnahmen von Online-Drogenhändlern in Deutschland

    heugabel 9. Mai 2025 um 08:27
  • KJM kritisiert öffentliche Sperrlisten

    heugabel 8. Mai 2025 um 14:27
  • Plex Live TV / LG Channels / Wedo TV

    Fellfresse 7. Mai 2025 um 21:31
  • Deutsche Bank Sicherheitsvorfall: Romantische Eskapaden im Rechenzentrum

    heugabel 7. Mai 2025 um 17:27
  • Social-Media-Verbot für Kinder: Ein Blick auf Deutschlands Herausforderungen

    Katze Flohli 7. Mai 2025 um 16:46
  • Die Pornhub-Sperre in Deutschland: Ein kurzes Fazit

    Katze Flohli 7. Mai 2025 um 07:29

Aktivste Themen

  • Raspberry Pi ab Ende Februar zu haben

    125 Antworten
  • Raspberry PI: Erste Bilder und Berichte

    42 Antworten
  • Raspberry PI Unterforum ?

    21 Antworten
  • Entwickler stellt Prototyp des 17-Euro-PCs vor!

    21 Antworten
  • Raspberry PI: Gehäuse und Gehäuse Ideen

    18 Antworten
  • Raspberry PI und Emu

    17 Antworten
  • RecalboxOS – Die Retro-Gaming-Plattform für den Raspberry Pi 2

    12 Antworten
  • Raspberry Pi Lieferzeit Farnell vs. RS-Components

    12 Antworten
  • Ambilight

    11 Antworten
  • Display für Raspberry zwecks Oscam Information

    11 Antworten
  1. Kontakt
© 2024 Zebradem - Software by WoltLab
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Dateien
  • Forum
  • Erweiterte Suche
Zitat speichern