Schieberegler nach Timer übertragen

Hi,

ich möchte mir einen Schieberegler bauen, um einen Timer zu stellen. Beides habe ich über Helfer vorbereitet:


Ich möchte jetzt über ein Automatisierung den Wert 40.0 in die Schreibweise 0:30:00 umrechnen lassen (00:40:00) und den Wert im timer.iron unter dem Attribut duration setzen lassen. Z.b. 90 Minuten sollen dann 01:30:00 werden.

Der Wert timer.iron wird nur noch über den Schieberegler angepasst.

Wie mache ich das am besten?

Edit: Mir fällt gerade noch ein, das der Schieberegler keine Sekunden kennt und der Höchstwert 90 Minuten.

Edit2: Mit welcher Sprache werden die Werte den bearbeitet, bzw. Wo kann man das nachlesen. Z.B würde ich bei der 40.0 die zwei letzten Stellen wegschneiden. Aber die Umrechnung ist schwieriger, oder gibt es da eine Funktion für.

Ausgehend davon das der Input Number die Minuten angibt.
Sehe eine die Automatisierung so aus.

Wenn der Button Timer Bügeleisen gedrückt wird, wird der Timer Iron mit dem Wert des Input Numbers Bügeleisen gestartet.

alias: Timer Bügeleisen
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_button.timer_bugeleisen
conditions: []
actions:
  - action: timer.start
    metadata: {}
    data:
      duration: |
        {{ states('input_number.bugeleisen') | int * 60 }}
    target:
      entity_id: timer.iron
mode: single

Gruß
Osorkon

Ahhhh, ein anderer Ansatz. Und sieht auch nicht so kompliziert aus, wie ich ihn beschrieben habe.

Ich probiere es aus.

So ich habe es versucht und dein Yaml-Code hat mir sehr weiter geholfen. Ich habe einen Taster, mit dem ich nun mit dem Klick direkt auf die Testlampe oder auf den virtuellen Taster beginnen mein Timer mit dem Slider-Timer zu laufen. Ein einziges Problem bleibt noch, was ich in einem Screenshot zeigen kann:

Wenn mann direkt auf dem Timer klickt, dann sieht man im Debug das zwar die Duration auf 2400 angepasst wird, aber finished -at und remaining nicht angepasst wird. Ich habe versucht zumindestens remaining anzupassen über die timer-bar-card, aber ohne erfolg. Dort bleibt der Wert auf 600 und bei der Finished-at bin ich irgendwie ratlos.

Aber ich bin mit deiner Hilfe weit gekommen.

Achso, hier noch der Code der Karte:

type: custom:timer-bar-card
entity: timer.iron
duration:
  entity: input_number.slider_bugeleisen
  units: minutes
mushroom:
  color: blue
debug: true

Ich habe eben eine gute Idee bekommen, wie es vielleicht einfacher geht.

Wenn man eine Automatisierung erstellt, wenn der input_number.slider_bugeleisen angepasst wird muss man den Zustand nur umrechnen und in den Helfer timer.iron in das Attribut Duration übertragen werden.

Also z.B. 40.0 um die .0 kürzen und in das Format: 0:00:00 übersetzen.

Gibt es da eine einfache Lösung, bzw. Hat sowas jemand schonmal gemacht.

Ich bemühe mich auch gerade um einen (wie ich gedacht hatte) simplen Schieberegler für einen Timer.

Aber die Übergabe des Wertes vom Schieberegler an den Timer funktioniert nicht.

Ich bekomme die Meldung:

Fehler: offset input_number.wallbox_timer_eingabe should be format ‘HH:MM’, ‘HH:MM:SS’ or ‘HH:MM:SS.F’ for dictionary value @ data[‘duration’]

alias: Wallbox-Timer
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_number.wallbox_timer_eingabe
conditions: []
actions:
  - action: timer.start
    metadata: {}
    data:
      duration: states('input_number.wallbox_timer_eingabe') | int * 60
    target:
      entity_id: timer.wallbox_timer
mode: single

Was doch ein kleines Zeichen bewirken kann. Der senkrechte Strich bei duration: fehlte.

Es funktioniert. Der Timer startet mit der durch den Schieberegler zugewiesenen Zeit.

alias: Wallbox-Timer
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_number.wallbox_timer_eingabe
conditions: []
actions:
  - action: timer.start
    metadata: {}
    data:
      duration: |
        {{ states('input_number.wallbox_timer_eingabe') | int * 60 }}
    target:
      entity_id: timer.wallbox_timer
mode: single

:crayon:by HarryP: Zusammenführung Doppelpost (bei Änderungen oder hinzufügen von Inhalten bitte die „Bearbeitungsfunktion“ anstatt „Antworten“ zu nutzen) :+1:

Update:

Nochmal besten Dank an @Osorkon für den zielführenden Tipp!

Bei mir sieht das jetzt so aus auf dem Dashboard:

Anstatt Wallbox kann man das auch für ein Licht, eine Heizung oder jede andere schaltbare Entität verwenden.

Helfer sind:

1x Timer

1x Zahlenwerteingabe (durch Schieberegler)

Automationen sind:

1 x Timer setzen (mit dem Yaml code von Osorkon) und Start

1 x Anschalten der gewünschten Entität bei Timer (Änderung Leerlauf zu Aktiv)

1 x Ausschalten der gewünschten Entität bei Timer Ende (Änderung Aktiv zu Leerlauf)