Jetzt geht’s los. Ich bin ganz aufgeregt! In diesem Artikel geht es um die Einrichtung von Home Assistant (HA) auf einem Raspberry Pi. Dieser muss dafür erstmal vorbereitet werden. Wie man das Image auf die SD-Karte flasht, werde ich hier nicht beschreiben – im Internet gibt es genügend Anleitungen dafür. Außerdem gehe ich davon aus, dass jemand, der einen Raspberry Pi verwendet, etwas mehr Ahnung hat als der Standardanwender, der gerade erst begriffen hat, dass die Maus kein Futter braucht…

Am Ende dieses Artikels sollte der Raspi übers Netzwerk erreichbar und die erste Einrichtung abgeschlossen sein.

Los geht’s!

Einrichtung des Raspberry Pi

Am Anfang war das Betriebssystem. Der Raspberry Pi läuft traditionell mit Linux; es gibt zwar auch ein „Windows on IoT“, das fristet aber eher ein Nischendasein. Da ich mir vorstellen kann, dass so eine HA-Installation mit diversen AddOns doch recht ressourcenhungrig sein kann, sollte es also ein aktueller Raspi 4 sein. Und wenn der etwas mehr als 1GB RAM hat, ist das auch nicht schlimm (ich habe mal testweise HA mit diversen AddOns auf einem 1GB-Raspi hochgezogen; das macht nicht wirklich Spaß). Da trifft es sich ja wirklich gut, dass die Raspberry Pi Foundation gerade vor ein paar Tagen ein neues Modell mit 8GB herausgebracht hat (der auf dem Raspi verwendete Chip kann bis zu 16 GB, entsprechende Speicherriegel sind aber noch nicht wirklich lieferbar).

Die Sache hat allerdings einen kleinen Haken: Das Standard-Betriebssystem „Raspbian“ basiert auf Debian und ist ein 32 Bit-System. 32 Bit können aber nur 4GB RAM adressieren. Nun mag man sich fragen, wer so blöd ist, sein Geld für einen Raspi mit 8GB auszugeben, wenn man doch eh nur 4GB nutzen kann. Die Frage ist berechtigt, aber… Erstens können auch 32 Bit mit mehr als 4GB umgehen (jeder Prozess kann bis zu 4GB RAM verwenden) – fragt mich nicht, wie das geht, so tief stecke ich nicht in der Materie drin. Und zweitens gibt es seit kurzem das Betriebssystem auch in 64 Bit. In dem Zuge wurde es gleich umbenannt (es heißt nicht mehr Raspbian, sondern RaspiOS). Es hat noch einen Beta-Status, läuft aber erstaunlich stabil. Ich sehe deshalb keinen Grund, es nicht zu verwenden (soll ja nur ein produktives System werden, da kann man schonmal Beta-Software nutzen – ist bei Windows ja mittlerweile auch so). Der Link zum Image ist auf der Seite vermerkt.

Wir schreiben das heruntergeladene Image  als erstes auf die SD-Karte (ob wir dafür den Balena Etcher oder den Win32DiskImager verwenden oder das ganz klassisch mit dd machen, sei jedem selbst überlassen). Wichtig ist aber, dass wir, bevor wir die SD-Karte auswerfen / unmounten, noch eine Kleinigkeit anpassen: Auf der ersten Partition der Karte legen wir eine leere Datei mit dem Namen ssh an. Groß-/Kleinschreibung sollte egal sein – ob sie nun ssh heißt oder SSH, dürfte keinen Unterschied machen.

Das Anlegen dieser Datei hat einen ganz einfachen Hintergrund: Der Raspi soll irgendwo stehen, wo nicht immer Monitor und Tastatur vorhanden sind. Die erste Einrichtung soll auch schon übers Netzwerk erfolgen. Damit der SSH-Server aktiviert wird, muss diese Datei vorhanden sein.

Ist das erledigt, werfen wir die SD-Karte aus, schieben sie in den Raspberry Pi und schließen Netzwerk- und Stromkabel an.

Dann gucken wir auf unseren DHCP-Server (das dürfte in den meisten Fällen eine FritzBox von AVM sein), welche IP-Adresse der Raspi gekriegt hat. Diese IP-Adresse merken wir uns und öffnen irgendein Programm, dass SSH-Verbindungen herstellen kann (das kann PuTTY sein oder auch das neue Windows-Terminal), geben die IP-Adresse ein und verbinden uns mit dem Raspi.

Beim ersten Verbindungsversuch wird eine Meldung angezeigt, dass der Sicherheitsschlüssel noch nicht bekannt ist, und der anwender gefragt, ob er mit diesem unbekannten Gerät wirklich eine Verbindung herstellen will. Um weiter zu kommen, sollte diese Frage bejaht werden; danach werden Benutzername („pi“) und Passwort („raspberry“) abgefragt – Achtung: Hier kommt es auf Groß- und Kleinschreibung an!

[singlepic id=336 w=800]

Sind wir angemeldet, rufen wir als Super User das Tool raspi-config auf:

sudo raspi-config

[singlepic id=337 w=800]

Weitere Screenshots erspare ich uns jetzt, aber die (meiner Meinung nach) relevanten Einstellungen will ich doch kurz durchgehen:

1 Change User Password: Aus meiner Sicht unheimlich wichtig, denn dass Standardpasswort ist bekannt. Also unbedingt das Passwort ändern!

2 Network Options

N1 Hostname: Der Standardname des Rechners ist raspberrypi. Wenn man nur einen einzigen hat und sicher ist, dass nicht irgendwann noch einer dazu kommt, kann man den so lassen. Sinnvoller ist aber die Vergabe eines neuen Namens. Ich nenne ihn „ha“.

N2 Wireless LAN: Hier kann man das WLAN aktivieren. Zuerst wird das Land abgefragt (das hängt damit zusammen, dass in den unterschiedlichen Ländern nicht alle Frequenzen gleichermaßen verwendet werden dürfen). Hier ist „de – Germany“ auszuwählen. Danach wird die SSID und das Passwort abgefragt.

4 Localisation Options

I1 Change Locale: Ändern auf de_DE.UTF-8

I2 Change Time Zone: Ändern auf Europe/Berlin – da hängt nicht nur die Uhrzeit dran, sondern auch bestimmte regionale Anpassungen, z. B. das Datumsformat.

I4 Change WLAN Country: Entfällt, wenn das WLAN bereits eingerichtet ist (siehe oben) oder nicht eingerichtet werden soll.

5 Interfacing Options

P2 SSH: Gerne aktivieren (auch wenn die ssh-Datei schon vorhanden ist)

7 Advanced Options

A1 Expand Filesystem: Auf jeden Fall! Das Image ist 4GB groß. Hat man eine größere SD-Karte verwendet, wird der Rest nicht genutzt. Erweitert man das Dateisystem auf den Rest (also die Gesamtgröße der SD-Karte), steht etwas mehr Speicher zur Verfügung.

Das sind die Punkte, die ich anpasse. raspi-config wird dann beendet und der Rechner neu gestartet. Damit ist die erste Einrichtung abgeschlossen.

Im nächsten Teil bringen wir dem Raspberry Pi bei, von einer USB-Festplatte zu booten.