Es gibt mehrere Wege aber dies wäre einer.
- alias: "Messdauer des Sensors speichern"
trigger:
- platform: state
entity_id: binary_sensor.mein_sensor
to: "on"
id: "start"
- platform: state
entity_id: binary_sensor.mein_sensor
to: "off"
id: "stop"
variables:
startzeit: "{{ states.binary_sensor.mein_sensor.last_changed if trigger.id == 'stop' else none }}"
action:
- choose:
- conditions:
- condition: trigger
id: "stop"
sequence:
- variables:
endzeit: "{{ now() }}"
dauer: "{{ (endzeit - startzeit).total_seconds() | round(2) }}"
- service: input_text.set_value
target:
entity_id: input_text.sensor_dauer
data:
value: "{{ dauer }} Sekunden"
Somit wird die Dauer in einen Helfer input_text.sensor_dauer geschrieben. Muss natürlich noch angelegt werden. Wird in Sekunden ausgegeben, wenn du es in minuten haben willst dann halt noch Anpassen.
Und hier hat @Markus1984 ein Template geschrieben.