Korrekter Zeitstempel für Änderungen des Device Status

Hallo, warum wird denn bei zigbee2mqtt letzte Änderung angezeigt obwohl sich der Kontakt nicht geöffnet hat. Bezieht sich die letzte Änderung auf die Meldung vom Device bei? Und am besten global nachträglich für alle Sensoren :blush:

Wie kann ich das anpassen, da z.b. der Status der Änderung des Kontaktes angezeigt wird.

Und wie kann ich anstelle der vergangenen Zeit einen Zeitstempel anzeigen lassen.

Hat hier sonst niemand das Problem oder habe ich da schlecht beschrieben?

Zeige mal bitte mit Screenshots was du genau meinst :smiley:
Status offen sollte in MQTT die ganze Zeit offen sein bis er geschlossen wird

Danke für deine Rückmeldung. Ich habe hier als Zustand “letzte Änderung” für das Dashboard ausgewählt. Allerdings habe ich den Contact sicherlich nicht vorgestern ausgelöst, sondern schon vor einer längeren Zeit. Oder wird der Status auch bei einem Neustart von HA bei Letze Änderung erkannt?

Ein Neustart von Home Assistant setzt den Zeitstempel für „zuletzt geändert“ auf die Zeitpunkt des Neustarts. Das lässt sich nicht ändern.

Das ist echt doof..Habe ich auch schon gesehen..Wenn man wissen will, wann was passiert ist das letzte mal geht das nicht..Leider steht da ja nicht Neustart oder so..

Template Sensor fällt mir ein mit explizit ON zu Off und Off zu On
Dann werden alle anderen ignoriert (wie bei Automationen)

Wäre mir aber beim Statusverlauf egal, dann müsste er ja von unavailable einem Status wechseln

Danke @Nicknol das erklärt warum die nicht “altern” da ich neu bei HA bin und aktuell öfters mal neu starten muss :slight_smile:

Wie kann ich den am Einfachsten aus der vergangenen Zeit einen Zeitpunktstempel [hh:mm,tt.mm.yy) anzeigen lassen ohne das ich das bei jeder Entität über card-mod oder so ändern muss

Hallo ChatGPT :wink:

Home Assistant: wie formatiere ich in einem Jinja-Template den Zeitstempel des last_changed Attribut einer Entität als einen lokalen Zeitstempel?

In Home Assistant musst du last_changed immer erst von UTC → lokale Zeit konvertieren.
Intern speichert HA Zeitstempel nämlich als UTC.

{% set t = states['sensor.steckdose_45z_power'].last_changed | as_local %}
{{ t.strftime('%d.%m.%Y %H:%M:%S') }}

:face_with_monocle: :slight_smile:

:exclamation_question_mark:

Ok, habe es nun rausgefunden. Hätte ich das vorher gewusst hätte ich gleich alles mit Mushrooms Cards gemacht :frowning:

primary: SfA-Pumpe
secondary: >
  {# Holt den Zeitstempel der letzten Änderung des Schalters #} {% set last =
  states.switch.sfa_pumpe_1pm_7dfc_shelly1pm_sfa_pumpe.last_changed %}
  {% if is_state('switch.sfa_pumpe_1pm_d48afc597dfc_shelly1pm_sfa_pumpe', 'on')
  %}
    Läuft seit {{ as_timestamp(last) | timestamp_custom('%H:%M') }} Uhr
  {% else %}
    Aus seit {{ as_timestamp(last) | timestamp_custom('%H:%M') }} Uhr
  {% endif %}