Problème détection de présence par l'application Home Assistant - Android

Bonjour,

Mon problème

La détection de présence/absence ne fonctionne pas sur tous les téléphones de ma famille
J’ai installé Home Assistant sur les 4 téléphones de ma famille: ma femme, mes 2 enfants et moi. Sauf erreur de ma part, j’ai fait exactement les mêmes configurations sur les 4. Mais pour 2 d’entres eux, l’entité ‹ suivi de dispositif › provenant de mon serveur externe est toujours à Home, même quand le téléphone est loin hors de la zone maison.
Mon serveur externe:

Mes capteurs:

Je ne sais plus quoi faire. Vous auriez une idée ? Je suis surement passé à côté de quelque chose de tout bête mais je ne vois pas.

ça ne fonctionne pas sur les téléphones suivants:

  • POCO X3 NFC (la détection n’a jamais fonctionnée)
  • POCO F2 Pro (là, ça a marché un temps puis plus maintenant sans trop savoir ce qui a changé entre temps)

Merci.

Ma configuration


[center]## System Information

version core-2026.2.2
installation_type Home Assistant OS
dev false
hassio true
docker true
container_arch amd64
user root
virtualenv false
python_version 3.13.11
os_name Linux
os_version 6.12.67-haos
arch x86_64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
HACS Data ok
GitHub API Calls Remaining 5000
Installed Version 2.0.5
Stage running
Available Repositories 2741
Downloaded Repositories 9
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 17.1
update_channel stable
supervisor_version supervisor-2026.02.2
agent_version 1.8.1
docker_version 29.1.3
disk_total 234.0 GB
disk_used 7.3 GB
nameservers 192.168.1.254
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board generic-x86-64
supervisor_api ok
version_api ok
installed_addons File editor (5.8.0), Node-RED (21.0.2), Cloudflared (7.0.3)
Dashboards
dashboards 6
resources 2
views 4
mode storage
Network Configuration
adapters lo (disabled), enp1s0 (enabled, default, auto), docker0 (disabled), hassio (disabled), veth8f9984f (disabled), veth12c149f (disabled), vethadbdbbb (disabled), veth462c8ae (disabled), veth70f5799 (disabled), veth021dcef (disabled), veth31758bd (disabled), veth45ebee6 (disabled)
ipv4_addresses lo (127.0.0.1/8), enp1s0 (192.168.1.3/24), docker0 (172.30.232.1/23), hassio (172.30.32.1/23), veth8f9984f (), veth12c149f (), vethadbdbbb (), veth462c8ae (), veth70f5799 (), veth021dcef (), veth31758bd (), veth45ebee6 ()
ipv6_addresses lo (::1/128), enp1s0 (fe80::c874:2cef:c239:7dd3/64), docker0 (fe80::1c9e:51ff:fe0d:c2fe/64), hassio (fd0c:ac1e:2100::1/48, fe80::80e3:97ff:fe15:2c33/64), veth8f9984f (fe80::6c97:a9ff:fe0b:1e33/64), veth12c149f (fe80::4893:14ff:fee9:c0f8/64), vethadbdbbb (fe80::bcbb:faff:fe7e:28a9/64), veth462c8ae (fe80::24be:50ff:fedc:6b8a/64), veth70f5799 (fe80::806:90ff:fead:edc7/64), veth021dcef (fe80::c8a2:3fff:fe63:9d4/64), veth31758bd (fe80::a082:2ff:feed:ab8/64), veth45ebee6 (fe80::1890:d5ff:fef0:4162/64)
announce_addresses 192.168.1.3, fe80::c874:2cef:c239:7dd3
Recorder
oldest_recorder_run 5 février 2026 à 07:05
current_recorder_run 15 février 2026 à 10:30
estimated_db_size 95.26 MiB
database_engine sqlite
database_version 3.49.2
[/center] ___

Salut. Pour Xiaomi, as-tu vérifié si optimisation batterie soit bien désactivée pour Home Assistant ?

1 « J'aime »

Tu as bien une adresse qui te permet d’avoir un acces externe à home assistant en dehors de chez toi ?

Normalement oui, j’ai pas les téléphones sous les yeux mais j’avais désactivé les optims de batterie. Je vérifierai ce soir.

Oui je l’ai masqué dans le screen mais j’ai 2 « Serveurs et appareils » dans la configuration App Compagnon de l’application:

  1. Maison: avec mon adresse local: 192.168..etc..
  2. Maison: avec mon adresse externe avec une URL %.ovh

Pourquoi 2 serveurs ?
Concernant la connexion permanente tu tout est ok et sur toujours ?

Sur les poco vérifie que « interrompre l’activité de l’application si elle n’est pas utilisé » soit bien désactivé, que position soit sur « toujours activée » pour homme assistant et la batterie




Et pour l’application compagnon ça m’a l’air ok
Oublie pas d’activer la localisation des smartphones.
Test en coupant le wifi des smartphones pour utiliser les données mobiles et regarde l’entité device_tracker dans l’intégration mobile de ha.
Ps: oublie pas de lier le smartphone a une personne

1 « J'aime »

J’oubliais aussi le démarrage automatique en arrière plan a activer

Les principaux réglages sont déjà bon. En revanche, le démarrage en arrière plan était en effet désactivé. Je l’ai activé, je verrai demain si ça a eu un effet.




Pourquoi la question sur les 2 serveurs ? Il n’est pas recommandé d’avoir un serveur en accès local et un serveur avec un accès externe ?

Tu te complique tu mets l’adresse externe dans url de home assistant et l’interne dans url interne. Tu renseignes ton wifi pour que l’appli sache quand il doit utiliser l’URL interne.

Et vérifie la connexion permanente aussi et le paramètre d’accès en arrière plan dans l’appli compagnion.

En effet, je n’avais pas vu que sur un même serveur on pouvait renseigner une adresse externe et une adresse locale. C’est ce que j’ai fait, sur le téléphone de mon fils mais aussi le mien.
Pour mon fils, ça n’a rien changé, le statut de son device_tacker est toujours fixé sur « home », et pour ma part j’ai perdu la localisation car je reste aussi à « home » en permanence. Pourtant je n’ai rien changé d’autre.
Voici ma configuration de mon serveur sur l’application Home Assistant

La connexion permanente au serveur est activée ?

C’est tout à fait normal : si tu utilises uniquement le Wi-Fi comme méthode de détection, le statut restera bloqué sur « Maison » (Home) si ton téléphone s’éteint ou perd sa connexion. Home Assistant fonctionne de manière réactive : il attend que le téléphone lui envoie une mise à jour. Sans nouvelle instruction, il conserve la dernière valeur connue, car il ne peut pas interpréter un silence comme une absence.
Pour fiabiliser ta présence, la meilleure pratique consiste à combiner plusieurs types de trackers (GPS, Bluetooth, Wi-Fi) au sein de l’entité person. Home Assistant fera alors la synthèse de ces capteurs pour déterminer ton état.

Teste ton suivi avec le GPS (Device Tracker) et assure-toi que la position est activée en permanence sur ton poco et que ta zone zone.home est bien configurée dans HA.
Petite précision, pour économiser la batterie, le GPS n’envoie pas sa position en continu. S’il ne détecte pas de mouvement, l’intervalle peut aller jusqu’à 30 minutes. En mouvement (voiture), il passe à 2-5 minutes.
Par contre l’entrée ou la sortie de zone est normalement quasi instantanée.

Utilise le GPS pour détecter quand tu quittes la zone at.home
Utilise le Wi-Fi ou le Bluetooth pour que HA sache instantanément que tu es rentré.
A ne pas oublier qu’il faut regrouper ces trackers sous chaques profil utilisateur.

Pour compléter mes explications précédentes, voici comment obtenir des entités device_tracker fiables pour le Wi-Fi et le Bluetooth.
​Pour le Wi-Fi (via l’intégration Ping)
​C’est la méthode la plus robuste. Elle consiste à vérifier si le téléphone répond sur le réseau local.
​Commence par configurer une adresse IP fixe pour ton smartphone
​Une fois l’IP configurée, va dans Paramètres > Appareils et services > Ajouter une intégration.
Recherche Ping (ICMP).
Entre l’adresse IP fixe de ton smartphone.
​Une fois l’intégration ajoutée, clique sur l’appareil créé.
​Cherche l’entité qui porte l’adresse IP, clique dessus et actives l’entité.
Par défaut, Home Assistant désactive les entités de diagnostic.
​Tu obtiendras une entité de type device_tracker.192_168_1_xxx que tu pourras ensuite ajouter à ton profil dans l’entité person.

Pour le Bluetooth (via iBeacon)
​C’est idéal pour une détection de proximité immédiate quand tu rentres chez toi.
​Prérequis : Il te faut une passerelle Bluetooth (le Bluetooth interne de ton Raspberry Pi/NUC ou un ESP32 configuré en Bluetooth Proxy).
​Dans l’application Home Assistant Compagnon sur ton téléphone, va dans Paramètres > Application compagnon > Capteurs.
​Active le capteur Émetteur de balise.
​Home Assistant devrait détecter automatiquement un nouvel appareil via l’intégration iBeacon Tracker.
​Tu y trouveras une entité device_tracker correspondant à ton téléphone, à ajouter également à ton entité person.
​En combinant ces deux méthodes avec le GPS, Home Assistant saura exactement quand tu es là, sans latence.
N’oublie pas que tu dois utiliser l’entité device_tracker de l’intégration mobile et activer le gps de ton smartphone pour passer de l’état maison a absent. Sinon, Home Assistant considérera que tu es toujours à la maison, même si le Wi-Fi ou le Bluetooth ne sont plus disponibles.
Voici les 3 entités a mettre dans person et ce qui remontent dans les attributs de l’entité person.



Dernière chose : si tu veux vérifier que le GPS de ton smartphone remonte bien ta position dans Home Assistant, tu peux activer le capteur Geocoded Location (Position géocodée) dans l’intégration Application Mobile.
​Une fois activée, cette entité traduit tes coordonnées GPS en adresse postale lisible. Si l’entité reste vide ou n’affiche pas d’adresse, c’est la preuve que Home Assistant ne reçoit pas les coordonnées de ton téléphone (vérifie alors les autorisations de localisation ‹ Toujours autoriser › sur ton smartphone).
Petit conseil : Une fois ton diagnostic terminé et que tu es sûr que tout fonctionne, n’oublie pas de désactiver ce capteur pour économiser de la batterie et limiter les requêtes API inutiles.

Oui j’ai bien activé la connexion permanente (même si sur mon téléphone ça a fonctionné sans à un moment donné)

Bonjour @Greg_Wisniewski . Oui j’ai bien cumulé plusieurs device_tracker pour une même personne. Pour le WIFI j’utilise une entité de ma Freebox avec au préalable la définition d’une IP fixe pour chacun des téléphones de la famille. Mais c’est surtout le device_tracker GPS avec lequel je galère. Voici ce que j’ai dans mon historique pour mes 2 entitiés GPS (obtenu via l’application HomeAssistant et le WIFI):

Voici la configuration de mon profil:

Par contre, une chose qui me questionne c’est le nom de mon device_tracker GPS. Quand j’avais créé 2 serveurs dans l’application Home Assistant (à tort, merci @Idaho947 ), j’avais nommé « Nom de l’appareil » avec le terme « externe ». Hors maintenant je n’ai plus qu’un seul serveur dans mon application mais je visualise toujours ce device_tracker nommé « Pixel 9 Externe » sous HA:

Faut-il que je supprime mon application et que je reteste une installation ? Je me demande si je ne récupère pas sous HA une entité fantôme qui resterait à l’état ‹ home ›.

PS: j’envisage d’ajouter un device_tracker via Bluetooth mais quand le GPS fonctionnera.

La fonction accès en arrière plan est aussi ok ? (dans l’appli pas dans les paramètre android).

Oui, j’ai bien « Accès en arrière-plan: Home Assistant fonctionne en arrière plan ».
J’ai effacé toutes les données de l’application et refait une connexion et paramétrage. J’ai bon espoir que ça fonctionne (mais là je suis chez moi donc je peux pas encore vérifier).