NEWS
3 Shelly RGBW Terrassenbeleuchtung synchronisieren
-
@maniac
Der grünmarkierte Datenpunkt in deiner Grafik ist der Gruppen White Datenpunkt.
Das eine Skript setzte die Werte der einzelnen Shellys, wenn der Gruppenwert gesetzt wird. Das andere Skript setzt die Gruppenwerte, wenn eines der einzelnen Werte verändert wird. (ohne dass der Gruppenwert ausgeführt sind)Beispiel:
Ausgangszustand 1: Alle Shellys sind aus
einer Shelly wird separat an gemacht. Dann geht der Switchdatenpunkt der Gruppe auf true. die anderen beiden Shelly bleiben aber auf false.
Ausgangszustand 2: Alle Shellys sind aus.
Der Gruppendatenpunkt Switch wird auf true geschaltet. Alle 3 Shellys gehen bei switch auf true.EDIT: Bei dir wird anscheinend jedes Mal alles gesetzt wenn sich einer der Gruppen-Datenpunkte ändert. Ich habe für jeden Datenpunkt einen einzelnen Trigger, die sich dann auch nur um die jeweils geänderten Datenpunkte kümmern.
-
Ich habe es jetzt soweit hinbekommen. Allerdings hab ich manchmal noch das Problem, dass die LEDs resetten, bzw. die Shelly. Kann es sein, dass die Shelly manchmal etwas träge sind?
Wenn ich mehrfach direkt nacheinander Farbe oder Helligkeit wechsle, gehen die LED aus und kurz danach wieder an mit einem Farb-/Helligkeitswert den ich nicht zuordnen kann.Als Beispiel möchte ich ein "Lauflicht" erstellen. Dazu habe ich jetzt eine Verzögerung von 100ms eingebaut:
Damit funktioniert es meistens, aber ab und an bekomme ich im Script die Warnung:
07:31:03.179 warn javascript.0 at Object.<anonymous> (script.js.Licht.Terrasse.Lauflicht1:95:7) 07:31:11.518 warn javascript.0 at Object.<anonymous> (script.js.Licht.Terrasse.Lauflicht1:95:7)
Danach kann ich auch in der VIS den Datenpunkt "White" nicht mehr ändern. Ich muss VIS neu laden.
Frage: Was bedeutet die Warnung?
-
@maniac sagte in 3 Shelly RGBW Terrassenbeleuchtung synchronisieren:
Ich habe es jetzt soweit hinbekommen. Allerdings hab ich manchmal noch das Problem, dass die LEDs resetten, bzw. die Shelly. Kann es sein, dass die Shelly manchmal etwas träge sind?
Wenn ich mehrfach direkt nacheinander Farbe oder Helligkeit wechsle, gehen die LED aus und kurz danach wieder an mit einem Farb-/Helligkeitswert den ich nicht zuordnen kann.So ein ähnliches Verhalten habe ich auch. Da es bisher relativ selten passiert, kann ich aktuell damit leben.
Ob hier das Skript optimiert werden kann, oder ob ggf. der Shelly Adapter sowas abfangen sollte, habe ich bisher nicht weiter verfolgt. -
So langsam läuft es wie es soll. Brauche aber bitte einen Denkanstoß.
Ich habe mal versucht die LED mit einer anderen(kürzeren) Funktion langsam heller werden zu lassen.
Mein Ansatz sieht jetzt so aus.
Das funktioniert aber aber nicht
Ich hatte jetzt angenommen, dass die Variable "gainblau" so lange erhöht wird bis sie 100 erreicht hat und dadurch die LED in 10% Schritten heller werden.
Es passiert aber gar nichts innerhalb der Schleife. Switch und xx-Blue werden richtig gesetzt wenn ich den Trigger auslöse.Wo liegt mein Fehler?
-
@maniac Bau Mal einen Timeout Block innerhalb deiner Schleife, statt der Verzögerungen. Lass den Timeout mal auf min. 1sek konfiguriert. Funktioniert das besser? (Erstmal unabhängig ob der 10sek Fade erst Mal zu lange dauert)
-
@maniac sagte in 3 Shelly RGBW Terrassenbeleuchtung synchronisieren:
So langsam läuft es wie es soll. Brauche aber bitte einen Denkanstoß.
Ich habe mal versucht die LED mit einer anderen(kürzeren) Funktion langsam heller werden zu lassen.
Mein Ansatz sieht jetzt so aus.
Das funktioniert aber aber nicht
Ich hatte jetzt angenommen, dass die Variable "gainblau" so lange erhöht wird bis sie 100 erreicht hat und dadurch die LED in 10% Schritten heller werden.
Es passiert aber gar nichts innerhalb der Schleife. Switch und xx-Blue werden richtig gesetzt wenn ich den Trigger auslöse.Wo liegt mein Fehler?
Du hast einen Denkfehler wie das „wiederhole solange“ funktioniert. Du musst <= 100 wählen. Du setzt „gainblau“ davor ja auf 0 und dann wiederholt der das so lange wie „gainblue“ <= 100 ist. Bei dir würde er das jetzt so lange machen wie „gainblue“ >= 100 ist. Da du aber vorher „gainblue“ auf 0 setzt wiederholt der nichts.
-
@el_malto sagte in 3 Shelly RGBW Terrassenbeleuchtung synchronisieren:
nen De
Danke Euch.
Ich habe es jetzt ganz anders gelöst hoffe ich. Zumindest funktioniert es meistens.
Irgendwie spinnen die Shelly aber ab und zu und gehen einfach ganz aus und stellen nicht definierbare Farben ein.Ich triggere jetzt auf ein Objekt und wenn dieses true ist, setze ich XXX_Verzögerung auf einen bestimmten Wert (dieser ist dann die Geschwingkeit mit der das ganze abläuft)
Dann wird gainXXX auf 0 gesetzt und um einen bestimmten Wert erhöht (Dies sind dann die Stufen mit denen es heller wird).
So lange die Helligkeit keine 100 erreicht hat, wird der Block neu aufgerufen.
Beim ausschalten praktisch das Gleiche nur anders herum.Aber wie gesagt, manchmal klappt es nicht und die Shelly spinnen. Da bin ich noch nicht ganz zufrieden.
-
@maniac Nutzt du http oder mqtt über den Shelly Adapter? Ich nutze http und habe manchmal ähnliche Probleme. Ggf. Könnte mqtt hier besser funktionieren?!
-
CoAP
-
@maniac sagte in 3 Shelly RGBW Terrassenbeleuchtung synchronisieren:
CoAP
Ich auch. Ggf. ist mqtt hier etwas performanter und wird von den Shelly besser verarbeitet?!?
-
Hallo, sollte dieses Thema noch aktuell sein, so habe ich hier eine Anleitung verfasst