Helfer / Schalter mit Ausschaltverzögerung ?

HaUsr23

Member
Hallo zusamen,

ich würde gerne eine Steckdose sofort einschalten wenn ich den Helfer/Schalter betätige, dieses aber beim nächsten Betätigen des Helfers/Schalters dann erst nach einer vorgegebenen Zeit ausschalten.
Um das Ganze dann noch weiter zu treiben, wäre es idealerweise so, dass während der Ausschaltverzögerung, die noch zu wartende Zeit, auch noch angezeigt würde.
Dieses muss nicht unbedingt in dem Button (Schalter/Helfer) sein, kann auch in einer zweiten Karte dargestellt werden.

Besteht eine reale Chance so etwas zu erstellen ?
Falls ja wie ?

Hat sowas schon mal jemand gemacht ?
 
Klar geht das! ;) Ich verstehe Dich hoffentlich richtig, Du möchtest eine Ausschaltverzögerung?

Ich würde das in zwei Automationen machen, einmal für an, einmal für aus. Wenn Du es in einer willst, sag nochmal Bescheid.

Als Erstes brauchst Du einen Helfer (input_boolean) den Du schaltest, das wird Dein trigger. Dann brauchen wir noch einen timer für die Zeitspanne der Ausschaltverzögerung. Wenn Du den Wert des Timers über Dein Dashboard steuern willst, brauchst Du noch einen Helfer (z.B. input_number für x Minuten).

Automation für an:
Code:
id: automation_schalter_an
trigger:
  - platform: state
    entity_id: input_boolean.xxx
    to: "on"
action:
  - service: switch.turn_on
    entity_id: switch.xxx

Automation für aus:
Code:
id: automation_schalter_aus
trigger:
  - platform: state
    entity_id: input_boolean.xxx
    to: "off"
action:
  - service: timer.start
    entity_id: timer.xxx
    data:
      duration: "{{ input_number.xxx }}"
  - wait_for_template:
      - platform: event
        event_type: timer.finished
        event_data:
          entity_id: timer.xxx
        timeout: "00:10:00"    
  - service: switch.turn_off
    entity_id: switch.xxx
ich hab da mal einen Timeout von 10 Minuten gesetzt, damit das nicht ewig hängen bleibt, müsstest halt anpassen

Es ist spät, bitte sieh mir etwaige kleine Fehler nach, und gib Bescheid. :) Aber mal so als Idee für den Anfang.

Im Dashboard würde ich mir dafür mittels einer vertical-stack-card einmal den input_boolean legen, dann eine entity-card für die Zeitspanne (die input_number) und zu guter Letzt eine timer-bar-card, das sieht bestimmt ganz nett aus. Natürlich kann man da auch noch ran, das ist nur eine erste Idee.

Sag Bescheid, ob was klemmt!
 
Zuletzt bearbeitet:
Moin paddy0174
ja genau, ich hatte mir auch schon eine Automation angelegt und das funktioniert auch soweit ganz problemlos.
Da ich möglichst viele Informationen auf meinem "Status" Dashboard unterbringen möchte ist der Platz für diesen "Schalter" halt begrenzt. Und meine Vorstellungen sind bei der Haptik und Optik leider immer etwas "speziell", wie Du ja aus meinem Thread
Aus Schaltern Uhrzeit erstellen... ja weißt. :)
Im Prinzip ist die "normale" Schaltfläche in einer Karte okay, wenn sie, in meinem Fall, im eingeschalteten Zustand gelb und im ausgeschalteten Zustand blau ist.
Wenn ich einschalte wird die ja auch direkt gelb, wenn ich ausschalte halt nach eingestellter Wartezeit blau. Soweit so gut.
Nur ein Feedback, wie lange das dauert fehlt halt.
Die timer-bar-card hatte ich auch schon gesehen und mal angetestet, aber da steht dann bei mir immer neben dem Stoppuhr Icon der Name des Timers und idle wenn halt nix läuft und das sieht "doof" aus.
Heute morgen ist mir die Idee gekommen, dass mit drei bedingten Karten zu lösen, in der Hoffnung, dass dann nicht immer optisch das Dashboard durch das An- und Ausschalten der Karten "wackelt".
Also
wenn Steckdose AN -> Karte mit eingeschaltetem Schalter
wenn Timer läuft -> Karte mit Countdown (wie auch immer ich dann von 2 min rückwärts laufend die Zahlen im Format "mm:ss" dort darstelle)
wenn Steckdose AUS -> Karte mit ausgeschaltetem Schalter
Ich spiel jetzt mal, bin aber weiter für Ideen offen !!

Andere Frage:
Kann man die Automationen auch direkt in der automations.yaml programmieren und dort ein eigenes ID wie z.B. Dein "id: automation_schalter_aus" vergeben oder muss man dazu erst eine leere Automation in der GUI anlegen weil HA u.U. eigene IDs vergeben möchte .
 
Zuletzt bearbeitet:
Das mit den unterschiedlichen Farben ist so ein Problem, denn da hängt viel an den Einstellungen aus dem Theme. Das kann man zwar alles überschreiben und auf "seine" Farben einstellen, das wird nur dummerweise spätestens dann zum Problem, wenn Du Dein Theme wechselst, und dann "deine" Farben so gar nicht mehr passen wollen. Daher ist es meist am geschicktesten, entweder die Farben direkt im Theme zu ändern, was leider ein relativ hoher Aufwand ist, da HA die Farben per Variablen bestimmt, und die zu finden ist ein echter Graus. Oder man nimmt eben die Farben aus dem Theme, und überschreibt nur ganz bestimmte Dinge bei speziellen Schaltern. Z.B. wenn Du einen wichtigen Schalter hast, der soll dann halt wirklich immer rot sein, um einen Alarm anzuzeigen.

Die timer-bar-card hatte ich auch schon gesehen und mal angetestet, aber da steht dann bei mir immer neben dem Stoppuhr Icon der Name des Timers und idle wenn halt nix läuft und das sieht "doof" aus.
Das lässt sich praktisch alles einstellen. Also wenn es "nur" am Design liegt, kann man da bis zu einem gewissen Punkt was machen. Zeig mal den YAML code, den Du für die Karte hast, dann bauen wir den um.
Heute morgen ist mir die Idee gekommen, dass mit drei bedingten Karten zu lösen, in der Hoffnung, dass dann nicht immer optisch das Dashboard durch das An- und Ausschalten der Karten "wackelt".
Das ist wirklich eine der schwierigsten Übungen in HA, ein nicht ständig sich verschiebendes Dashboard zu haben. Leider lässt sich das nur mittels Grid-System vernünftig lösen, ich empfehle hier meine Lieblings-Card, lovelace-layout-card. Ohne die wirst Du nur unter mega Aufwand ein "stehendes" Design bekommen. Du merkst allerdings, wir tauchen hier langsam aber sicher schon ziemlich tief ein, ab jetzt werden Designfragen aufkommen, die wie im anderen Thread erwähnt, nur Du selbst beantworten kannst... ;) Ich kann Dir technisch helfen, also wenn Du mir sagst, das Bild hätte ich gerne als Icon auf der Karte, aber wenn Du danach fragst, ob das Icon weiter links oder rechts sollte, dann bin ich leider völlig raus. 🤣🤣🤣 Design halt...
wenn Steckdose AN -> Karte mit eingeschaltetem Schalter
wenn Timer läuft -> Karte mit Countdown (wie auch immer ich dann von 2 min rückwärts laufend die Zahlen im Format "mm:ss" dort darstelle)
wenn Steckdose AUS -> Karte mit ausgeschaltetem Schalter
Das würde ich mit einer state-switch-card lösen. Da hast Du die Möglichkeit, mittels state-switch eine oder mehrere Karten anzeigen zu lassen. Beispielsweise wenn der Timer läuft, wird die timer-bar-card eingeblendet, wenn der Timer im "idle" ist, ist sie nicht sichtbar.

Das ändert allerdings nichts an der Thematik von oben, das Design muss sich an der Stelle anpassen, also verschieben. Du könntest höchstens noch mit einem Pop-up arbeiten, aber ob das die Lösung ist, ich weiss ja nicht. :unsure:
Kann man die Automationen auch direkt in der automations.yaml programmieren und dort ein eigenes ID wie z.B. Dein "id: automation_schalter_aus" vergeben oder muss man dazu erst eine leere Automation in der GUI anlegen weil HA u.U. eigene IDs vergeben möchte .
Ja das kannst Du jederzeit, solange Du eine "id" vergibst, solltest Du die dann sogar über die UI bearbeiten können. Du brauchst nicht vorher irgendeine leere Automation anlegen, das klappt so auch!

ABER (!), das ist jetzt genau der richtige Zeitpunkt, um mal über eine Aufteilung Deiner Konfiguration nachzudenken. Es wird immer mehr dazu kommen, und man muss irgendwo den Überblick behalten. Insbesondere je mehr Du über YAML machst, umso mehr handschriftlichen Code musst Du pflegen. Daher bin ich persönlich ein Fan von packages. Die machen es einem einfacher, eine logische Struktur zu behalten. Mein Rat wäre hier, beschäftige Dich jetzt schon mit dem Gedanken, dass Du keine 2000 Zeilen lange configuration.yaml möchtest.

Poste bitte mal Deine configuration.yaml, natürlich bereinigt um Passwörter und Privates, dann schauen wir mal, wie wir das geschickt umbauen können.

Am Ende wollen wir für diese Frage jetzt auf folgendes raus: eine Datei für die in der UI erstellten Automationen, und eine Datei in der Du Deine YAML Automationen speicherst. Schön getrennt, dann kann da gar nix schief gehen.
 
Bin heute leider zu nix gekommen (immer noch Erntezeit), werde aber noch das Problem angehen.

Oh ha, es gibt so viele Karten, da muss man aber auch erst mal einen Überblick bekommen...

Also ich habe meine configuration.yaml schon in ein paar Teile zerlegt und include die, damit sollte ich eigentlich zurecht kommen.
Für mich war nur nicht klar ob man einfach so ein ID in der automations.yaml anlegen darf. Bei manchen Systemen führt das gerne mal zu "surealen Effekten".

Was genau meinst Du mit packages ? Das aufteilen der Hauptdateien ?
 
Ah, was gibt's denn Gutes zu ernten? (y)
Also ich habe meine configuration.yaml schon in ein paar Teile zerlegt und include die, damit sollte ich eigentlich zurecht kommen.
Sehr gut, das ist echt ne wichtige Geschichte, die gerne übersehen wird, und dann muss man sich später die dreifache Arbeit machen.
Was genau meinst Du mit packages ? Das aufteilen der Hauptdateien ?
Packages sind eine eigene Art des Aufteilens der Dateien. Du dürftest ja sowas wie sensor: !include sensors.yaml oder so ähnlich haben. Das führt dazu, dass Du, egal wie ausgefeilt Dein System ist, irgendwann alle sogenannten domains wie "Licht", "Sensor", "Automation" usw. alle in einer Datei oder Ordner hast. Halt alle Sensoren an einem Platz.

Packages gehen das genau andersrum an, dort sortierst Du nach logischen Zusammenhängen. Du kannst damit dann z.B. eine Datei wohnzimmer.yaml machen, und packst dort alles rein, was du brauchst, über alle Domains hinweg. Du hast dann eben "Sensoren" und "Licht" in einer Datei, nach Deiner Logik zusammen gehörig. Oder Du gruppierst nach Geräten, z.B. klimaanlagen.yaml und hast dort dann alles was damit zusammen hängt. Vom Thermometer über Scripte zur Steuerung der Anlage hin zu Automationen - alles in einer Datei.
 
Tomaten, Gurken, Möhren, Kartoffeln, Kohl, Salat, … was der Herbst noch so bietet :)
Heute wurden Gurken eingemacht.
War also bei mir nix mit Beine hoch und die Sonne genießen ;)

Muss ich mich mal mit den packages befassen. Wie wird das mit den Packages denn gemacht ?

Und wo/wie wird der Spook installiert? Hab den weder unter Integrationen noch Add-Ons gefunden ?
 
Hört sich nach nem lecker Gemüseeintopf an 🥣

Packages sind ähnlich einzubinden wie Deine aufgeteilten config Dateien.

In configuration.yaml fügst Du folgendes ein:
Code:
homeassistant:
  packages: !include_dir_named packages
Achtung, wenn Du den Oberpunkt homeassistant schon hast, dann nur die zweite Zeile einfügen und entsprechend einrücken.

Dann legst Du in Deinem config Ordner (das ist der, indem die configuration.yaml liegt) einen Unterordner "packages" an.

In dem Ordner kannst Du nun nach Bedarf Dateien anlegen, die Du mit Deiner Konfiguration füllst, also z.B. wohnzimmer.yaml und in der Datei

Code:
automation:
  - id: ...

script:
  - name: xxx

wasauchimmer:
  - ...

Das war's fast schon, Neustart ist wichtig nachdem Du das eingerichtet hast. Ab dann kannst Du den YAML reload machen, richtiger Neustart ist nur notwendig, wenn Du neue "Domains" aufnimmst. :)

Spook findest Du in HACS, gehört zu den Standard Repositories. Einfach Spook in die Suche in HACS und dann installieren. Nach der Installation kannst Du Sie wie gewohnt unter Einstellungen > Geräte & Dienste > Integration hinzufügen aktivieren und ab dann läuft Spook im Hintergrund mit. Wenn Du dann verwaiste Einträge hast, bekommst Du die unter "Reparaturen" angezeigt. Kann sein, dass Du nach der Installation zuerst neu starten musst, da kann ich mich nicht mehr dran erinnern, sorry! Einfach sicherheitshalber mal neu starten. 😂😂
 
So, ich habe soweit hinbekommen, dass es ganz ok ist.
Habe dann doch auf die timer-bar-card zurückgegriffen und auch geschafft ihr das Aussehen zu verpassen was ich wollte, nur ein Bar ohne alles drum herum.
Das ganze in 2x als bedingte Karte je in einem vertical Stack sowie drei Automationen und ein Timer.
Hört sich schlimm an, isses auch :) , aber optisch ganz ok.

So ist dann die Optik: v.l.n.r. Aus / An / Ausschalt-Delay
NAS.png
Das Schöne ist, ist die Ausschaltverzögerung aktiv kann sie durch nochmaliges klicken wieder neu gestartet werden.
 

Letzte Anleitungen

Statistik des Forums

Themen
4.608
Beiträge
47.197
Mitglieder
4.258
Neuestes Mitglied
fumdock
Zurück
Oben