Home Connect - Siemens Geschirrspüler: Falsche Zeitzone?

Hi!

Seit gestern hab ich einen smarten Geschirrspüler :grin:
Einbindung in Home Assistant gelang sehr gut, zwischendurch verlor er alle Einstellungen, was wohl an den Servern von Home Connect lag, weil die App auch nicht funktionierte.

Ich habe jetzt das Problem, dass die Zeitzonen nicht stimmen.
In Home Assistant stimmt die Zeitzone, auf meinen Endgeräten die HA aufrufen, ebenfalls. In der App Home Connect ist die Zeitzone mit “Wien” richtig ausgewählt und es werden auch die richtige Uhrzeit und das Datum angezeigt.

Mit folgendem Code (custom.mushroom-template-card) allerdings bekomme ich statt der geplanten Endzeit 15:09 Uhr die Ausgabe 14:09 Uhr.

{{ states('sensor.geschirrspuler_remaining_program_time') [11:16] }} Uhr

Klicke ich auf den Eintrag für mehr Infos, bekomme ich die richtigen Werte:
Unbenannt

Wer hätte da eine Lösung für mich?

was kommt den im Templating in den Entwicklerwerkzeugen wenn du den Code dort eingibst? Was bewirkt eigentlich das [11:16]?

Wenn ich die Entität einfach so aufrufe, bekomme ich den richtigen Wert. Wenn ich
wie oben gezeigt die Tap-aktion ausführe, ebenfalls.

Entwicklerwerkzeuge geben ebenfalls den falschen Wert wider:

Der alleinige Aufruf von “sensor.geschirrspuler_remaining_program_time” gibt das komplette Datum und die Uhrzeit zurück - aber eben die falsche!

"[11:16] beschneidet nur den String, der ausgegeben wird.
2024-03-14T14:06 wird dann 14:06

Das hier funktioniert nun und wäre die Lösung:

{{ as_timestamp(states('sensor.geschirrspuler_remaining_program_time')) | timestamp_custom("%H:%M") }}

Ich frag mich trotzdem, warums anders rum nicht klappt?

1 „Gefällt mir“

Weil der Sensor die Urzeit in UTC ausgibt.

Aktuell haben wir Winterzeit, also 1h plus. Im Sommer sind es dann 2 h plus.

Der Zeitstempel dagegen wird als lokale Zeit wieder gegeben.

Mit


{{ as_timestamp(states('sensor.geschirrspuler_remaining_program_time')) | timestamp_custom("%H:%M", false) }}

hast Du wieder die UTC Zeit

Gruß
Osorkon

Danke für die Erklärung!
Habs jetzt eh mit timestamp gelöst, aber es ist schon komisch, dass der Sensorwert in den Entwicklerwerkzeugen 14:09 Uhr ausgibt, aber wenn ich den Sensor aus Geräte → home connect → Geschirrspüler aufrufe, den korrekten Wert erhalte.

Über die Karte wird die Lokale Zeitzone in den Einstellungen berücksichtigt.

Beim template nicht.

Das gleiche gilt für den Status
Als Karte zeigt ein Fenster Sensor offen oder geschlossen.

Ein Template on oder off.
Allerdings gibt es seit 2024.3 die Übersetzung in templates. Wenn Du anstatt states state_translated verwenden tust.

Gruß
Osorkon

1 „Gefällt mir“

2024.3 hab ich noch nicht installiert :crazy_face: Ich wart mal die größten bugs ab.

Hi zusammen,

ich klinke mich hier mal ein, da ich die gleiche Herausforderung habe. Mit dem oben genannten Timestamp Code wird mit die UTC Zeit in der Template Card wiedergegeben, die auch in den Entwicklerwerkzeugen angezeigt wird für den Sensor. Diese wird dann eben auch zurückgegeben.

{{ as_timestamp(states('sensor.dishwasher_remaining_program_time')) | timestamp_custom("%H:%M", false) }}

Den Code dafür habe ich einfach in den Secondary Infos der Template Card - funktionert auch, nur eben mit der UTC Zeit.

Gibt es eine einfache Möglichkeit, zum Timestamp einfach 2h zu addieren?

Thx!

Welche Integration nimmst du denn?

Ich nutze die “offizielle” Home Connect Integration, die HACS (Home Connect alt) hab ich gesehen, aber noch nicht genutzt.

Benutze die, die ist viel weiter und wird auch gepflegt

Ok, werde ich mal testen, auf den ersten Blick gibt hier der “Remaining Time” Sensor aber die Zeit auch in UTC aus. Somit bleibt meine Grundfrage oder wie stellst du auf einer Karte die Restlaufzeit dar?

Lass einfach das , false weg.

Also

{{ as_timestamp(states('sensor.dishwasher_remaining_program_time')) | timestamp_custom("%H:%M") }}

Einfach das false in Deinem Template weg lassen.


{{ as_timestamp(states('sensor.dishwasher_remaining_program_time')) | timestamp_custom("%H:%M") }}

Gruß
Osorkon

Ich gebe aktuell die Standardsensoren aus


xxx.programprogress und xxx.remainingprogramtime

oder ich benutze ganz gern easy_time

    secondary: |-
      noch
      {% set f = states('sensor.xxx_remainingprogramtime') %}
      {% from 'easy_time.jinja' import easy_time %}
      {{ easy_time(f) }}

Teste ich alles mal aus - danke Euch schonmal!

Hallo,

ich habe ein ähnliches Problem mit meiner Waschmaschine. Ich habe eine Bildelementekarte mit folgendem Code erstellt.

type: picture-elements
elements:
  - type: state-label
    entity: sensor.waschmaschine_programm_fortschritt
    style:
      left: 40%
      top: 38%
      color: lightblue
      font-size: 30px
      text-shadow: 1px 1px 3px black
  - type: state-label
    entity: sensor.waschmaschine_programm_endzeit
    style:
      left: 40%
      top: 50%
      color: lightblue
      font-size: 30px
      text-shadow: 1px 1px 3px black
    value_template: >
      {{ as_timestamp(states('sensor.waschmaschine_programm_endzeit')) |
      timestamp_custom("%H:%M") }}

Die Uhrzeit passt auch soweit. Nur leider bekomme ich das Datum nicht weg. Dieses wird mir immer noch zusätzlich angezeigt.