You are currently viewing Home Assistant auf Raspberry Pi installieren und einrichten
Home Assistant mit Raspberry Pi

Home Assistant auf Raspberry Pi installieren und einrichten

Ich beschäftige mich viel mit Hausautomatisierung und besitze auch schon einige Komponenten. Das fängt an beim Staubsaugroboter, über Steckdosen und Heizungssteuerung bis hin zu elektrischen Rollläden. Die einzelnen Komponenten sind von verschiedenen Herstellern und somit brauche ich auch verschiedene Apps zur Steuerung. Über Google Home kann ich zwar alles verknüpfen, aber die Bedienung ist aus meiner Sicht nicht komfortabel und die Abläufe korrekt einzustellen ist auch nicht überragend. Ich brauchte also eine Alternative und habe über meine ehemaligen Arbeitskollegen von Home Assistant erfahren.

Verschiedene Installationen von Home Assistant

Es gibt aktuell insgesamt vier verschiedene Arten den Home Assistant zu installieren:

  • Home Assistant OS
  • Home Assistant Container
  • Home Assistant Core
  • Home Assistant Supervised

Die erste Installationsvariante Home Assistant OS ist ein minimales Betriebssystem, dass mit dem vollen Funktionsumfang von Home Assistant kommt. Dies steht zum Beispiel für den Raspberry Pi oder eine VM zur Verfügung.

Die Variante als Container lässt sich sehr komfortabel z.B. mit Docker installieren, aber bietet einen eingeschränkten Funktionsumfang, denn es fehlen die Supervisor Funktionen.

Der Core Variante ist eine manuelle Installation mit Hilfe einer virtuellen Python Umgebung. Die letzte Variante Home Assistant Supervised ist eine manuelle Installation mit Supervisor Funktionen. Weitere Details findest du auf der Home Assistant Seite.

Ich habe mich für die Installation auf einem Raspberry Pi entschieden und möchte ein Touch-Display anschließen, damit ich dies als zentrale Station in der Wohnung aufhängen kann. Durch ein Display, auf dem später die Home Assistant Oberfläche angezeigt werden soll, kann ich das Home Assistant OS für den Raspberry Pi nicht verwenden. Die Container und Core Variante kommt für mich auch nicht in Frage, weil der Funktionsumfang eingeschränkt ist. Also bin ich auf die Suche gegangen die Home Assistant Supervised Variante auf meinem Raspberry Pi zu installieren.

Hardware

Da ich noch mehrere Raspberry Pi’s zu Hause hatte und ein auch ein 7 Zoll Touch-Display, konnte ich schnell loslegen. Dazu noch ein Netzteil und die Micro-SD-Karte.

Raspberry Pi OS installieren und einrichten

Als erstes muss ich die SD-Karte mit dem Raspberry Pi OS vorbereiten. Dazu downloade ich das aktuellste Image mit der Desktop Variante (Link) und entpacke die zip-Datei. Für das flashen der SD-Karte benutze ich balenaEtcher (Link). Bevor ich die Micro-SD-Karte mit dem Betriebssystem in den Raspberry Pi einlege, speichere ich noch eine leere Datei mit dem Namen ssh auf der Boot Partition. Damit kann ich ohne weitere Konfiguration per SSH auf den Raspberry Pi zugreifen. Mache ich diesen Schritt nicht, muss ich den Zugriff für SSH erst nach dem ersten Start des Betriebssystems freischalten.

Ich stecke die vorbereitete SD-Karte in den Raspberry Pi, schließe das LAN-Kabel und das Netzteil an. Jetzt startet der Minicomputer und anschließend kann ich mich per SSH auf den Raspberry Pi schalten. Dazu verwende ich unter Windows das Tool Putty. Die IP-Adresse kann ich über meinen Router ermitteln und die Standard Benutzerdaten des Pi’s sind folgende:

  • Benutzer: pi
  • Passwort: raspberry

Jetzt kann ich schon mit der Installation von Home Assistant loslegen.

Installation der Home Assistant Supervised Variante

Ich habe also den Raspberry Pi gestartet und über das LAN-Kabel hängt dieser in meinem Netzwerk. Später werde ich auf WLAN umsteigen, aber für die Installation empfehle ich die stabilere Verbindung über das Kabel.

Updates & Abhängigkeiten installieren

Als erstes werden ich das System auf den neuesten Stand bringen und anschließend einige Abhängigkeiten installieren. Das System kann ich mit folgendem Befehl updaten:

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

Im folgenden Installiere ich die benötigten Abhängigkeiten:

sudo apt-get install jq wget curl avahi-daemon udisks2 libglib2.0-bin network-manager dbus apparmor -y

Ich den Raspberry Pi einmal neu.

sudo reboot

WLAN einrichten

Ich verwende weiterhin die Verbindung über das LAN-Kabel, aber werde das WLAN schon einmal einrichten. Da sich bei jedem neuen Verbindungsaufbau eine neue MAC-Adresse verwendet wird, kann ich über WLAN keine feste IP-Adresse vergeben. Das Generieren der zufälligen MAC-Adresse werde ich an dieser Stelle dann auch deaktivieren. Meine Vermutung ist, dass dieses Phänomen durch den installierten Network Manager auftritt. Das habe ich aber nicht weiter nachgeschaut.

Als erstes musste ich das Land festlegen, in dem ich das WLAN verwende.

sudo raspi-config

Die Einstellung finde ich unter Localisation Options > WLAN country und wähle DE Germany aus. Anschließend sollte ich den Raspberry Pi neu starten, falls ich nicht selbst aufgefordert werde.

sudo reboot

Als nächsten Schritt hinterlege ich das gewünschte WLAN. Dazu rufe ich die folgende Datei auf:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

In die Datei trage ich die Konfiguration für mein WLAN ein:

network={
     ssid="MeinNetzwerk"
     psk="MeinPasswort"
}

Damit das WLAN nicht in den Energiesparmodus versetzt wird, trage ich in die folgende Datei noch zwei Zeilen ein:

sudo nano /etc/network/interfaces

Diese zwei Zeilen ergänze ich in der Datei:

pre-up iw dev wlan0 set power_save off
post-down iw dev wlan0 set power_save on

Zufällige MAC-Adressen deaktivieren

Um später über WLAN eine feste IP-Adresse zuordnen zu können, schalte ich die zufällige Generierung der MAC-Adresse ab. Dazu rufe ich die folgende Datei auf:

sudo nano /etc/NetworkManager/conf.d/100-disable-wifi-mac-randomization.conf

Ich trage in die Datei folgende Zeilen ein:

[connection]
wifi.mac-address-randomization=1
[device]
wifi.scan-rand-mac-address=no

Anschließend starte ich den Raspberry Pi neu.

sudo reboot

Docker installieren

Für die Home Assistant Supervised Installation benötige ich Docker. Um Docker zu installieren lade ich mir das Installationsskript herunter.

curl -fsSL https://get.docker.com -o get-docker.sh

Anschließend führe ich das Installationsskript aus:

sudo sh get-docker.sh

Ob Docker wirklich installiert wurde, kann ich mit dem folgenden Befehl prüfen:

docker --version
HomeAssistant Docker Version
Ich überprüfe die Docker Version und habe die Version 20.10.14 installiert.

Ich muss jetzt noch meinen Benutzer (in meinem Fall ist es der Standardbenutzer pi) der Docker Gruppe hinzufügen.

sudo usermod -aG docker pi

OS-Agent für Home Assistant installieren

In der Dokumentation auf GitHub wird der OS-Agent beschrieben, dass dieser die Kommunikation zwischen dem Host System und dem Home Assistant Supervisor verbessern soll. Das klingt erstmal nicht verkehrt und deshalb werde ich diesen auch installieren.

Als erstes ermittle ich meine Kernel Architektur des Raspberry Pi’s, damit ich den richtigen OS-Agenten installiere. Dies mache ich mit dem folgenden Befehl:

uname -a
Home Assistant Kernel Architektur
Die Kernel Architektur ist in meinem Fall aarch64.

In dem GitHub Repository (https://github.com/home-assistant/os-agent/releases) kann ich mir dann die richtige Version aussuchen. Bei meiner Installation ist die Version 1.2.2 die aktuellste. Ich habe mir die richtige Version ausgesucht und lade diese herunter:

wget https://github.com/home-assistant/os-agent/releases/download/1.2.2/os-agent_1.2.2_linux_aarch64.deb

Als nächstes installiere ich das Paket.

sudo dpkg -i os-agent_1.2.2_linux_aarch64.deb

Für einen kurzen check, ob das Paket installiert wurde, kann ich folgenden Befehl ausführen:

gdbus introspect --system --dest io.hass.os --object-path /io/hass/os

Die Ausgabe sollte wie im nachfolgenden Bild in etwa aussehen.

Home Assistant Überprüfung OS-Agent
Die Ausgabe für die Überprüfung der Installation des OS-Agent sollte in etwa wie in dem Bild abgebildet aussehen.

Home Assistant Supervised Installer ausführen

In diesem Schritt werden wir den eigentlichen Home Assistant installieren. Dazu laden wir das Installationspaket von dem GitHub Repository (https://github.com/home-assistant/supervised-installer/releases) herunter. Die aktuelle Version, als ich diese Installation durchführe. ist die Nummer 1.1.1. Ich musste jedoch feststellen, dass ich die Version 1.1.1 nicht installieren kann und habe die Version 1.1.0 erfolgreich installiert. Das Installationspaket ist für alle Kernel Architekturen geeignet.

wget https://github.com/home-assistant/supervised-installer/releases/download/1.1.0/homeassistant-supervised.deb

Nach dem Download folgt die Installation des Pakets:

sudo dpkg -i homeassistant-supervised.deb

Um die Installation zu vollenden, muss ich in dem angezeigten Dialog mein Gerätetyp auswählen. Ich wähle in meinem Fall den raspberrypi3.

Home Assistant Gerätetyp
Bei der Installation des Home Assistant Supervisor muss ich meinen Gerätetyp angeben. In meinem Fall ist das der Eintrag raspberrypi3.

Eine erfolgreiche Installation ist in dem nachfolgenden Bild zu sehen.

Home Assistant Installation erfolgreich beendet
Die Home Assistant Installation ist erfolgreich beendet.

Home Assistant aufrufen

Die Installation ist erfolgreich beendet und ich kann im Browser mein Home Assistant aufrufen. Dazu starte ich meinen Browser und rufe die IP-Adresse mit dem Port 8123 auf z.B. 192.168.1.100:8123. Der erste Start von Home Assistant kann bis zu 20 Minuten dauern.

Home Assistant Start Vorbereitung
Der erste Start des Home Assistant kann bis zu 20 Minuten dauern.

Nach dem erfolgreichen Start, kann ich mein Konto einrichten. Dazu trage ich meinen Namen, einen Benutzernamen, der später mein Anmeldename ist, und ein Passwort ein, dass ich nochmal bestätigen muss ein.

Home Assistant Registrierung
Nach dem erfolgreichen Start von Home Assistant richte ich mein Konto ein.

Anschließend gebe vergebe ich einen Namen, gebe meinen Standort an, wähle die Zeitzone und die Währung aus. Alle anderen Einstellungen habe ich so gelassen und mit Weiter bestätigt.

Home Assistant Einstellungen
Ich gebe alle wichtigen Daten für mein zu Hause ein.

Bei der Nachfrage, ob ich Diagnosedaten senden möchte, wähle ich nichts aus und bestätige mit Weiter.

Home Assistant Diagnosedaten
Ich möchte keine Analysen übermitteln.

Nach dem Einrichten komme ich in meine Übersicht von Home Assistant.

Home Assistant Übersicht
Nach der erfolgreichen Einrichtung gelange ich in die Übersicht von Home Assistant.

Ausblick

Die Installation und der erste Start von Home Assistant ist erfolgreich abgeschlossen. In den nächsten Schritten werde ich die Anzeige am Raspberry Pi nutzen, um die Home Assistant Oberfläche mir anzuzeigen. Ich werde anschließend den Remote Zugriff einrichten und meine Smarthome Komponenten einbinden. Das werde ich in den folgenden Artikeln berichten.

Links

Dieser Beitrag hat 2 Kommentare

  1. Peter

    Hallo und danke erstmal für die tolle Beschreibung.
    Habe es bis zum ersten Start von Home Assistant geschafft.
    Allerdings will er SOFORT ein Passwort nach dem Start.

    Ne Idee ?

    1. Lars Hieronymi

      Hallo Peter,

      das Verhalten von Home Assistant wundert mich in deinem Fall. Es kann nur ein Passwort abgefragt werden, wenn schon eine Einrichtung erfolgt ist. Wird nur ein Passwort abgefragt oder auch ein Benutzername?

      Viel Erfolg und liebe Grüße
      Lars

Schreibe einen Kommentar