Changer un etat d'un sensor

Bonjour,

j’utilise ESPresence avec 2 NUT MINI en ayant suivi le tuto ici:
https://fixtse.com/blog/espresense-detection
l’ensemble fonctionne bien mais lors du reboot de HA ou de la sauvegarde de celui ci (HA est sur un docker) au reboot ESPresence ( je parle ici de mon ESP32 ) se met bien à jour, je vois mes 2 NUTs mais le trakeur associé dans HA non…

Pour relancer le systeme de presence , il me suffit d’aller dans "Outils et develoopements / Etat " et changer l’état de mes nuts sensor.nut_xxx en ‹ toto › ce qui entraine une automatisation pour les passer en ‹ Home ›.

J’aimerai donc que HA lors du démarrage lance un automatisme qui me permettrai de mettre provisoirement mon NUT en ‹ toto › ce qui déclencherai l’automatisme courant en ‹ home ›.

Problème

Je n’arrive pas à imposer un état ‹ toto › à mon sensor.nut_xxx je ne sais pas comment faire ca dans un modèle.

Merci


Personne n’a une petite idée pour faire cela?

Bonjour,
tu peux essayer avec le service homeassistant.update_entity.

Exemple d’automatisation:

description: ""
mode: single
trigger:
  - platform: homeassistant
    event: start
condition: []
action:
  - service: homeassistant.update_entity
    target:
      entity_id: device_tracker.itag_black
    data: {}

Merci,
j’ai essayé mais cela ne fonctionne pas, j’arrive pas à lui imposer un état provisoire.

Tu utilises que le sensor MQTT, ou tu as fait une automatisation pour avoir un device_tracker comme mentionner dans ton tuto ?

J’ai fait exactement comme le tuto, HA voit tres bien le device connecté au ESPresence mais ne fait pas le transfert lors d’un reboot vers le traker qui est dans known_devices.yaml

Tracker_NUT_David:
  hide_if_away: false
  name: Tracker_NUT_David
  mac: FA:C8:F3:44:34:CB
  icon:
  picture:
  track: true

j’ai « contourné » le pb en utilisant dans mes scenarios l’état du NUT fourni par ESPresence et non l’etat de « person.david » état fourni par le tracker, fiable à 98% du temps.
C’est dommage mais pas non plus catastrophique, pour mettre le tracker à jour, il me faut soit le mettre à jour dans outils de dev soit sortir de la maison et rerentrer.
Je crois qu’ici le problème est identique mais trop complexe pour moi à regler.
Lien

Ok, donc tu utilises une automatisation, pour changer l’état du device_tracker par rapport au sensor mqtt espresence.

Si tu rajoutes en déclencheur, au démarrage de home assistant, ça ne ferait pas l’affaire ?

alias: Update OnePlus 7 Device Tracker
description: ""
trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id:
      - sensor.oneplus7_ble

et non, je ne comprend pas pourquoi d’ailleur.
lorsque je lance l’automatisation manuellement afin de voir si cela va mettre mon tracker à jour, rien ne se produit;

alias: Update NUT David Tracker
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.nut_david
    enabled: true
condition:
  - condition: template
    value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
    enabled: true
action:
  - service: device_tracker.see
    data:
      dev_id: Tracker_NUT_David
      location_name: |
        {% if trigger.to_state.state in ['hall'] %}
          home  
        {% elif trigger.to_state.state == 'not_home' %}
          not_home
        {% else %}
          unknown
        {% endif %}
mode: single

pour que la mise à jour fct , il faut que l’etat du device dans ESPresence ai changé. si je change l’etat par l’outil de dev que j’indique etat: « toto » instantanément ESpresence prend l’etat « home » (puisque mon NUT est à la maion) et le tacker suit en état Maison.

YES,
j’ai réussi à force de persévérance, j’ai créé une automatisation qui impose l’état au tracker, je sais pas trop comment j’ai fait mais cela fct.

alias: forcer mise a jour NUT
description: "Mise à jour NUT au démarrage"
trigger:
  - platform: homeassistant
    event: start
action:
  - delay:
      hours: 0
      minutes: 0
      seconds: 1
      milliseconds: 0
  - service: device_tracker.see
    data:
      dev_id: Tracker_NUT_David
      location_name: |
        {% if is_state('sensor.nut_david', 'hall') %}
          home
        {% elif is_state('sensor.nut_david', 'not_home') %}
          not_home
        {% else %}
          unknown
        {% endif %}
  - service: device_tracker.see
    data:
      dev_id: Tracker_NUT_Anne
      location_name: |
        {% if is_state('sensor.nut_anne', 'hall') %}
          home
        {% elif is_state('sensor.nut_anne', 'not_home') %}
          not_home
        {% else %}
          unknown
        {% endif %}
mode: single

Merci de ton aide

1 « J'aime »