Die mit ** gekennzeichnete Links auf dieser Seite sind Affiliatelinks. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.
Für das Betreiben z.B. eines FHEM Servers ist ein Raspberry der aktuellen Baureihe durchaus ausreichend. Diese Anleitung basiert auf dem aktuellen Raspberry Pi 3 Model B V1.2. Natürlich kann hier aber auch ein Raspberry der ersten oder zweiten Generation verwendet werden. Allerdings sind diese im Vergleich zum aktuellen Model langsamer und mit weniger Hardwarefeatures ausgestattet.
Raspberry Pi 1 | Raspberry Pi 2 | Raspberry Pi 3 | Raspberry Pi 3 B+ | Pi Zero W | |
CPU | ARMv6 (32-bit) 1x 700 MHz | ARMv7 (32-bit) 4x 900 MHz | ARMv8-A (64-bit) 4x 1200 MHz | ARMv8-A (64-bit) 4x 1400 MHz | ARMv6 (32-bit) 1x 1000 MHz |
Arbeistspeicher | 512 MB | 512MB | 1024MB | 1024MB | 512 MB |
Netzwerk Ethernet | 10/100-MBit-Ethernet | 10/100-MBit-Ethernet | 10/100-MBit-Ethernet | 10/100/1000-MBit-Ethernet | nicht vorhanden |
Netzwerk WLAN | nicht vorhanden | nicht vorhanden | 2,4 GHz b/g/n | 2,4/5 GHz ,ac | 2,4 GHz b/g/n |
Bluetooth | nicht vorhanden | nicht vorhanden | 4.1 Low Energy | 4.2 LS BLE | 4.1 Low Energy |
GPIO-Pins | 17 | 26 | 26 | 26 | 26 |
Preisempfehlung | ca. 25€ | ca. 35€ | ca. 35€ | ca. 35€ | ca. 10€ |
Quelle: https://de.wikipedia.org/wiki/Raspberry_Pi **
Wie in der Übersicht zu sehen ist, verfügt der aktuelle Raspberry Pi 3 schon über ein integriertes WLAN und Bluetooth Modul. Da der Preisunterschied zum Raspberry Pi 2 nicht wirklich vorhanden ist, macht bei einer Neuanschaffung nur ein Raspberry Pi 3 sinn.
Grundsätzlich würde ich euch empfehlen ein Starter Kit zu kaufen. In diesem sind in der Regel folgende Teile schon enthalten:
Im Bereich Netzteil kann ich euch nur empfehlen das Offizielle Raspberry Netzteil** zu verwenden. Gerade hier ist es wichtig, dass der Raspberry mit einem zuverlässigen Netzteil versorgt wird. Günstige Nachbauten verursachen immer wieder Abstürze oder dubioses Verhalten der Raspberry, vor allem dann, wenn noch zusätzliche USB Geräte an diesem angeschlossen wurden.
Folgende Hardware habe ich für diese Anleitung verwendet:
Hierbei handelte es sich um ein Starter Kit mit schwarzem Gehäuse.
Das Raspberry Modul muss hier nur in das Gehäuse gelegt werden. Es werden keine Schrauben benötigt.
Diese Variante ist ohne zusätzlichen Kühler. So lange Ihr euren Raspberry nicht übertaktet, werden diese in der Regel auch nicht benötigt.
Sollte Eure SD Karte schon mal mit einem Raspbian bespielt worden sein, müsst Ihr zuerst alle Partition auf dieser löschen. In der Regel zeigt Windows hier nur eine SD Kartengröße von ca. 50-60MB an. Um die Karte zu löschen, müsst Ihr in einer Eingabeaufforderung das Programm "diskpart" starten. Dort müsst Ihr dann folgende Befehle absetzen:
list disk
select disk X
clean
exit
Mit dem Befehl "list disk" könnt Ihr herausfinden, welcher Datenträger die SD Karte ist. Hier in diesem Beispiel ist es der "Datenträger 2"
Jetzt kann mit dem Befehl "select disk 2" der entsprechende Datenträger ausgewählt werden.
Mit "clean" wird der komplette Datenträger gelöscht.
Mit "exit" kann "diskpart" wieder beendet werden
Nachdem Ihr "diskpart" beendet habt müsst Ihr die SD Karte aus dem System wieder entfernen. Dies ist notwendig, damit Windows die neue Partitionstabelle einliest und die Datenträgergröße wieder korrekt anzeigt.
Jetzt könnt Ihr auf die SD Karte das aktuelle Raspberry Image kopieren. Ich verwende hierfür das fertig kompilierte Raspbian welches Ihr hier https://www.raspberrypi.org/downloads/raspbian herunterladen könnt.
Auf der Webseite werden zwei Varianten zum Download angeboten.
Bitte hier die "LITE" Variante herunterladen.
Die heruntergeladene ZIP-Datei muss anschließend entpackt werden.
Danach kann die entpackte *.img Datei auf die SD Karte aufgespielt werden.
Zum Aufspielen der entpackten Image Datei verwende ich das Programm "Win32 Disk Imager". Dies könnt Ihr hier https://sourceforge.net/projects/win32diskimager herunterladen. Die Installation von "Win32 Disk Imager" ist sehr einfach gehalten. Hier die Screenshots von der Installation.
Direkt nach der Installation sollte sich "Win32 Disk Imager" automatisch starten.
Der Fortschritt der Installation wird Euch im unteren Bereich der Anwendung angezeigt. Dieser Vorgang dauert ein paar Minuten.
Fertig
Damit Ihr später die Installation per SSH machen könnt, müsst Ihr den Inhalt der SSD Karte noch anpassen.
Hierfür legt Ihr direkt in das Rootverzeichnisses der SD Karte die Datei "ssh". Bitte achtet darauf, dass die Datei ohne eine Dateiendung dort erstellt wird. Eine korrekte Datei erkennt Ihr an dem Dateityp "Datei". Bei einer Textdatei würde hier "Textdatei" stehen.
Die Datei selber kann ohne Inhalt erstellt werden.
Wenn Ihr WLAN mit Eurem Raspberry nutzen wollt, müsst Ihr noch die Datei "wpa_supplicant.conf" im Rootverzeichnis erstellen. Folgenden Inhalt muss die Datei aufweisen:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE
network={
ssid="*SSID*"
psk="*Netzwerkschlüssel*"
key_mgmt=WPA-PSK
}
Bitte achtet darauf dass Ihr die Datei im UNIX Format abspeichert.
Die Datei muss im Rootverzeichnis abgelegt werden.
Jetzt könnt Ihr die SD Karte in den Raspberry stecken und diesen dann mit Strom versorgen.
Zum Abschluss der Installation gibt es jetzt zwei Möglichkeiten:
Egal für welche Variante Ihr Euch entscheidet, die eigentliche Installationsanleitung ist immer die selbe. Für die erste Variante müsst Ihr zuerst die IP-Adresse des Raspberrys herausfinden. Hier habe ich Euch zwei Beispiele:
Fritzbox
Windows DHCP
Hier in unserem Beispielt ist es die IP "10.10.0.26".
Bei der zweiten Möglichkeit müsst Ihr darauf achten, dass das Tastaturlayout zuerst noch auf EN steht. Da das standard Raspberry Kennwort "raspberry" ist, müsst Ihr bei der ersten Anmeldung(NUR über Console) anstatt der Taste "Y" die Taste "Z" verwenden.
Da Ihr die IP-Adresse erfolgreich ermittelt habt, könnt Ihr hier jetzt mit der Installation per Putty weitermachen. Für die SSH Verbindung zum Raspberry werwende ich Putty. Dies könnt Ihr hier https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html herunterladen. Am Besten verwendet Ihr hier die portable Version, denn diese benötigt keine Installation.
Im Bereich(1) müsst Ihr die ermittelte IP-Adresse eintragen.
im Bereich(2) muss der Port "22" eingetragen sein. Dieser wird in der Regel automatisch eingetragen, wenn der Connection Typ auf SSH steht.
Jetzt könnt Ihr die Verbindung mit "Open" starten.
Bei der allerersten Verbindung mit Eurem Raspberry müsst Ihr noch den Fingerprint Key mit "Ja" bestätigen.
Nachdem die Puttysitzung geöffnet ist, könnt Ihr Euch mit den Standard Anmeldedaten anmelden.
Wenn alles geklappt hat, sollte Euer Putty ähnlich aussehen.
Grundsätzlich ist das Raspbian schon für FHEM einsatzbereit. Trotzdem sollten noch folgende Dinge vorab konfiguriert werden:
Zum Starten der Konfiguration müsst Ihr folgenden Befehl in der SSH Sitzung benutzen:
sudo raspi-config
Danach zeigt sich folgendes Bild:
Hier wählen wir dann "4 Localisation Options", um ins nächste Menü zu gelangen.
Hier wählen wir dann "I1 Change Locale", um ins eigentliche Konfigurationsmenü zu gelangen.
Hier wählen wir dann "de_DE.UTF-8 UTF-8" aus, und setzen mit der Leertaste den Stern.
Danach dann mit "OK" bestätigen
Zum Abschluss hier noch "de_DE.UFT-8" auswählen, und mit OK wieder bestätigen.
Direkt danach fängt Raspbian an sich zu konfigurieren.
Hier wählt Ihr dann "4 Localisation Options", um ins nächste Menü zu gelangen.
Hier wählen wir dann "I2 Change Timezone" um ins eigentliche Konfigurationsmenü zu gelangen.
Hier "Europe" auswählen, und mit OK bestätigen
Hier "Berlin" auswählen, und mit OK bestätigen
Hier wählt Ihr dann "4 Localisation Options" um ins nächste Menü zu gelangen.
Hier wählt Ihr "I4 Change Wi-fi Country", um ins eigentliche Konfigurationsmenü zu gelangen.
Hier "DE Germany" auswählen, und mit OK bestätigen
Hier wählt ihr "2 Network Options", um ins nächste Menü zu gelangen.
Hier wählt Ihr "N1 Hostname", um ins eigentliche Konfigurationsmenü zu gelangen.
Hier kann jetzt der neue Hostname vergeben werden.
In früheren Version war es nötig den Speicher der SD Karte zu erweitern. Mit dem aktuellen Image sollte dieser Vorgang beim ersten Start erledigt werden. Der Vollständigkeit-halber habe ich Euch die Anleitung trotzdem hier mal angefügt.
Hier wählt Ihr "7 Advanced Options", um ins nächste Menü zu gelangen.
Hier wählt Ihr "A1 Expand Filesystem", um die Partition direkt zu vergrößern.
Um die Lebensdauer Eurer SD Karte zu verlängern, sollten noch folgende Dinge angepasst werden:
Bei jedem lesenden Zugriff wird bei Dateien und Verzeichnissen das Attribut "Accesstime" verändert. Um dies zu verhindern, müsst Ihr in die Datei "/etc/fstab" noch zwei Parameter setzen. Zum Editieren der Datei benutzt Ihr folgenden Befehl:
sudo nano /etc/fstab
In die rot markierte Zeile müsst Ihr beiden Parameter "nodiratime,noatime" ergänzen.
Zum Abschluss legt Ihr noch die Verzeichnisse in den RAM, die am häufigsten verändert werden. Eines gilt es hier allerdings zu beachten! Wenn der Raspberry neu gestartet wird, sind die Daten welche zur Laufzeit geändert wurden, wieder weg. Um die Verzeichnisse in den RAM zu legen, müsst Ihr folgende Zeilen an das Ende der Datei "/etc/fstab" hinzufügen:
tmpfs /tmp tmpfs defaults,noatime,nosuid,size=80m 0 0
tmpfs /var/tmp tmpfs defaults,noatime,nosuid,size=30m 0 0
tmpfs /var/log tmpfs defaults,noatime,nosuid,mode=0755,size=80m 0 0
tmpfs /var/spool/mqueue tmpfs defaults,noatime,nosuid,mode=0700,gid=12,size=30m 0 0
Nach den Änderungen müsst Ihr einen Neustart durchführen. Hierfür folgenden Befehl ausführen:
sudo reboot
Nachdem Reboot macht Ihr mit der Änderung des Kennwortes für den Benutzer "pi" weiter. Hierfür verwendet Ihr folgenden Befehl:
passwd
Jetzt müsst Ihr einmal das alte Kennwort eingeben. Danach dann zweimal das Neue.
Generell empfehle ich Euch dem Raspberry eine feste IP-Adresse zu geben. Hier würde ich auch keine Reservierung im DHCP empfehlen. Es ist immer besser, wenn der Raspberry über eine fest eingetragene IP-Adresse verfügt, und nicht auf andere Systeme angewiesen ist. Um eine feste IP-Adresse zuzuweisen, müsst Ihr die Datei "/etc/dhcpcd.conf" editieren. Um dies zu tun, müsst Ihr erst mal prüfen, auf welcher Netzwerkkarte das System läuft. Dies könnt Ihr über folgenden Befehl tun:
ifconfig
Hier seht Ihr dann die entsprechende Netzwerkschnittstelle. In unserem Fall handelt es sich um "eth0".
Jetzt können wir die Datei "/etc/dhcpcd.conf" editieren. Hierfür verwenden wir den Befehl:
sudo nano /etc/dhcpcd.conf
In diese Datei fügen wir dann folgend Konfiguration an das Ende der Datei an:
interface eth0
static ip_address=10.10.0.233/24
static routers=10.10.0.1
static domain_name_servers=10.10.0.1
Mit der Tastenkombination CTRL & X könnt Ihr den Nano Editor wieder beenden. Danach noch die Änderung mit "Ja" speichern. Direkt danach solltet Ihr den Raspberry neu starten. Nach dem Neustart ist der Raspberry über die neue IP-Adresse erreichbar.
Damit Eure Raspberry immer die aktuelle Uhrzeit hat, konfiguriert Ihr noch NTP. Hierfür müsst Ihr NTP zuerst installieren. Hierfür verwendet Ihr folgenden Befehl:
sudo apt install ntp
Direkt nach der Installation könnt Ihr mit folgendem Befehl prüfen ob NTP schon läuft:
sudo systemctl status ntp
Das Ergebnis sollte dann ungefähr so aussehen:
Da alle meine Geräte sich die Zeit von meiner Fritz!Box holen, trage ich diese in die NTP Konfiguration ein. Dafür muss der Inhalt der Datei "/etc/ntp.conf" geändert werden.
sudo nano /etc/ntp.conf
Hierfür folgenden Bereich anpassen:
Mit der Tastenkombination CTRL & X könnt Ihr den Nano Editor wieder beenden. Danach noch die Änderung mit "Ja" speichern.
Die Firmware ist für die Unterstützung diverser Hardware verantwortlich. Sollte es mal vorkommen, dass eine neue Hardwarekomponente nicht funktioniert, kann es durchaus an einer veralteten Firmware liegen. Daher empfehle ich Euch die Firmware bei größeren Änderungen auch gleich mit zu aktualisieren. Über folgenden Befehl könnt Ihr Euch die aktuell installierte Version anzeigen:
uname -a
Das Ergebnis sieht dann ungefähr so aus:
Für das eigentliche Update benutze ich das Updateskript von Hexxeh. Um dies zu nutzen, müsst Ihr folgende Befehle ausführen:
sudo apt-get update
sudo apt-get install git
sudo wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update
sudo rpi-update
sudo reboot
Nach dem Neustart könnt Ihr dann noch mal die Firmwareversion prüfen.
uname -a
Als letzten Schritt bringt Ihr das Raspbian auf den aktuellsten Stand. Hierfür könnt Ihr folgende Befehle benutzen:
sudo apt-get update
sudo apt-get -y upgrade
sudo reboot
Nach dem Neustart sind dann alle Vorbereitungen abgeschlossen. Jetzt könnt Ihr mit der eigentlichen FHEM Installation beginnen. Die Anleitung für die FHEM Installation findet Ihr hier.
Kommentar schreiben