Lorsque vous désirez que Home Assistant puisse réagir selon la position d'une personne en utilisant l'application Home Assistant, il devient difficile de tester les automatisations sans devoir vous déplacer physiquement dans la ville.
Par chance, la position géographique d'une personne peut être simulée grâce au service device_tracker.see.
Ce service peut modifier la position d'un système de suivi GPS réel ou virtuel.
Le fonctionnement d'une entité de type device_tracker est passablement différent de celui des autres types de virtuels, par exemple input_boolean ou encore input_text.
D'abord, pour créer une entité de type device_tracker, il suffit d'appeler le service device_tracker.see.
Ensuite, la valeur de l'entité ainsi créée sera perdue au redémarrage de Home Assistant.
Voici donc comment créer un device_tracker :
Entrez ceci dans / :
![]()
Notez que selon les configurations de votre système, il pourrait arriver que le service ne soit pas reconnu. Si c'est votre cas, ajoutez cette ligne dans le fichier configuration.yaml :
device_tracker:
Vous devrez ensuite redémarrer Home Assistant (un rechargement des configurations n'est pas suffisant).
Attention : lorsqu'on fait appel au service device_tracker.see, il faut préciser l'identifiant de l'objet et non l'identifiant de l'entité. Donc, il ne faut pas entrer le domaine device_tracker, seulement l'identifiant de l'objet.
Par exemple, ceci ne fonctionnera pas : position_virtuelle_annie.
il faut plutôt entrer position_virtuelle_annie.
Notez que le travail avec des zones offre moins de possibilités que le travail avec une position GPS.
![]()
![]()
Une fois le service appelé, si l'entité n'existait pas, elle est créée. Sinon, sa position est simplement mise à jour.
Vous pouvez confirmer que l'entité existe et retrouver son nom à partir du menu / / Onglet .
Suggestion : utilisez la case pour retrouver les entités plus rapidement.
![]()
Les informations sur le device_tracker sont enregistrées dans le fichier /mnt/data/supervisor/homeassistant/known_devices.yaml.
Ce fichier peut être visualisé à l'aide du module complémentaire File editor.
position_virtuelle_annie:
name: position_virtuelle_annie
mac:
icon:
picture:
track: true
Voici un problème qui peut survenir ou non selon votre version de Home Assistant.
Lorsqu'une automatisation doit réagir quand une personne virtuelle entre ou sort d'une zone donnée, elle doit être en mesure de retrouver les coordonnées GPS du device_tracker.
Si vous avez utilisé un nom de zone pour spécifier la position d'un device_tracker, vous pourriez obtenir un message du genre « Message malformed: Entity is neither a valid entity ID nor a valid UUID for dictionary value » lorsque vous enregistrez l'automatisation.
![]()
Et même si vous n'obtenez pas ce message, le changement de position à l'aide d'un nom de zone pourrait ne pas être pris en compte par l'automatisation.
Si vous rencontrez ce problème, vous pouvez le contourner en utilisant des coordonnées GPS pour spécifier la position du device_tracker.
Vous pouvez voir la position virtuelle dans le tableau de bord sur une carte de type Carte ou encore directement dans l'option de menu .
Pour que la position du virtuel apparaisse il faut donner à l'entité une position GPS et non une position à partir d'une zone.
Par défaut, la carte affichera la première lettre de l'identifiant de l'objet.
![]()
Le fichier customize.yaml permet d'apporter des personnalisations à différentes entités, notamment l'image utilisée pour représenter un device_tracker.
Si le fichier n'existe pas encore, créez-le dans le même dossier que configuration.yaml, c'est-à-dire /mnt/data/supervisor/homeassistant.
Ceci peut être réalisé dans le terminal HassOS ou encore à l'aide de le module complémentaire File editor.
Dans configuration.yaml, vous devez avoir une référence à ce fichier.
homeassistant:
customize: !include customize.yaml
Dans le fichier customize.yaml, vous pouvez désormais préciser l'image à utiliser pour le device_tracker.
Pour utiliser vos propres images, vous devez les téléverser sur le Pi dans un dossier précis.
L'image à utliiser peut ensuite être configurée comme suit :
device_tracker.position_virtuelle_annie:
entity_picture: /local/annie.png
Redémarrez Home Assistant pour que les configurations soient actives.
Désormais, l'image apparaît sur la carte plutôt que la première lettre de l'identifiant de l'entité.
![]()
Source des images : http://clipart-library.com/clip-art/kid-transparent-background-22.htm
Grâce aux modèles, il est possible de retrouver spécifiquement la latitude et la longitude d'un device_tracker.
D'abord, comme avec n'importe quelle entité, il est possible de connaître les attributs disponibles à partir du menu / .
Entrez dans la zone de gauche une chaîne au format {{ states.id_de_l_entite }}.
{{ states.device_tracker.position_virtuelle_annie }}
Voici le résultat à l'écran lorsque la position a été définie à l'aide de coordonnées GPS.
J'ai ajouté des sauts de ligne pour que les attributs soient plus visibles.
<template TemplateState(<
state device_tracker.position_virtuelle_annie=Travail;
source_type=gps,
latitude=46.05123588418276,
longitude=-72.00332701206209,
gps_accuracy=0,
friendly_name=position_virtuelle_annie
@ 2025-11-03T11:04:01.874055-05:00>
)>
Si la position a été définie à l'aide du nom d'une zone, il y aura moins d'attributs disponibles.
<template TemplateState(<
state device_tracker.position_virtuelle_annie=Travail;
source_type=gps,
friendly_name=position_virtuelle_annie
@ 2025-11-03T11:15:01.874055-05:00>
)>
Voici un autre exemple où la position de l'entité n'a pas été redéfinie après un redémarrage de Home Assistant.
<template TemplateState(<
state device_tracker.position_virtuelle_annie=not_home;
source_type=None,
friendly_name=position_virtuelle_annie
@ 2025-11-03T11:04:55.752248-05:00>
)>
Une fois que vous connaissez les attributs disponibles, vous pouvez retrouver spécifiquement la latitude et la longitude si elles sont disponibles.
{{ state_attr('device_tracker.position_virtuelle_annie', 'latitude') }}
{{ state_attr('device_tracker.position_virtuelle_annie', 'longitude') }}
▼Publicité