Wer mehrere Geräte trägt – iPhone, iPad, MacBook –, kennt das Problem: Home Assistant sieht jeden device_tracker einzeln, und plötzlich gilt das Haus als «leer», nur weil das iPhone kurz das WLAN verloren hat. Die Lösung steckt seit Jahren im Kern von HA und wird trotzdem unterschätzt: die person-Entität in Kombination mit der zone. Sie fasst beliebig viele Tracker zu einer einzigen, verlässlichen Aussage zusammen: zu Hause oder nicht. Dieser Beitrag zeigt, wie man daraus eine robuste Anwesenheitserkennung baut.
Das Problem mit einzelnen Trackern
Ein einzelner Tracker ist nie zuverlässig genug. Das iPhone wechselt zwischen WLAN und Mobilfunk, das MacBook schläft, das iPad liegt mal daheim, mal im Büro. Steuert man Automationen direkt über einen einzelnen device_tracker, entstehen Fehlalarme: Licht geht aus, obwohl jemand da ist, oder die Heizung fährt hoch, obwohl niemand kommt.
Die person-Entität löst das, indem sie mehrere Tracker zu einer Person zusammenführt. Solange auch nur ein zugeordneter Tracker «home» meldet, gilt die Person als anwesend. Das ist genau das gewünschte Verhalten – ein einzelner aussetzender Tracker kippt die Anwesenheit nicht mehr.
Schritt 1: Tracker einer Person zuordnen
Am einfachsten geht das über die Oberfläche unter Einstellungen → Personen. Dort wählt man pro Person alle Geräte aus, die sie zuverlässig trägt. Für ein Setup mit zwei Bewohnern könnten die Personen so aussehen:
# Beispielhafte Zuordnung (wird normalerweise über die UI gepflegt)
# person.mike_neuburger:
# - device_tracker.mikes_iphone_17_pro
# - device_tracker.ipad_pro_13_m5_von_mike
# - device_tracker.macbook_pro_m1_von_mike
# person.louisa_neuburger:
# - device_tracker.ipad_pro_129_von_louisa_2
Wichtig: Nur Geräte zuordnen, die wirklich mitgeführt werden. Ein MacBook, das fast immer zu Hause steht, verfälscht die Anwesenheit – es würde die Person dauerhaft als «home» melden, selbst wenn sie längst weg ist.
Schritt 2: Die Zone als Bezugspunkt
Die zone.home definiert über GPS-Koordinaten und Radius, was «zu Hause» bedeutet. Standardmässig sind 100 Meter gesetzt – in dicht bebauten Quartieren lohnt es sich, den Radius etwas zu verkleinern, damit die Nachbarstrasse nicht schon als «daheim» zählt. In der zones.yaml oder über die UI:
# zones.yaml
home_genau:
name: Zuhause genau
latitude: 47.0000
longitude: 8.0000
radius: 75
icon: mdi:home
Schritt 3: Eine zusammengefasste Hausanwesenheit
Oft will man nicht nur einzelne Personen, sondern wissen: Ist überhaupt jemand zu Hause? Dafür eignet sich ein binary_sensor per Template, der alle Personen prüft:
# template.yaml
- binary_sensor:
- name: "Jemand zu Hause"
unique_id: jemand_zu_hause
device_class: presence
state: >
{{ is_state('person.mike_neuburger', 'home')
or is_state('person.louisa_neuburger', 'home') }}
Dieser Sensor ist die ideale Grundlage für Automationen – er bleibt «on», solange irgendjemand da ist, und schaltet erst auf «off», wenn wirklich alle das Haus verlassen haben.
Schritt 4: Automation gegen Fehlalarme absichern
Selbst mit gebündelter Anwesenheit lohnt sich eine kleine Verzögerung, damit ein kurzer GPS-Aussetzer keine Aktion auslöst. Die for-Bedingung wartet, bis der Zustand stabil ist:
# automations.yaml
- alias: "Alle weg – Energiesparmodus"
trigger:
- platform: state
entity_id: binary_sensor.jemand_zu_hause
to: "off"
for:
minutes: 5
action:
- service: scene.turn_on
target:
entity_id: scene.alle_aus
Die fünf Minuten Wartezeit fangen den klassischen Fall ab, in dem das letzte Telefon beim Verlassen kurz zwischen den Funkzellen pendelt.
Das Gegenstück – die Willkommens-Automation – funktioniert nach demselben Muster, reagiert aber auf den Wechsel von «off» auf «on». Hier braucht es meist keine Verzögerung, denn ein zu spät begrüssender Flur ist ärgerlicher als ein verfrühter. Ergänzt man die Bedingung um sun.sun (unter Horizont), schaltet das Ankunftslicht nur dann, wenn es draussen tatsächlich dunkel ist:
# automations.yaml
- alias: "Ankunft – Begrüssungslicht bei Dunkelheit"
trigger:
- platform: state
entity_id: binary_sensor.jemand_zu_hause
to: "on"
condition:
- condition: state
entity_id: sun.sun
state: below_horizon
action:
- service: scene.turn_on
target:
entity_id: scene.ankunft
Wer die Anwesenheit zusätzlich raumgenau verfeinern will, findet im Artikel zu mmWave-Presence sauber tunen mit ZHA und Tuya die Ergänzung für drinnen – person regelt das grobe «im Haus oder nicht», mmWave das feine «in diesem Raum».
Fazit
Die person-Entität ist eines der wirkungsvollsten Bordmittel von Home Assistant – und kostet nichts ausser ein paar Minuten Konfiguration. Wer seine Tracker sauber zuordnet, den Zonenradius anpasst und einen Template-Sensor für die Hausanwesenheit baut, bekommt eine Anwesenheitserkennung, die in der Praxis verlässlich funktioniert. Das ist das Fundament, auf dem alle weiteren Anwesenheits-Automationen erst wirklich stabil werden.