NEWS
Binding von 2 Sonoff Touch verursacht "Lichtorgel"
-
Hallo zusammen,
ich habe folgendes Problem :
Ich möchte 2 Sonoff Touch EU ( Doppelschalter ) miteinander binden
Schaltung:
- Schalter : L+N / L-Out an Lampe
2.Schalter : nur L+N
Im Prinzip funktioniert dies auch , wenn man langsam schaltet . Schaltet man aber zwei mal kurz hintereinander den gleichen Taster oder auch den Taster am anderen Schalter , dann spilet das ganze System verrückt und das Licht wird wild wie eine Lichtorgel geschaltet . Dort kommt man nur mit Ausschalten der Sicherung heraus .
Das gleiche Problem habe ich auch bei einer anderen Schaltung :
Schalter 1 : Sonoff NS-Panel ( Nur L+N als Stromversorgung )
Schalter 2 : Sonoff Basic ( dort hängt die Lampe dran und wird über die VIS angesteuert )Ich bin fast am Verzweifeln
Hat jemand eine Idee, woran das liegen kann ?
LG
- Schalter : L+N / L-Out an Lampe
-
@saugimanni sagte: Idee, woran das liegen kann ?
Trigger-Endlosschleife. Abhilfe:
-
Danke für die schnelle Antwort , super , werd ich gleich testen.
Ich bin halt nicht der Experte , aber lernwillig .Danke nochmal und einen guten Rutsch an alle
-
Bin wieder zurück . Es funktioniert nicht . Es ist das Gleiche .
Hier das Blockly :Wenn die Kinder zu schnell drücken, was ja vorkommen kann , geht die "Lichtshow" wieder los...
Ist das Blockly so richtig ?
-
@saugimanni sagte: Ist das Blockly so richtig ?
Das Blockly läuft unter der Javascript-Instanz 0?
-
Ja
-
Könnte das Phänomen etwas mit Zeitdifferenz zwischen Befehlen zu tun haben ?
Was ich meine ist , wenn der erste Befehl noch nicht angekommen ist , aber der zweite Befehl schon wieder ausgelöst wurde ( langsames Wifi ?) , dass dann eine solche Kettenreaktion ausgelöst wird ? -
@saugimanni
Poste bitte den erzeigten Javascript-Code ohne die letzte Zeile in Code tags. -
// Mia on({id: "sonoff.1.Türschalter Mia.POWER1"/*Türschalter Mia POWER1*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Mia Schalter Bett.POWER2"/*Mia Schalter Bett POWER2*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Mia Schalter Bett.POWER2"/*Mia Schalter Bett POWER2*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Türschalter Mia.POWER1"/*Türschalter Mia POWER1*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Türschalter Mia.POWER2"/*Türschalter Mia POWER2*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Mia Schalter Bett.POWER1"/*Mia Schalter Bett POWER1*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Mia Schalter Bett.POWER1"/*Mia Schalter Bett POWER1*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Türschalter Mia.POWER2"/*Türschalter Mia POWER2*/, (obj.state ? obj.state.val : "")); } }); // Alessia on({id: "sonoff.1.Alessia Schalter Tür.POWER1"/*Alessia Schalter Tür POWER1*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Alessia Schalter Bett.POWER2"/*Alessia Schalter Bett POWER2*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Alessia Schalter Bett.POWER2"/*Alessia Schalter Bett POWER2*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Alessia Schalter Tür.POWER1"/*Alessia Schalter Tür POWER1*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Alessia Schalter Tür.POWER2"/*Alessia Schalter Tür POWER2*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Alessia Schalter Bett.POWER1"/*Alessia Schalter Bett POWER1*/, (obj.state ? obj.state.val : "")); } }); on({id: "sonoff.1.Alessia Schalter Bett.POWER1"/*Alessia Schalter Bett POWER1*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') { setState("sonoff.1.Alessia Schalter Tür.POWER2"/*Alessia Schalter Tür POWER2*/, (obj.state ? obj.state.val : "")); } });
-
@saugimanni
Ist in Ordnung. Wundert mich, dass es trotzdem nicht funktioniert, denn der Vergleich mit dem Ursprung verhindert das Schreiben in den Datenpunkt, wenn die Wertänderung durch das Skript erfolgt. -
Ich bin halt prädistiniert zum Aufzeigen bestimmter Fehler
Dies ist auf Arbeit bei mir das Selbe. Ich bin Inbetriebnehmer von großen Maschinen und ich decke manchmal Fehler auf, die vorher noch niemand hatte
Trotzdem Danke für Deine Hilfe