Probleme beim Rechnen mit Uhrzeiten

Hallo, ich brauche bitte einen Denkanstoß für die Darstellung der sich verlängernden Tage seit der Sonnenwende.

Die Integration “Sonne” liefert mir Werte für den nächsten Sonnenaufgang und den nächsten Sonnenuntergang. Das bedeutet, dass nach dem Sonnenaufgang des aktuellen Tages die Entität Sonnenaufgang die Uhrzeit des Folgetages enthält. Nicht ganz so schön. Aber ok.
Nun dachte ich, dass ich mir aus den beiden Entitäten mit einem Helfer-Template die Uhrzeit ( ohne das Datum ) extrahiere:

Der Helfer Sonnenaufgang ( Ausgabe für heute “8:10” ) sieht so aus:

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

Analog Sonnenuntergang ( Ausgabe “16:14” ):

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

Ein Helfer-Template Sonnendauer ( Ausgabe “09:04” ) sah auf den ersten Blick richtig aus:

{{ ( as_timestamp(states("sensor.sun_next_setting")) - as_timestamp(states("sensor.sun_next_rising"))) | timestamp_custom("%H:%M") }}

Aber es sollten ja “08:14” sein. Also eine Stunde weniger.
Noch klarer wird das Problem, wenn ich mir über die entsprechenden Helfer ein Diagramm mit ApexCharts erstelle. Die Werte unter Sonne sehen gut aus ( bis auf eine Stunde zu viel ), aber im Digramm sieht man das wohl falsche Zahlenformat:

Sowohl für Sonnenaufgang, als auch -untergang und -dauer, wird nur die volle Stunde genommen.

Ich denke, dass ich mit meinen Helfern nicht wirklich ein Stundenformat erzeugt habe.

Danke für jede Idee

Um auf die 8h zu kommen kannst du

{{ (states("sensor.sun_next_setting")|as_datetime - states("sensor.sun_next_rising")|as_datetime) }}

rechnen. Ich habe nur noch nicht rausgefunden, wie du es dann richtig formatieren kannst.

Hallo JC00P3R,

vielen Dank dafür. Nun bin ich noch etwas verwirrter:

type: vertical-stack
cards:
  - type: entities
    entities:
      - entity: sensor.sonnenaufgang
      - entity: sensor.sonnenuntergang
      - entity: sensor.sonnenstunden
  - type: custom:apexcharts-card
    apex_config:
      legend:
        show: false
    header:
      show: true
      title: Tageslänge
      show_states: true
      colorize_states: true
    graph_span: year
    span:
      start: year
    all_series_config:
      type: line
      stroke_width: 2
      curve: smooth
      extend_to: now
      fill_raw: last
      # float_precision: 1
    yaxis:
      - show: true
        min: 0
        max: 24
    series:
      - entity: sensor.sonnenaufgang
        color: gold
        name: Aufgang
      - entity: sensor.sonnenuntergang
        color: pink
        name: Untergang
      - entity: sensor.sonnenstunden
        color: lightgreen
        name: Länge

Die Dauer wird nun richtig berechnet, aber schau’ Dir die Sonnenlänge im Diagramm an. Wird auf 9 geändert, aber selber Sensor.

Und gerade ist der heutige Sonnenaufgang vorbei und nun ist die Differenz vom heutigen Sonnenuntergang zum morgigen Sonnenaufgang negativ:

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)