Shelly Plus i4 EventHandler gibt alles doppelt aus

Hinweis zur Nutzung von Skripten (für Nutzer)

Die Verwendung von Skripten erfolgt ausdrücklich auf eigene Gefahr. Weder Shelly noch die jeweiligen Autoren oder Entwickler der Skripte übernehmen irgendeine Form der Haftung für mögliche Schäden, Fehlfunktionen, Datenverluste oder anderweitige Beeinträchtigungen, die durch die Nutzung dieser Skripte entstehen könnten. Bitte stellen Sie vor dem Einsatz sicher, dass Sie den Quellcode verstehen und sich der möglichen Auswirkungen bewusst sind. Die Skripte werden ohne Gewähr bereitgestellt und unterliegen keiner regelmäßigen Wartung oder offiziellen Unterstützung.


Hinweis für Entwickler

Wenn Sie eigene Skripte bereitstellen, achten Sie bitte darauf, eine klare Beschreibung, eventuelle Einschränkungen und Sicherheitsaspekte zu dokumentieren. Beachten Sie zudem, dass Nutzer Ihre Skripte grundsätzlich auf eigenes Risiko verwenden. Eine Haftung für Schäden ist ausgeschlossen, sofern diese nicht vorsätzlich oder grob fahrlässig verursacht wurden oder gesetzlich anderweitig geregelt ist.

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

  • Ich habe einen Shelly i4 DC mt einem 5V-Netzteil versorgt. Diese 5 Volt sind über 1k auf den ersten Eingang gelegt. Von eben diesem Eingang gehe dann auf die S0 Schnittstelle meines Stromzählers (Open Collector), der mir mit jedem Puls den Eingang auf 0V zieht. Der Eingang ist invertiert in der App.

    Jetzt funktioniert das ganz gut. Mit jedem Puls (200ms Länge) bekomme ich in der App eine Anzeige.

    Problem ist, dass folgendes Script:

    Shelly.addEventHandler(function (event) {

    print(JSON.stringify(event))});

    alle Ausgaben doppelt darstellt.

    {"info":{"ts":1683483850.570000,"state":true,"event":"toggle","id":0,"component":"input:0"},"now":1683483850.573536,"id":0,"name":"input","component":"input:0"} 20:24:10.597

    {"info":{"ts":1683483850.570000,"state":true,"event":"toggle","id":0,"component":"input:0"},"now":1683483850.573536,"id":0,"name":"input","component":"input:0"} 20:24:10.597

    {"info":{"ts":1683483850.790000,"state":false,"event":"toggle","id":0,"component":"input:0"},"now":1683483850.787120,"id":0,"name":"input","component":"input:0"} 20:24:10.811

    {"info":{"ts":1683483850.790000,"state":false,"event":"toggle","id":0,"component":"input:0"},"now":1683483850.787120,"id":0,"name":"input","component":"input:0"} 20:24:10.811

    Warum wird denn mit exakt der selben Uhrzeit die Info 2x zur erfügung gestellt?


  • Bin mit dem i4 heute erst angefangen. Daher gibt es bisher nur den Teil vom Script, den ich oben angegeben hab. Also nur den eventHandler mit Print-Befehl.

    Ich möchte pro Event einen Counter zählen, daher ist es unglücklich, wenn alles zwei mal kommt. Weiß dann ja auch nicht, ob das immer reproduzierbar ist, oder ob mal auch nur eine Antwort kommt…

  • Der Eventhandler ist auf „toggle“ getriggert - und nicht auf „on“ bzw. „off“. Daher wird offenbar die steigende UND die fallende Flanke des Eingangssignals ausgewertet. Das ist eine Hypothese, die zu verifizieren oder zu falsifizieren wäre!

    „Habt Geduld. Alle Dinge sind schwierig, bevor sie einfach werden!“ (aus Frankreich)

    „Nothing in life is to be feared, it is only to be understood.“ (Marie Curie, 1867-1934)

    „Comment is free, but facts are sacred“ (C.P. Scott, britischer Verleger)

  • Dieses Thema enthält einen weiteren Beitrag, der nur für registrierte Benutzer sichtbar ist.