Last_updated change alors que la valeur ne change pas

Bonjour à tous,

J’avais une automatisation qui devait se déclencher seulement quand la valeur n’a pas changé depuis 20min mais elle se déclenchait alors que la valeur n’a pas changé.

platform: state
entity_id:
  - sensor.wallbox_portal_added_range
for:
  hours: 0
  minutes: 20
  seconds: 0
enabled: true

J’ai modifié ce type de déclencheur par une condition faite sur un test de last_updated, même résultat.

Je décortique pour comprendre…

Voici le graphique de la valeur :
image

Oui, c’est inchangé, valeur 101km en permanence, sans interruption ni passage indisponible au démarrage ou autre.

Si je vais chercher last_updated, je trouve :

Il me trouve un 07:20 or il ne s’est rien passé à cette heure.

La donnée vient de l’intégration Wallbox et semble fonctionner parfaitement.

Ni la valeur ni les attributs n’ont d’interet à être modifiés à 7:20

image

Je ne sais plus où trop chercher.
Je me demande si la class total_increasing peut avoir un impact, je ne vois rien d’autre.

Si vous avez un indice, hésitez pas.
Une semaine que je suis là dessus.
Merci

Edit :
Sous Jeedom, je me souvenais une fonctionnalité qui m’avait souvent sauvé pour ce type de souci :
image
Cela doit rappeler des souvenirs à certains. :wink:
A votre avis, cela existe sur HA ?

Hello.
tu as 2 infos différentes :

  • last_updated

state.last_updated
Time the state was written to the state machine in UTC time.
Note that writing the exact same state including attributes will not result in this field being updated.
Example: 2017-10-28 08:13:36.715874+00:00.

  • last_changed

state.last_changed
Time the state changed in the state machine in UTC time.
This is not updated when there are only updated attributes.
Example: 2017-10-28 08:13:36.715874+00:00.

1 « J'aime »

Salut @Pulpy-Luke

Ha oui, c’était une jolie piste, j’avais testé, malheureusement, pareil :

Salut
Pour avoir tester last_updated et last_changed par rapport à une automatisation que je voulais faire je me suis aperçu que ces valeurs étaient remise à jour à chaque redémarrage de HA et ce même si l’état du sensor n’avait pas changé.
Je suppose même que si ta wallbox devient indisponible un instant qu’a la re-synchro last_updated et last_changed soit mis à jour.
Pour contourner cela j’ai créé un input_text qui stocke la valeur de last_changed quand effectivement le sensor à bien changé de valeur et je me sers de cet input_text pour faire les calculs de date et temps.

Mon automatisation qui stocke la valeur :

alias: Capteurs - Cumulus chaud
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.msunpv_outbal
    to: "400"
    for:
      hours: 0
      minutes: 15
      seconds: 0
condition: []
action:
  - service: input_boolean.turn_on
    data: {}
    target:
      entity_id: input_boolean.cumulus_hot
  - service: input_text.set_value
    data:
      value: "{{ (as_local(states.input_boolean.cumulus_hot.last_changed)) }}"
    target:
      entity_id: input_text.last_chauffe_solaire_cumulus
mode: single

Le template pour l’affichage :

{% if (((as_timestamp(now()) - as_timestamp(states('input_text.last_chauffe_solaire_cumulus'))) / 3600) | round(2)) < 1 %}
  Dernière chauffe complète il y'a {{((as_timestamp(now()) - as_timestamp(states('input_text.last_chauffe_solaire_cumulus'))) / 60) | round(0)}} minute(s)
{% elif (((as_timestamp(now()) - as_timestamp(states('input_text.last_chauffe_solaire_cumulus'))) / 3600) | round(2)) < 72 %}
  Dernière chauffe complète il y'a {{((as_timestamp(now()) - as_timestamp(states('input_text.last_chauffe_solaire_cumulus'))) / 3600) | round(0)}} heure(s)
{% else %}
  Dernière chauffe complète il y'a {{((as_timestamp(now()) - as_timestamp(states('input_text.last_chauffe_solaire_cumulus'))) / 86400) | round(0)}} jour(s)
{% endif %}

Le résultat :
Capture d’écran 2023-10-25 125457

Par contre ça n’explique pas ton histoire d’automatisaion qui ne fonctionne pas avec le state.

Ben non, je n’arrive pas à comprendre.

Oui, c’est une belle rustine mais ça reste une rustine. Merci pour l’idée.
Je me creuse la tête encore un peu…

Au final, pour clore ce sujet, je n’ai pas trouvé ni compris pourquoi j’avais ces déclenchements intempestifs.
J’ai tout simplement changé de déclencheur, donc je clos sans vraiment avoir compris, cela arrive…