Smart Home

Anleitung: Home Assistant Companion App mit Standortbestimmung

Das Smart Home besteht für viele Menschen aktuell noch aus netten Einzellösungen, wie fernsteuerbare Lampen oder einer Videotürklingel. Richtig intelligent und sinnvoll wird das Zuhause aber erst, wenn all diese Geräte mit einem zentralen System zusammengeführt werden. In dieser Anleitung beschäftigen wir uns daher mit der Einrichtung der Home Assistant Companion App unter iOS und der Nutzung von Geo-Location für Automationen. Damit lässt sich dann der Standort oder etwa das Betreten oder Verlassen eines bestimmten Bereiches für das Auslösen von Aktivitäten verwenden.

Überblick

Home Assistant ist durch seine Vielzahl an Komponenten wunderbar als zentrale Plattform für ein lokal gehostetes Smart Home geeignet. Um komfortable auf die eigenen Vierwände aus der Ferne zugreifen zu können, gibt es für Nutzer von Apple iOS Geräten (d.h. iPhones* oder iPads*) die kostenlose Home Assistant Companion App im Apple App Store (mittlerweile heißt die App nur noch „Home Assistant“). Diese App ermöglicht im Allgemeinen drei Dinge, die die Bedienung und das Nutzungserlebnis von Home Assistant noch besser machen:

  1. Zugriff auf alle mit Home Assistant verbundenen Geräte, Sensoren und Automationen über eine übersichtliche Oberfläche.
  2. Versenden von Benachrichtigen an die mobilen Endgeräte* (und Senden von Befehlen) via Push-Nachrichten (siehe dazu unsere dedizierte Anleitung).
  3. Übermitteln des Gerätestandortes, um die Anwesenheit von Personen in einem bestimmten Bereich rund um das Zuhause festzustellen.

Voraussetzung

Um die Home Assistant Companion App auf eurem Gerät zu installieren, sind einige Voraussetzungen zu erfüllen, die im Folgenden kurz genannt werden sollen:

  • Eure Home Assistant Instant benötigt ein gültiges, NICHT selbstsigniertes SSL-Zertifikat (Apple erlaubt keine selbst signierten Zertifikate auf iOS-Geräten)
  • Eure Home Assistant Instanz ist über ein DDNS-Service aus dem Internet erreichbar
  • Euer iPhone* oder iPad* läuft mindestens mit iOS9 (besser iOS 10)
  • Home Assistant ist auf dem aktuellsten Stand und auf jeden Fall neuer als v0.42.4 (das ist aber ewig her)

Sind all diese Anforderungen erfüllt, könnt ihr euch an die Installation der Home Assistant Companion App aus dem App Store machen.

Konfiguration

Wir wollen nun zusammen Schritt für Schritt die Konfiguration der Home Assistant Companion App vornehmen, sodass sich das smarte Zuhause schon bald einfach und sicher via Smartphone* steuern lässt. Wer gerne auch Siri in die Geschichte einbinden möchte, um Befehle an das Smart Home per Sprache zu senden, der sollte sich unsere Home Assistant <-> Home Bridge Anleitung genauer ansehen.

Schritt 1: Initiale Konfiguration

Nach der Installation und dem ersten Start der App präsentiert sich der initiale Setup-Dialog. Hier muss zunächst die via SSL verschlüsselte URL eures Home Assistant System angegeben werden (eure dynamische DNS nicht die IP-Adresse). Zusätzlich müsst ihr an dieser Stelle das Passwort und den Nutzer für eure Home Assistant Instanz mitteilen, mit welchem ihr euch einloggen wollt.

Wenn ihr die Discover Komponenten in eurer configuration.yaml aktiviert habt (Standard) und sich euer iPhone* via WLAN im gleichen Netzwerk wie der Home Assistant Server befindet, sollte euch die Home Assistant Instanz auch automatisch durch die App aufgelistet werden. In diesem Fall wird durch einen Klick die URL automatisch übernommen und ihr müsst lediglich das die Nutzerdaten eingeben. Ein Klick auf Speichern sollt euch zu der mobilen Ansicht eurer Geräte führen.

Home Assistant Companion App Geräteansicht

Diese Ansicht entspricht exakt der Ansicht, wie sie auch am Desktop-Computer erscheint. Nur werden die Kacheln auf einem Smartphone vertikal anstatt nebeneinander angeordnet. Auch die üblichen „Tabs“ (in Home Assistant Views genannt) werden am oberen Rand abgebildet.

Tipp: Für Views lediglich Icons festlegen und keine Namen. Das spart auf dem Smartphone-Display viel Platz und ist leichter zu bedienen.

Schritt 2: Status anzeigen und Komponenten aktivieren

In die Einstellung der App gelangt ihr über das Hauptmenü (drei Striche in der oberen linken Ecke), hier unter Einstellung den Punkt „Begleit App“ wählen.

Der Bereich Status gibt wichtige Infos über eure Home Assistant Instant. Hier werden Name, Version und der Status wichtiger Erweiterungen angezeigt. Im Regelfall sollte unter „iOS Komponente geladen“ und „Geräte Tracker Komponente geladen“ ein „x“ erscheinen. Diese beiden Komponenten müssen wir nun aktivieren, damit ihr 1) Push-Nachrichten an das iPhone senden und 2) den Standort des iPhones* an das Smart Home übermitteln könnt.

Home Assistant Companion App Status Infos copy

Dazu ergänzen wir in unserer configuration.yaml folgende Zeilen, um den Namen und Standort unseres Zuhauses zu bestimmen. Die Zeile Radius gibt an, ab wann ein Endgerät als „zu Hause“ gilt.

Tipp: Diese Grundeinstellungen lassen sich mittlerweile auch über die Weboberfläche unter Einstellungen -> System -> Allgemein eintragen (und werben bei neuen Installationen ohnehin bei der Einrichtung abgefragt). Wichtig ist, dass ihr nur eine Art der Konfiguration verwenden könnte. Also entweder über die Config-Datei oder über die Weboberfläche. Letzteres ist deutlich komfortabler.

zone:
- name: Home
latitude: XX.XXXXX
longitude: XX.XXXXX
radius: 20
icon: mdi:account-multiple

Hinweis: Mittlerweile müssen diese Schritte nicht mehr über die configuration.yaml durchgeführt werden. Stattdessen könnt ihr das Ganze bequem über die Oberfläche und die passenden Integrationen „Mobile App“ und „Home Assistant iOS“ erledigen. Über die „Home Assistant iOS“ werden alle Informationen zu eurem Smartphone oder Tablet gesammelt und als Entitäten für die weitere Verwendung in Home Assistant bereitgestellt.

Anschließend aktivieren die fehlenden Komponenten:

device_tracker:

und

ios:

Nachdem wir die configuration.yaml gespeichert und den Home Assistant Service neu gestartet haben, sollte im Statusbereich der Home Assistant Companion nun ein Haken bei den Komponentenstatus erscheinen.

Schritt 3: An- oder Abwesenheit des iPhone an Home Assistant senden

Update: Diese Schritte werden ebenfalls automatisiert, wenn ihr die Mobile App Integration verwendet. Dann wird pro Endgerät, auf dem die App verwendet wird ein Tracker angelegt. Dieser lässt sich jetzt auch „Personen“ zuordnen, sodass ihr im Frontend mit der Person anstatt mit dem Gerät arbeiten könnt. Eine Person kann dabei auch mehr als ein Gerät besitzen.

Den wichtigsten Schritt habt ihr bereits mit der obigen Aktivierung der device_tracker Komponente erledigt. Sollte die Companion App dieses nicht bereits selbst erledigt haben, müsst ihr eurem iPhone* oder iPad* nur noch eine Geräte-ID zuweisen. Diese findet sich unter dem Statusbereich in den App-Einstellungen. Unter der dort abgebildeten ID ist das Telefon dann in Home Assistant bekannt.

An dieser Stelle lohnt ein Blick in die known_devices.yaml von Home Assistant. Im Bestfall wurde hier bereits automatisch ein Eintrag für euer iPhone angelegt. Dieser sieht wie folgt aus:

nils_iphone:
  hide_if_away: false
  icon:
  mac:
  name: Nils
  picture:
  track: true
  vendor:

Sollte dies nicht der Fall sein, ergänzt obige Zeilen (natürlich die ID aus der App und den Namen anpassen) und speichert die Datei. Startet Home Assistant neu. Anschließend sollte im Sensor-Tab das Telefon erscheinen und aktuelle Daten, wie Standort oder Ladestatus und Batteriestand übermittel werden. Initial sind die GPS-Koordination natürlich noch leer, das ändern wir im nächsten Schritt.

Home Assistant iPhone Standortinformationen via App
Home Assistant iPhone Batterie Informationen via App

Schritt 4: Home Assistant Companion App Zugriff auf den Standort gewähren

Nun kommunizieren Home Assistant und iPhone bereits miteinander, lediglich die Standortübertragung muss noch aktiviert werden. Dazu wechselt ihr ganz unten in den App-Einstellungen in den Punkt „Standorteinstellungen“ und aktiviert diese. Den iOS-Dialog, welcher nach der Berechtigung der App in Bezug auf den Gerätestandort fragt, bestätigt ihr mit „Immer“.

Auf der nachfolgenden Dialogseite solltet ihr ganz unten die Daten eures Smart Home sehen, die ihr oben konfiguriert habt (Standort, Radius). Ganz oben wählt ihr die „Update Sources“ aus. Diese bestimmen in welchen Fällen, eine Standortaktualisierung (auch bei geschlossener App) an Home Assistant gesendet wird. Ihr habe hier alle Quellen aktiviert.

Home Assistant Companion App Standort Update Quellen

Darunter kann gewählt werden, in welchem Fall ihr benachrichtigt werden möchtet, sofern ein Standortupdate versandt wurde. Das war es auch schon.

Home Assistant Companion App Standort Update Benachrichtigung copy

In der Geräteansicht der App findet ihr am linken unteren Rand zwei weitere Symbole. Der Pfeil löst ein manuelles Update des Standorts aus und sendet diesen sofort an Home Assistant. Das Kartensymbol zeigt die Position eures Zuhauses auf einer Karte. Außerdem werden die letzten Standorte aller registrierten Geräte angezeigt.

Schritt 5: Die Positionsdaten für eine Automatisation nutzen

Im letzten Schritt wollen wir noch ein kurzes Beispiel durchgehen, wie sich die Anwesenheitsdaten nutzen lassen können. In unserem Beispiel soll bei einem Wechsel des Anwesenheitsstatus von „anwesend“ zu „abwesend“ an einem Wochentag das Licht ausgeschaltet werden. Dazu legen wir die folgende Automatisation an:

- alias: 'Regel: Lampe Wochentags aus'
    trigger:
     - platform: state
       entity_id: nils_iphone
       from: 'home'
       to: 'not_home'
    condition:
     condition: time
     weekday:
      - mon
      - tue
      - wed
      - thu
      - fri
    action:
     service: homeassistant.turn_off
     entity_id: switch.lampe_esszimmertisch

Schlusswort

Die Integration von Standortdaten ist dank der Home Assistant Companion App unter Apple iOS relativ einfach zu realisieren. Mithilft der Anwesenheitsdaten lassen sich sehr mächtige Regeln zur Automatisierung erstellen. Ein Tipp: Werden mehrere Smartphones in einer Gruppe zusammengefasst, entspricht der Anwesenheitsstatus immer der Teilmenge der Geräte. D.h. ist ein Gerät zu Hause, ist die Gruppe „anwesend“.

Besonders interessant ist die seit einiger Zeit verfügbare Möglichkeit, „Personen“ und „Tracker“ zu verbinden und so anstelle der einzelnen Geräte direkt den Anwesenheitsstatus einer Person für seine Automatisierungen verwenden zu können. Das erleichtert viele Dinge. Insbesondere dann, wenn ihr mehrere Geräte pro Person mit der Home Assistant App verwendet.

Sind beide Geräte „abwesend“ ist auch der Status der Gruppe „abwesende“. So lässt sich einfach vermeiden, dem Partner das Licht auszuschalten*, nur weil man schon auf dem Weg zur Arbeit ist. 😉

Wir freuen uns, wie immer, über Anmerkungen und Kommentare.

Hinweis: Mit Sternchen (*) markierte Links sind Affiliate-Links / Partnerlinks. Mit einem Kauf über diesen Link erhalten wir als Seitenbetreiber eine Verkaufsprovision. So kannst du das Projekt ganz einfach unterstützen. Mehr Informationen dazu findest du hier.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert