NEWS
ShellyPlug an wenn AV-Receiver an
-
@paul53 so:
-
@xadox sagte: so:
Ja. Ich verstehe nicht, weshalb gerade Anfänger das komplexe CRON-Wizard verwenden? Besser so:
-
@paul53 Vielen Dank für dein Script. Das ist dann aber schon sehr stark optimiert & zusammengefasst.
Da wäre ich selber nicht drauf gekommen: -
@xadox mir war als müsste man "aktuelle zeit zwischen“ x und y nehmen ... weil "größer als" ja auch 20 Uhr am nächsten tag sein kann, kann aber auch sein das ich mich täusche, oder das das inzwischen funktioniert ... glaube hatte da auch mal Probleme mit, ist aber schon ne weile her
-
@Dom-Sch Das Script funktioniert so. Ohne weitere Anpassung.
@paul53 kannst du mir ggf. noch einen Tipp geben.
Ich habe kläglich versucht das Script soweit abzuändern, dass anstelle eine festen Uhrzeit der Sonnenuntergang verwendet wird als Bedingung die Lampe zu schalten.Also Licht hierbei nur anschalten wenn Sonne untergeht.
-
@xadox sagte: anstelle eine festen Uhrzeit der Sonnenuntergang verwendet wird
-
-
-
@xadox soll nur ein tip gewesen sein, man erspart sich aber einiges an ärgerei mit blockly. dafür werden solche adapter ja gemacht. ich stuere damit garagentor, terrassenlicht, poolfilter, duschlüftung, ...
-
Ich habe nun einen Helligkeitssensor. Würde das Script so funktionieren:
-
@xadox sagte: Helligkeitssensor. Würde das Script so funktionieren:
Bei Helligkeitswerten bis 5 lux und eingeschaltetem Receiver würde viel Funkverkehr erzeugt. Besser so:
-
@paul53 Danke. Puh da wäre ich im Leben nicht drauf gekommen:
Passt das so:
on({id: 'denon.0.settings.powerSystem', change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; ReceiverPower = (obj.state ? obj.state.val : ""); setState("shelly.0.SHPLG-S#9D9224#1.Relay0.Switch"/*Switch*/, (ReceiverPower && Helligkeit)); }); on({id: 'deconz.0.Sensors.3.lux', change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; Helligkeit = (obj.state ? obj.state.val : "") <= 5; if (!getState("shelly.0.SHPLG-S#9D9224#1.Relay0.Switch").val && Helligkeit && ReceiverPower) { setState("shelly.0.SHPLG-S#9D9224#1.Relay0.Switch"/*Switch*/, true); } });
-
@xadox sagte: Passt das so:
Ja.
-
@paul53 Es funktioniert. Verstehen tue ich das Script aber nicht.
Wie kann ich im ersten Trigger den Schalter auf "ReceiverPower" und gleichzeitig auf "Helligkeit" gesetzt werden.
Im zweiten Trigger wird "Helligkeit" auf einen Vergleich zwischen "Wert" und einer Zahl gesetzt.Ggf. sollte ich schneller als geplant mal einen Blick auf @da_Woody Empfehlung werfen.
Es macht auf lange sich ja keinen Sinn sich immer nur Scripte Basteln zu lassen ohne diese selber zu verstehen. -
@xadox sagte: Wie kann ich im ersten Trigger den Schalter auf "ReceiverPower" und gleichzeitig auf "Helligkeit" gesetzt werden.
Im ersten Trigger wird nur die globale Variable "ReceiverPower" auf false (aus) oder true (ein) gesetzt.
Im zweiten Trigger wird nur die globale Variable "Helligkeit" auf false (hell) oder true (dunkel) gesetzt.
In beiden Triggern werden "ReceiverPower" UND "Helligkeit" ausgewertet. -
@paul53 Jetzt habe ich es kappiert. Vielen Dank.
Was mir noch aufgefallen ist.
Sollte der Helligkeitswert allerdings wieder ansteigen schaltet das Licht nicht wieder aus.
Sondern bleibt so lange an bis der Receiver wieder ausgeschaltet wird. -
@xadox sagte: Sollte der Helligkeitswert allerdings wieder ansteigen schaltet das Licht nicht wieder aus. Sondern bleibt so lange an bis der Receiver wieder ausgeschaltet wird.
So ist es. Nicht gewollt?
-
@paul53 Ja. nicht gewollt.
-
@xadox sagte: nicht gewollt.
Das Licht soll also ausgehen, wenn es wieder heller wird?
Alternativ mit einem Mehrfach-Trigger:
Das kann aber dazu führen, dass im Grenzbereich um 5 lux das Licht mehrmals kurz hintereinander ein- und ausschaltet.
-
@paul53 Vielen Dank . Das muss ich mir mal genauer ansehen.