Wie lange läuft die Spülmaschine schon?

Hallo zusammen,

ich habe einen Shelly PM in der Spülmaschinensteckdose installiert und kann somit den Stromverbrauch messen. Ich würde jetzt aber gerne abhängig von einem Schwellwert (Verbrauch) einen Timer starten lassen der so lange läuft bis für x Sekunden dieser Schwellwert nicht mehr erreicht wird.
Ziel ist es die Laufzeit der Spülmaschine anzuzeigen.

Kann ich das mit einem Helfer machen oder was ist der beste Weg? Hat jemand eine Idee :grinning:

Viele Dank schon mal und viele Grüße

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.

2 „Gefällt mir“

Schau dort mal folgenden Blueprint an. Dort kannst du mit Custom Action und einem Helfer die Dauer ermitteln.

Gruß, Lars

1 „Gefällt mir“

Blueprints haben eine sehr niedrige Lernkurve. :grinning:

Dafür eine umso höhere Erfolgsquote. Manchmal sogar mit Zufriedenheitsbonus. :tada:

1 „Gefällt mir“

Vielleicht hilft dir auch die Integration weiter:

2 „Gefällt mir“