Auf dieser Seite möchte ich meine Erfahrungen teilen, die ich über die (Pandemie) Jahre mit Home Assistant gesammelt habe. Ihr findet Tipps zum möglichst schnellen Einstieg und könnt (hoffe ich) die Lernkurfe flach halten. Deshalb besteht die Zielgruppe auch aus Leuten, die die Software „nur anwenden“ wollen UND nur so wenig Code wie unbedingt notwendig schreiben möchten. Auch soll diese Seite keine Schritt für Schritt Anleitung für Installation und Konfiguration sein. Dafür findet ihr zu Hauf Informationen im Internet.

Frank, Dezember 2022

Vorüberlegungen

Bevor hier startet, solltet ihr euch fragen, was euer Smart Home System leisten soll. Meine Beweggründe zu Home Assistant zu wechseln, findet ihr in diesem Post. Vielleicht habt ihr eine ganze Reihe von smarten Systemen im Einsatz, die aber nur wenig „miteinander“ zusammen spielen. Schon da könnte euch Home Assistant weiterhelfen – als zentrale Steuereinheit für euer Haus/Wohnung. Für Home Assistant sind tausende offizielle Integrationen vorhanden, wobei für Integrationen aus dem deutschsprachigem Raum sicher noch Luft nach oben ist. Darüber hinaus gibt es eine Seite mit den (inoffiziellen) HACS aus der Community.

Wenn Home Assistant nicht nur die „Spinne im Netz“ sein soll, sondern auch Komponenten wie Schalter und Sensoren direkt steuern/überwachen soll, stellt sich die Frage nach dem zu verwendenden Funkstandard, wobei natürlich „nur Kabel“ immer noch die beste Variante ist. Aber wo geht das schon. Die gute Nachricht: Home Assistant unterstützt alle gängigen Standards wie Z-Wave, ZigBee, EnOcean … und seit Dezember 2022 auch Matter. Die proprietären Protokolle von Lupus, homematic, Bosch u.a. werden über Integrationen unterstützt.

Tipp: Ihr solltet einen Mesh-fähigen Standard für alle batteriebetriebenen Geräte mit einer im Haus verteilten Anzahl an aktiven Geräten (wie Steckdosen) des gleichen Standards kombinieren, um ein leistungsfähiges (Funk)Netz aufzubauen. Ich selbst nutze Z-Wave aufgrund meiner Devolo Historie. Zum Zeitpunkt des Wechsels auf Home Assistant hatte ich schon ca. 20 Z-Wave Geräte im Einsatz.

Wie anfangen?

Der schnellste Einstieg führt über ein fertiges Image, inkl. Betriebssystem.

https://www.home-assistant.io/installation/

Das ist sicherlich nicht das Richtige für Leute, die die manuelle Installation im Detail kennenlernen möchten – allen Anderen empfehle ich diesen Weg. Bei mir ist es ein Raspberry Pi 4 mit SD-Karte. Ja, die SD-Karte ist definitiv ein Schwachpunkt an der Stelle und es wird berichtet, dass sie nicht lange hält. Bei mir tut sie ihren Dienst schon seit fast 2 Jahren und wenn sie irgendwann kaputt geht, kann ich mir immer noch überlegen auf eine SSD umzusteigen oder auf einem ODROID zu installieren. Meine Installationserfahrung findet ihr im blog. Link zum Post: https://www.it-und-hausautomation-blog.de/home-assistant-die-installationsparty/

Wichtig: Alle Geräte mit potentiellen Integrationen wie Router und Hubs anderer Hersteller sollten während der Installation von Home Assistant eingeschaltet und im Netzwerk erreichbar sein. Dann werden sie ganz schnell „gefunden“ …

Grundkonfiguration

Nach der Installation könnt ihr ein paar Dinge erledigen, die euch später bei der eigentlichen Nutzung wieder zugute kommen.

Feiertage (Werktag/Workday)

Wenn ihr euch einen „Sensor für Werktage“ konfiguriert, könnt ihr den später elegant nutzen – z.B.: Starte die täglichen Routinen erst um 9:00 Uhr WENN KEIN Werktag ist. Dafür installiert ihr die Integration Workday. Die Konfiguration erledigt ihr entsprechend der Doku.

Der Sensor berücksichtigt nur die Feiertage, nicht die Schulferien und auch nicht den 24. und 31. Dezember, weil es keine Feiertage sind. Die beiden Tage könnt ihr als „zusätzliche“ Feiertage konfigurieren.

Status

Kommerzielle Systeme bringen oft out-of-the-box Statuskonfigurationen mit, wie z.B. Urlaub „ja/nein“, mit. Mit Home Assistant geht das auch relativ einfach, wenn ihr euch dafür „Helfer“ anlegt, die ihr dann später nutzen könnt – z.B. Wenn der Status Urlaub auf ja wechselt, dann senke die Heizung ab und schalte die Warmwasseraufbereitung aus. Ich selbst unterscheide zwischen 3 Zuständen: Urlaub „Nein“, „zu Hause“ „auf Reisen“. Wenn man zu Hause bleibt, soll ja das Warmwasser weiter angeschaltet bleiben. Link zu meinem Beispiel: https://www.it-und-hausautomation-blog.de/urlaubsstatus/ Darüber hinaus könnt ihr die Helfer z.B. für den Status von Waschmaschine und Co oder dem Status des Mediaservers u.a. nutzen. Wer doch lieber gern Code schreiben möchte, kann die entsprechenden Sensoren alternativ in der configuration.yaml anlegen.

App installieren

Bevor ihr mit Regeldefinitionen startet (Automatisierungen), solltet ihr auf den in Frage kommenden Handys die offizielle App installieren und einrichten. Via App müsst ihr euch schon mindestens einmal an eurer Home Assistant Box angemeldet haben, damit das Handy in Home Assistant bekannt ist. Das hilft euch bei der späteren Konfiguration von Benachrichtigungen.

Danach weist ihr das Handy (Device) dem jeweiligen User zu, wenn ihr die automatische Anwesenheitserkennung nutzen wollt. Link zum Beispiel: https://www.it-und-hausautomation-blog.de/niemand-zu-hause/

Fernzugriff von unterwegs

Startet am besten erst einmal mit der Home Assistant Cloud, die ihr unter „Einstellungen“ konfiguriert. Ja, die Server stehen mit hoher Wahrscheinlichkeit in den USA. Das muss jeder für sich selbst entscheiden. Der Dienst kostet ein paar Euro im Monat und ihr habt das gute Gefühl die Macher von Home Assistant – Nabu Casa – zu unterstützen. Ich selbst habe diese Variante anfangs auch genutzt.

Backup

Regelmäßige Backups eurer Konfiguration ersparen euch hoffentlich viel Frust, wenn doch irgendwann die SD Karte ihren Dienst einstellt. Die Backups könnt ihr unter Einstellungen … Backups manuell oder via Automatisierung regelmäßig erstellen.

Geräte konfigurieren

Bevor ihr richtig durchstartet, sollten alle Geräte und Integrationen in Home Assistant verfügbar sein. Je nach verwendeten Protokoll (WLAN, ZigBee …) kann die Installation unterschiedlich sein. Details findet ihr in der Doku.

Dashboard

Das Anlegen und die Konfiguration von Dashboards ist so intuitiv, dass mir dafür an dieser Stelle keine besonderen Tipps einfallen. Probiert es einfach aus. Meine Beispiele findet ihr in der Bildergalerie am Anfang des Posts.

Automatisierungen und Co

Wenn ihr eure Dashboards konfiguriert habt, könnt ihr alle Geräte über das Handy (von der Couch und unterwegs) steuern. Alternativ geht das natürlich auch via Webbrowser vom Computer. Wirklich smart ist das aber noch nicht. Schön wäre es, wenn vieles automatisch „erledigt“ wird – je nach Urlaubs- und Anwesenheitsstatus, Werk-/Feiertag, Tageszeit, Sonnenstand …

In Home Assistant gibt es dafür Automatisierungen, Skripte, Szenen und „Vorlagen“ (Blueprints), die sich alle über den visuellen Editor ohne eine Zeile Code erstellen und verwenden lassen. Skripte sind gut nutzbar für immer wiederkehrende Listen an Aktionen, vergleichbar der Liste an Aktionen aus Automatisierungen. Meist braucht ihr sie nicht sofort zum Einstieg, weshalb ich hier auf Erläuterungen verzichte. Szenen werden gern für die Lampensteuerung genutzt. Ihr dimmt z.B. alle Lampen für’s Fernsehen auf den gewünschten Level und definiert das gewünschte Farbschema. Dann legt ihr eine neue Szene an und wählt dort alle gewünschten Lampen (auch die, die vielleicht ausgeschaltet sein sollen) aus. Ab jetzt „merkt“ sich Home Assistant die Einstellungen und ihr könnt sie über die Szene jederzeit auf dem Dashboard oder einer Automatisierung abrufen.

Wichtig für den Einstieg ist eher das Verständnis für Automatisierungen und „Vorlagen“ (Blueprints) mittels visuellen Editor. Dazu erfahrt ihr mehr in den Folgeabschnitten.

Automatisierungen

Automatisierungen lassen sich durch Auslöser (Ereignisse), wie die Statusänderung eines Schalters oder die Temperaturänderung eines Sensors, auslösen. Im visuellen Editor könnt ihr euch eure Automatisierungen einfach erstellen. Zum Verständnis:

Es können ein oder mehrere Auslöser definiert werden, die (default) alle als ODER verknüpft sind. Beispiele

  • Auslöser Tageszeit 06:00 und Auslöser Sonnenaufgang, löst die Automatisierung zu diesen Zeitpunkten aus
  • Auslöser Statusänderung Schalter A, löst die Automatisierung aus wenn der Schalter eingeschaltet und wenn er ausgeschaltet wird
  • Auslöser Statusänderung Schalter A mit Option „eingeschaltet“, löst dagegen nur im ersten Fall aus

Damit könnt ihr selbst entscheiden wie ihr eure Automatisierungen strukturiert: Eine Automatisierung für den Schalter oder 2 Automatisierungen, getrennt nach Status.

Es kann ein „Modus“ für jede Automatisierung definiert werden, über den man stolpern kann. Per default wird der Modus „Einzeln“ gewählt, der auch meistens richtig ist. Wenn ihr allerdings eine Automatisierung mit Timer habt, soll ggfl. der Timer mit jeder Auslösung neu starten. In diesem Fall konfiguriert ihr den Modus „Neu starten“. Der Modus „Einzeln“ würde auf einen Fehler laufen, weil die Automatisierung „noch läuft“. Mehr Informationen zu den verschiedenen Modi findet ihr in der Doku.

Bedingungen werden (default) als UND verknüpft und müssen erfüllt sein, wenn ein Ereignis die Automatisierung auslöst.

Aktionen sind eine Liste von Aktionen, die (default) in der konfigurierten Reihenfolge ausgeführt werden. Die Möglichkeiten der Konfiguration sind sehr flexibel. Von einem einfachen „Gerät an/aus“ über if/then oder Optionen (Fallunterscheidung des Zustands des Auslösers) bis hin zur Auslösung eines „Dienstes“ oder einer „Benachrichtigung“ ist alles konfigurierbar.

Dienste (Service)

Dienste sind spezielle Aktionen, die sich vielleicht nicht intuitiv erschließen. Sie sind sehr effektiv anwendbar – Beispiele:

  • Wenn Rollläden hochgefahren werden sollen, nutzt ihr den Dienst „Abdeckung: Open“ mit der Angabe von Zielen – z.B. „Bereich“ Wohnzimmer öffnet alle Rollläden im Wohnzimmer
  • Wenn Lampen im Haus ausgeschaltet werden sollen, nutzt ihr den Dienst „Licht: Turn off“
  • Wenn ein Schalter eingeschaltet werden soll, nutzt ihr den Dienst „Schalter: Turn on“
  • Wenn ihr einen „Helfer“, wie z.B. den Urlaubsstatus, automatisch ausschalten wollt, nutzt ihr den Dienst: „Boolescher Wert eingeben: Turn off“
  • ….

Die deutsche Übersetzung hat sich hier noch nicht komplett durchgesetzt 😉

Es lohnt sich auf alle Fälle, in der Liste der verfügbaren Services zu stöbern. Von euch selbst erstellte Skripte sind übrigens auch als „Dienste“ verfügbar.

Benachrichtigungen

Benachrichtigungen sind ebenfalls Dienste, die wie der Name schon sagt, der Benachrichtigung dienen. Wissenswert, weil nicht intuitiv erschließbar, sind die wichtigsten Unterscheidungen von Benachrichtigungen in einer Standardinstallation.

notify

Wenn ihr euch bereits mit eurem Handy via App mit Home Assistant verbunden habt, sollte die Liste der möglichen Services ähnlich wie im Bild aussehen.

Die ersten beiden Benachrichtigungen beziehen sich auf bestimmte Handys. Ich nutzte das zum Beispiel, um mir Push-Nachrichten zu technischen Störungen nur auf mein Handy zu schicken. Alle anderen Hausbewohner bekommen diese Info nicht.

Die im Bild gelb markierte Benachrichtigung: Send a notification with notify wird genutzt, um Push-Nachrichten an alle (default) Hausbewohner zu schicken, die die mobile app auf ihrem Handy nutzten.

Die Benachrichtigung: Send a persistent notification dagegen sendet eine Benachrichtigung, die in der App oder dem Webbrowser in der linken Leiste unter Benachrichtigungen angezeigt wird. Es wird keine Push Nachricht geschickt. Die Nachricht bleibt (persistent) solange in der Liste, bis sie manuell entfernt wird.

Die Persistent Notification: Create funktioniert genauso wie die „Send … notification“ Optional könnt ihr eine frei definierte Notification ID verwenden, die dafür sorgt, dass „alte“ Infos zu einem bestimmten Prozess automatisch gelöscht werden (ohne manuelle Bestätigung) Beispiel: Wenn die Waschmaschine mehrfach am Tag gestartet wird, interessiert euch sicher nur die letzte Statusmeldung.

Blueprints (Vorlagen)

Blueprints (Vorlagen) sind ein einfacher Weg, um Automatisierungen zu erstellen. Bei jeder Neuanlage einer Automation werdet ihr gefragt, ob ihr diese auf Basis einer „Vorlage“ erstellen möchtet. In einer Standardinstallation sind bereits eine Handvoll Vorlagen enthalten. Ihr findet massenweise Vorlagen im Netz.

Link zur Community: https://community.home-assistant.io/c/blueprints-exchange/53

Link zu Blueprints in meinem blog: https://www.it-und-hausautomation-blog.de/tag/blueprint/

Wenn ihr euch bis hierhin durchgearbeitet habt, verfügt ihr über die wichtigsten Dinge um Home Assistant zu nutzen. 🙂

Wenn mal was nicht funktioniert

Ihr findet in der Doku viele Hinweise, wie ihr Problemen auf die Spur kommen könnt. Ich möchte euch folgende Tipps mitgeben.

Entwicklerwerzeuge

Wenn ihr eine Automatisierung erstellt und die Information im visuellen Editor aufgrund fehlender Übersetzung/Erläuterung nicht selbsterklärend ist, können euch die Entwicklerwerzeuge weiterhelfen. Beispiel Sonnenstand – wie im folgenden Bild.

Beim Zustand im visuellen Editor müsst ihr above_horizon für tagsüber eingeben. Die Nacht ist mit below_horizon definiert. In Automatisierungen könnten auch die Attribute des aktuellen Sonnenstandes (elevation …) interessant sein. Die Entwicklerwerzeuge bieten weitere hilfreiche Funktionen an…

Trace

Wenn eine Automatisierung nicht wie gewünscht ausgeführt wird, hilft euch die Trace weiter, die ihr über die Details der Automatisierung abrufen könnt. Die aktuelle (Dez. 2022) deutsche Übersetzung „Spuren“ ist dabei leider etwas irreführend.

Alternativ findet ihr im Logbuch bei jeden Eintrag zu ausgeführten Automatisierungen den Link zur Trace.

Solltet ihr doch einmal direkte Änderungen in configuration.yaml und Co vornehmen: Bitte immer die Konfiguration vor einem Neustart prüfen. Zudem ist zumindest ein „Neu laden“ der betroffenen Komponenten, wie z.B. Automatisierungen notwendig, wenn ihr manuelle Änderungen vorgenommen habt.

Jetzt wünsche ich euch viel Spaß mit Home Assistant 😉

In meinem blog – https://www.it-und-hausautomation-blog.de/ – findet ihr Anregungen für eure eigenen Konfigurationen mit Home Assistant.