
Avoir l’historique des positions Google Find My Device
Google Find My Device permet de localiser en temps réel vos appareils Android, accessoires et tags Bluetooth (comme le Mili MiTag), mais ne propose pas de conserver un historique complet des positions.
Dans ce tutoriel, nous allons voir comment mettre en place un système qui enregistre automatiquement ces données dans Home Assistant, afin de pouvoir les consulter à tout moment et afficher la trajectoire sur une carte.


Limitations de Google
Par défaut, l’application Google Find My Device :
- Affiche uniquement la position actuelle de l’appareil.
- Ne conserve pas l’historique des déplacements.
- Ne propose pas d’API publique officielle.
Cela signifie que nativement, vous ne pourrez pas suivre les positions de votre appareil sur plusieurs jours ou visualiser un parcours.

Pourquoi la zone est parfois grande ?
Google ne vous donne accès qu’à la dernière position connue de l’appareil. Or, si c’est un tag, la précision de celui-ci dépend de la précision du smartphone ou appareil qui l’aura localisé en passant à côté (s’il a son GPS activé ou non par exemple). Vous pouvez donc vous retrouver à chercher votre appareil perdu dans un rayon de 300m alors qu’il a peut-être borné avec une précision de 10m deux minutes plus tôt, mais à cause de la limitation, vous n’aurez jamais accès à cette information.
Heureusement, des développeurs ont créé des outils comme GoogleFindMyTools-homeassistant, qui exploitent les requêtes internes de Google pour récupérer les coordonnées GPS et les injecter dans Home Assistant.
Matériel nécessaire
Pour mettre en place cette solution, voici ce qu’il vous faut :
- Un serveur Home Assistant fonctionnel (Raspberry Pi, mini PC, NAS…).
- Un broker MQTT installé (ex. Mosquitto Broker, souvent disponible directement comme add-on HA).
- Une machine Linux (serveur ou PC) avec Python 3, pour exécuter le script de récupération.
- Un compte Google lié à vos appareils Find My Device.
- Éventuellement un environnement virtuel Python (recommandé).
Mise en place
1. Installation de GoogleFindMyTools-homeassistant
Sur votre machine Linux dédiée :
git clone https://github.com/endeavour/GoogleFindMyTools-homeassistant
cd GoogleFindMyTools-homeassistant
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
2. Authentification Google
Lancez le script pour vous connecter à votre compte Google.
Il vous proposera d’ouvrir un navigateur (à faire sur une machine avec interface graphique si vous êtes en SSH).
Une fois l’authentification faite, un fichier de session sera sauvegardé pour les prochaines exécutions.
3. Configuration MQTT
Dans le fichier publish_mqtt.py
, modifiez :
MQTT_BROKER = "IP_DE_VOTRE_BROKER" MQTT_PORT = 1883 MQTT_USERNAME = "UTILISATEUR" MQTT_PASSWORD = "MOT_DE_PASSE"
Ce script publiera les positions dans un format compatible avec la découverte automatique de Home Assistant.
4. Test de récupération
Exécutez :
python publish_mqtt.py
Vérifiez dans Home Assistant (Outils de développement → États) que vos appareils apparaissent sous device_tracker
.
5. Automatisation avec Cron
Pour récupérer régulièrement les positions (ex. toutes les 5 min) :
crontab -e
Ajoutez :
*/5 * * * * /usr/bin/pkill -f "^/home/USER/yourPath/GoogleFindMyTools-homeassistant/venv/bin/python /home/USER/yourPath/GoogleFindMyTools-homeassistant/publish_mqtt.py$"; sleep 1; cd /home/USER/yourPath/GoogleFindMyTools-homeassistant && /home/USER/yourPath/GoogleFindMyTools-homeassistant/venv/bin/python /home/USER/yourPath/GoogleFindMyTools-homeassistant/publish_mqtt.py >> /home/USER/yourPath/GoogleFindMyTools-homeassistant/tag.log 2>&1
La commande est longue et la manière est brute mais résout les problématiques que je pu avoir de process qui restaient actifs et empêchaient parfois l’envoi de nouvelles valeurs.
Les positions seront ainsi envoyées automatiquement dans Home Assistant et vous pourrez consulter l’historique via la carte ou l’onglet historique. Pour ma part voici le yaml de la card que j’ai ajouté dans HA :
type: map
title: Mon Tag
entities:
- entity: device_tracker.monTag
hours_to_show: 24
theme_mode: auto
💡 Astuce : Dans Home Assistant, utilisez une carte Map avec hours_to_show: 12
pour visualiser toutes les positions sur une demi journée.

