NEWS
Befehle mehrfach registriert - DeConz / HUE dimmer / Blockly
-
Hallo zusammen, bin leider langsam am verzweifeln habe aber die Hoffnung, dass mir jemand hier aushelfen kann. Ich habe seit einigen Wochen einen ConBee II Stick an meinem Raspberry Pi4 (mit IoBroker). An dem Stick habe ich 2 Fernbedienungen von HUE verbunden. Diese liefen bis vor 1 Woche ohne große Probleme, allerdings ist mir irgendwann aufgefallen, dass die Ein- / Ausschaltbefehle (z.B. Rollo / Steckdosen) mehrfach ausgeführt wurden. Daraufhin, habe ich in IoBroker reingeschaut und festgestellt, dass tatsächlich diese in den Logs auch entsprechend registriert werden. Hier fing dann die Fehlersuche:
- Javascript Adapter auf ältere Versionen umgestellt
- Firmware und Software Deconz Stick auf ältere Versionen umgestellt
- Hue Dimmer gelöscht und wieder hinzugefügt
Leider hat das alles nichts gebracht. Habe einen Test-Skript in Blockly angelegt und an dem "buttonpressed" event verknüpft um daraus ein Log zu erzeugen. Dabei stelle ich immer wieder fest, dass im Log dann die jeweilige Info mehrfach auftaucht (3 bis 8 mal). Das hängt immer davon ab welche anderen Parameter in Blockly eingestellt sind. Auf jeden Fall, war es früher nicht so, leider weiß ich nicht was sich verstellt hat. Vielleicht kann mir einer hier weiterhelfen. Vielen Dank im Voraus!
UPDATE: Es scheint so, als ob die Daten von DeConz mehrfach überschrieben werden (war bei der HUE Bridge nicht so). Die Frage ist, ob man das irgendwie beeinflussen kann, da es offensichtlich vor einigen Wochen nicht so war.
Grüße Adrian
-
@linezer0 du solltest den datenpunkt korrekt auswerten.
Wenn du einen trigger auf “buttonpressed” setzt, wert ist größer als vorher, dann bekommst du für jeden tastendruck genau eine Auslösung, bei der der Baustein “wert” (Baustein aus dem trigger Bereich der mit objektID vorgelegt ist” den 4stelligen Code des Events beinhaltet.
A.
-
@asgothian Danke für den Hinweis. Ich habe das jetzt angepasst (hoffe ich habe es richtig umgesetzt / verstanden). Es wird nun aber immer noch 2 mal ausgelöst, weil vermutlich der Wert wieder auf 0 springt und der Script wieder auslöst wird. Es müsste nach der Anpassung eigentlich erstmal eine Pause o.ä. haben, weiß nicht wie ich das aber hinbekomme. Vllt. eine sehr einfache Frage, kenne mich aber leider nicht so gut aus
Danke
-
So....ich glaube ich habe es jetzt hinbekommen. Haben noch ein "Wenn" hinzugefügt, um den Skript bei 0 zu stoppen. Scheint jetzt zu funktionieren.
-
@linezer0 Bitte ersetze die ganzen
Bausteine durch den Baustein ObjectID und stell den auf "wert" um.
: -
@asgothian Wow. Prima! Jetzt klappt es auch ohne meine Notlösung. Vielen Dank!