NEWS
Aquara Switch und die Geister
-
Hallo zusammen,
also ich nutze den Conbee Stick und diverse Xiaomi devices wie Bewegungsmelder usw was auch ganz gut klappt. Bei den Aquara Switches habe ich irgendwie ein wenig Probleme.
Eigentlich funktionieren sie ja super, ich weiß nicht woher es kommt ABER ich bekomme ab und an ein Signal dass mein Skript getriggert wird und somit identisch ist dem drücken des Buttons.
Gerade läuft also bei mir im Badezimmer die Belüftung und das Licht ist deswegen an.
Das Skript funktioniert und ist meiner Meinung nach richtig.
Ich weiß nicht wie man das ausgrenzen kann, ich habe in dem Skript zwei Bedingungen drinnen, einmal "buttonevent" und einmal
"Badezimmer on = wahr" und trotzdem wird es getriggert.
Kennt das Problem jemand oder hat jemand einen Tipp?
Edit: Nur die Bedingungen sind wichtig beim Button selber das andere darunter ist eigentlich nicht wichtig
-
Was ist den genau das fehlerhafte Verhalten?
Als erstes fällt mir auf das Du kein TIMEOUT STOP verwendest. Das kann im schlechtesten Fall dazu führen das viele Timer parallel laufen und anschl. fehlerhafte Schaltungen verursachen.
-
Es wird halt der Button ausgelöst obwohl dieser nicht gedrückt wurde, also läuft das komplette Skript durch.
Der "Timeout Stop" ist erstmal egal, der Button hätte garnicht ausgelöst werden dürfen
-
Und so sieht es derzeit in deConz aus falls das wichtig ist.
-
Wann passiert denn dieses "falsche auslösen"? Zeitnahe nach einem echten Tastendruck?
Ich habe hier das Phänomen das Events der Xiaomi Taster teilweise 3 innerhalb weniger Sekunden gesendet werden.
Das führt dann dazu das Skripte auch 3x innerhalb von 2 Sekunden ausgeführt werden.
Sendet denn der Taster wirklich ein falsches Event, oder liegt der Fehler eher in der Skriptabarbeitung?
-
Völlig Random anscheinend, ich war seit mehreren Stunden nicht mal im Bad und der Button wird nur gedrückt wenn Geduscht wird :mrgreen:
Also muss da irgendein Status übertragen werden oder ein falsches Signal von einem anderen Gerät.
Ich kann es leider nicht mit Node Red rekonstruieren weil das Signal so unterschiedlich kommt.
Ja es liegt sicher am Button, ich hatte ähnliches auch schon als ich nur Node Red verwendet habe, ich bin jetzt nur komplett zu iobroker gewechselt und dachte hier hätte ich solche probleme nicht.
-
Merkwürdig!
Wenn die Hardware falsche Events sendet ist es natürlich egal welche Skript-Engine man verwendet.
Oder reagiert der Taster auf die erhöhte Luftfeuchtigkeit beim duschen? (eine Art Feuchtigkeitsbrücke im Taster)
Man kann ja nie dumm genug denken…. :mrgreen:
-
Also das Bad ist seit Gestern abend bei ca 58% Luftfeuchtigkeit :mrgreen: und nachdem der Button nicht direkt in der Dusche ist sondern am Badezimmerschrank angeklebt ist glaube ich nicht das es dadurch kommt.
Ich weiß aber noch dass ich mit Node Red allein öfters das Problem hatte (bis ich ihn nichtmehr verwendet habe), dort habe ich die unterschiedlichen Geräte durch "IDs" gefiltert die sie von deconz bekommen haben und irgendwie wurde der Button dadurch getriggert, Ich glaube daher irgendwo da liegt das Problem.
-
Wo genau kommen diese "Timeout Stop" blöcke denn eigentlich genau hin?
(Nein das ist trotzdem nicht das Problem :mrgreen: )
-
Das ist immer abhängig davon was man bewirken möchte.
In Deinem Skript irgendwo vor dem Start eines Timeout. z.B. direkt vor "ausführen timeout".
Es soll damit sichergestellt werden das alle evtl. laufenden Verzögerungen beendet sind bevor eine neue Verzögerung gestartet wird.
-
Ich glaube ich weiß nun wo das Problem ist, aber ich weiß nicht wie es ausgelöst wird.
Nachdem ich heute Besuch der Telekom hatte und das Licht im Flur verrückt spielte (da gibts wohl nachholbedarf am skript :mrgreen: ) habe ich kurzerhand den RPI abgeschaltet.
Als ich ihn wieder angestöpselt habe wurde anscheinend das Skript ausgelöst.
Entweder der Button sendet einen Befehl ala "ich bin hier" oder aber iobroker löst es aus.
Ich vermute aber die Kontaktaufnaheme mit dem RPI (deconz) ist das problem.