New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
True /False state does not update after a while #13
Comments
Please provide more details. I do not understand your problem. Manually changing state always works but not when you use sayit? But sayit in only voice output?! |
or do you mean that when you control the device manually the status is not updating anymore? Can you provide debug log? |
Hallo Ingo,
der Status true/false im Iobroker Objekt „Switch“ wird nach einiger Zeit nicht mehr aktualisiert, wenn der Schaltvorgang entweder durch die Schelly-App oder direkt am Shelly durch den Physikalischen Schalter ausgelöst wird.
Ich kann aber den Schaltvorgang im shelly durch setzen von treue/false im Objekt auslösen.
Eben ist mir auch noch aufgefallen, dass der „Online Indikator“ sich auch nicht aktualisiert. Es wird immer noch „true“ angezeigt, obwohl ich den Shelly schon gestern vom Strom getrennt hatte.
Evtl. hängt das ja zusammen!?
Eine Fehlermeldung im LOG gibt es leider nicht.
Ach ja, vielen Dank übrigens , dass Du sofort geantwortet hast, das finde ich echt klasse, damit hatte ich nicht gerechnet!
Von: Ingo Fischer
Gesendet: Dienstag, 4. Dezember 2018 11:23
An: schmupu/ioBroker.shelly
Cc: stefan-sylt; Author
Betreff: Re: [schmupu/ioBroker.shelly] True /False state does not update aftera while (#13)
Please provide more details. I do not understand your problem. Manually changing state always works but not when you use sayit? But sayit in only voice output?!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Hm ... dann wäre ich bei einem Debug log weil da siehst Du was an Shelly-Meldungen im Netzwerk ankommt. Wenn keine UDP Pakete mehr ankommen dann kann der Adapter nichts sehen. |
OK, werde ich heute Abend aktivieren.Würde dass den Erklären, warum das nach neustart des Adapters für einige Zeit funktioniert?Ich bin übrigens nicht der Einige, der diesen Fehler hat, bin eigentlich erst auf die Idee gekommen mich über GIT zu melden, weil ich heute auf FB in der Gruppe "IoBroker SmartHome und IoT" einen Beitrag von "Daniel Srbecky" gesehen habe, der genau das gleiche beschreibt. Dort wird Ihm empfohlen auf MQTT umzustellen, was ich schade fände, wenn sich jemand schon die Mühe gemacht hat einen Adapter zu bauen.Ich werde heute mal das Debug Log aktivieren und Mich wieder melden. Bis dahin erst mal vielen Dank für Deine Mühe!Gruß von SyltStefan
Ingo Fischer <notifications@github.com> hat am 4. Dezember 2018 um 13:56 geschrieben:
Hm ... dann wäre ich bei einem Debug log weil da siehst Du was an Shelly-Meldungen im Netzwerk ankommt. Wenn keine UDP Pakete mehr ankommen dann kann der Adapter nichts sehen.
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.
|
Wer auch immer sowas empfiehlt... blödsinn. Es sei denn man will den Adapter nicht nutzen. Da der Adapter aber da ist sollte er auch tun und er tut so lange wie das Gerät Daten ins Netzwerk sendet und iobroker sie empfangen kann. Debug log kann aber gross werden sage ich gleich! Die Shelly senden sehr oft das gleiche Paket raus ... |
das ist mein log. anfangs ging es noch aber ganz am schluss wurde der wert bei iobroker wieder nicht aktualisiert |
Im netzwerk sind alle online. kann auch im iobroker ein und ausschalten. aber wenn ich manuel am schalter drücke wird der wert nicht geändert |
Ach ja noch was. Ich finde euch echt spitze. Ihr seid stets bemüht die fehler zu finden. Ich bin neuling auf diesem gebiet und finde eure arbeit echt bemerkenswert was Ihr alle da so auf die füße stellt. Ohne euch würde das nie was werden mit meinem Smart Home. Und ja ich gebe dir recht ich möchte diesen adapter von shelly sehr gerne benutzen da er sehr übersichtlich und einfach für mich ist. wie gesagt ihr macht echt eine tolle Arbeit. mir ist es auch nur durch zufall aufgefallen da er nach einiger zeit nicht mehr den stand aktualisiert. ich habe einen skript geschrieben das wenn ich alles aus sage über alexa, das skript alles ausschaltet und nach 3 sek. überprüft ob auch alles aus ist und mit über alexa eine antwort gibt. hab dann innerhalb der 3 sek einfach ein licht eingeschaltet und es kam aber keine antwort, was mich dann stutzig machte. nur durch dieses skript ist es mir erst aufgefallen das die daten nicht mehr aktualisiert werden. ansonsten funktioniert der Adapter tadellos. |
also hab festgestellt immer wenn der befehl nicht funktioniert wird im debug log geschrieben:
und danach werden keine logs mehr geschrieben. aber 10 sekunden danach wurde wieder in die logs geschrieben. |
Also zu deinem Log. Auf die Schnelle sehe ich nichts auffälliges. Für dich wie es zu lesen ist (dann kannst Du vllt bissl experimentieren!!
Bedeutet das ein Update vom Shelly Gerät gekommen ist. das in klammern am Ende sind die Datenpunkte und die Werte. Falls eine Meldung mit "CoAP data ignored" steht dann ist es eine Wiederholung einer vorherigen Nachricht die aussortiert wurde. Wenn sich ein Wert ändert hast Du nach dem obigen immer ein
was bedeutet das der Adapter einen State Wert aktualisiert hat. Den müsstest Du dann auch sehen. In dem Fall heisst ein "statechanged" mit eiune "ack:true" das der Adapter den Wert geschrieben hat der vom Device kam. Ein "ack:false" wäre eine Schaltaktion die du per ioBroker ausgelöst hast und die an das Gerät gesendet wird (da kommen dann diese "REST Response" Zeilen dahinter). Dann sollte aber vom Shelly eine "Bestätigung" wieder in Forum eines "ack:true" stateChange kommen. Die Beschreibung das Werte nicht aktualisiert werden bzw "mit starker verzögerung" wäre das erste was zu prüfen ist. Je nachdem wo Ihr das prüft (Im Admin unter "Objekte"? oder wo) könnten auch verzögerungen gar nicht am Adapter sondern am Admin liegen! Also bitte teste mal noch etwas rum und für jede Änderung die du machst solltest Du ein "Status update received" geforgt von einem "stateChange" im log bekommst! |
ja ich prüfe die werte unter Admin in Objekte |
Hallo, hier jetzt das logfile von mir.
Ich hatte große Schwierigkeiten den Adapter wieder zum laufen zu bringen. Zunächst hatte ich es mit Neustart der Instanz versucht, später Neuinstallation der Instanz, zum Schluss habe ich den Adapter neu installiert. Danach hat es eine gefühlte Ewigkeit gedauert, bis der Shelly Objekte erzeugt hat.
Im Moment läuft er, wie er soll und aktualisierte true/false in „Echtzeit“. Mal schauen wie lange das geht.
Von: Daniel110382
Gesendet: Dienstag, 4. Dezember 2018 18:15
An: schmupu/ioBroker.shelly
Cc: stefan-sylt; Author
Betreff: Re: [schmupu/ioBroker.shelly] True /False state does not update aftera while (#13)
ja ich prüfe die werte unter Admin in Objekte
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Jetzt gerade ist das Problem wieder aufgetreten.
2018-12-04 20:17:38.632 - debug: shelly.0 CoAP status package received: {"3332":"SHSW-1#32C2DC#1","3412":38400,"3420":6400,"Uri-Path":"cit/s"} / {"G":[[0,112,0]]}
2018-12-04 20:17:38.633 - debug: shelly.0 Status update received for SHSW-1#32C2DC#1: {"G":[[0,112,0]]}
2018-12-04 20:17:38.643 - debug: shelly.0 stateChange shelly.0.SHSW-1#32C2DC#1.Relay0.Switch {"val":false,"ack":true,"ts":1543951058635,"q":0,"from":"system.adapter.shelly.0","lc":1543951058635}
2018-12-04 20:17:53.676 - debug: shelly.0 CoAP data ignored: {"3332":"SHSW-1#32C2DC#1","3412":38400,"3420":6400,"Uri-Path":"cit/s"} / {"G":[[0,112,0]]}
2018-12-04 20:18:08.713 - debug: shelly.0 CoAP data ignored: {"3332":"SHSW-1#32C2DC#1","3412":38400,"3420":6400,"Uri-Path":"cit/s"} / {"G":[[0,112,0]]}
2018-12-04 20:21:59.210 - debug: shelly.0 system.adapter.admin.0: logging true
2018-12-04 20:22:38.018 - debug: shelly.0 system.adapter.admin.0: logging false
2018-12-04 20:22:43.803 - debug: shelly.0 system.adapter.admin.0: logging true
Stefan Hansen
Westhüs 31
25980 Sylt/Tinnum
04651 - 31795
0171 - 33 33 395
Von: Ingo Fischer
Gesendet: Dienstag, 4. Dezember 2018 17:49
An: schmupu/ioBroker.shelly
Cc: stefan-sylt; Author
Betreff: Re: [schmupu/ioBroker.shelly] True /False state does not update aftera while (#13)
Also zu deinem Log. Auf die Schnelle sehe ich nichts auffälliges. Für dich wie es zu lesen ist (dann kannst Du vllt bissl experimentieren!!
shelly.0 CoAP status package received: {"3332":"SHSW-21#32B122#1","3412":38400,"3420":32000,"Uri-Path":"cit/s"} / {"G":[[0,112,1],[0,122,0],[0,111,0]]}
Bedeutet das ein Update vom Shelly Gerät gekommen ist. das in klammern am Ende sind die Datenpunkte und die Werte. Falls eine Meldung mit "CoAP data ignored" steht dann ist es eine Wiederholung einer vorherigen Nachricht die aussortiert wurde.
Wenn sich ein Wert ändert hast Du nach dem obigen immer ein
debug: shelly.0 Status update received for SHSW-21#32B122#1: {"G":[[0,112,0],[0,122,0],[0,111,0]]}
debug: shelly.0 stateChange shelly.0.SHSW-21#32B122#1.Relay0.Switch {"val":false,"ack":true,"ts":1543938865354,"q":0,"from":"system.adapter.shelly.0","lc":1543938865354}
was bedeutet das der Adapter einen State Wert aktualisiert hat. Den müsstest Du dann auch sehen. In dem Fall heisst ein "statechanged" mit eiune "ack:true" das der Adapter den Wert geschrieben hat der vom Device kam. Ein "ack:false" wäre eine Schaltaktion die du per ioBroker ausgelöst hast und die an das Gerät gesendet wird (da kommen dann diese "REST Response" Zeilen dahinter). Dann sollte aber vom Shelly eine "Bestätigung" wieder in Forum eines "ack:true" stateChange kommen.
Die Beschreibung das Werte nicht aktualisiert werden bzw "mit starker verzögerung" wäre das erste was zu prüfen ist. Je nachdem wo Ihr das prüft (Im Admin unter "Objekte"? oder wo) könnten auch verzögerungen gar nicht am Adapter sondern am Admin liegen!
Also bitte teste mal noch etwas rum und für jede Änderung die du machst solltest Du ein "Status update received" geforgt von einem "stateChange" im log bekommst!
Am besten schau Dir das Logfile auf der Platte unter /opt/iobroker/log/iobroker..log an (mit tail -f an der Shell.
Dann mache was und schaue ob und wann die Dinge kommen. Wenn Du parallel dein Admin offen hast sollte die Aktualisierung im Admin auch parallel zum Log da sein. Ich würde gern sicherstellen das Logfile und Admin passen nicht das der Fehler beim Datenupdate im Admin liegt!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
hi stefan, sind deine shellys direkt mit deinem router verbunden oder über einen repeater? |
Hallo Daniel,
habe mal nachgeschaut, ist direkt mit der Fritzbox verbunden, liegt auch in nur 1m Abstand dazu.
Von: Daniel110382
Gesendet: Dienstag, 4. Dezember 2018 20:47
An: schmupu/ioBroker.shelly
Cc: stefan-sylt; Author
Betreff: Re: [schmupu/ioBroker.shelly] True /False state does not update aftera while (#13)
hi stefan,
sind deine shellys direkt mit deinem router verbunden oder über einen repeater?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
ok. dann kann es schon mal nicht an meinem repeater liegen. vielen dank |
mich wundert es das es sofort nach neustart des shelly adapters wieder funktioniert ein paar mal. |
Ok, dann schauen wir die nächste Ebene und finden heraus ob es dam Adapter Prizess liegt oder am Shelly/Netzwerk. Sicherstellen das nodejs installiert ist.
Wenn man jetzt das skript startet (node ) dann empfängt es auch die ganzen Shelly UDP Pakete. Da ist bissl unlesbarer kram dabei aber das ist ok, man sieht genug das man es vergleichen könnte. Also: Vergleichen der Ausgaben vom Skript mit dem was im Log auftaucht (bitte Logfile auf Platte als Referenz nehmen). Wenn das Skript auch nichts ausgibt wenn der Adapter pause macht ist schonmal klar das es nicht am Adapter liegt sondern bei dem Host die Daten nicht ankommen. Jetzt (für den Fall Ihr habt einen zweiten Host mit nodejs im gleichen Netzwerk) könntet Ihr versuchen was der an paketen empfängt und auch hier vergleichen. |
Hi Apollon, |
Hey, bin momentan leider unterwegs nur sporadisch erreichbar. :-( Am besten auf dem Rechner vom iobroker einfach im deinem User Verzeichnis ein neues file filename.js anlegen mir dem Inhalt von oben. Und dann an der Shell „node filename.js“ und laufen lassen. Zweites ssh Fenster das tail -f auf das iobroker log. Das muss dann zusammenpassen. Und dann ist die frage was passiert wenn nichts mehr kommt obwohl es eine Aktion am Gerät gab. In beiden Fenstern keine neuen Ausgaben oder anders? |
öääähmm ... ja mist geht doch nicht auf dem gleichen host wie der Adapter :-( könntest den Adapter stoppen und dann schauen ob Du das gleiche problem nachstellen kannst Wo auch hier keine Dsaen ankommen |
ok also habe jetzt den adapter beendet und den skript mal gute 10 min. laufen lassen und jetzt kommen keine daten mehr an. stillstand |
Dann sieht es mal so aus als ob die Daten weg bleiben. :-( |
Hast du noch einen zweiten Host wo du nodejs installieren kannst? Geht auch unter Windows oder so |
nein habe ich leider nicht. |
habe jetzt 3 mal den adapter neu gestartet und mir ist dabei aufgefallen das die daten immer für ca 6 min. gesendet werden.
Kann es vielleicht irgendwie sein das da ein speicher voll wird und er diesen nicht löscht weil er voll wird? |
also hab jetzt weiter getestet und immer das selbe. 6-7 min. geht es |
Such mit dem extra Skript anstelle Adapter? |
Auch ;-) |
ja auch bei dem skript
|
@Daniel110382 , sobald Du das Skript oder den Adapter neu startest funktioniert es wieder für ein paar Minuten? Ist der Raspberry über LAN oder WLAN mit der Fritzbox verbunden? |
ja genau sobald ich den adapter neu starte funtioniert er wieder für 6-7 min. der pi ist über lan am router verbunden |
hast Du irgendwie eine Möglichkeit das Skript von @Apollon77 auf einem anderen Rechner (Macbook, PC, ....) zu starten? Würde mich interessieren ob sich die Verbindung dann auch verabschiedet? Wie viele Shellys hast Du und welche? Firmware? Standardeinstellungen in der Shelly App oder irgendetwas verändert? |
Bei mir ist es genau das Gleiche, wie bei Daniel! Nach 6-7 Minuten keine Aktualisierung des Status mehr. Auch bei mir ist der Raspbi direkt mit dem Router verbunden. Das Schalten des Shelly, über App, aber auch über den Adapter, funktioniert aber in "Echtzeit".Grundsätzlich ist die Verbindung der Shellys zum W-Lan also vorhanden. Ich habe die Verbindung zum Internet, in der Shelly-Einstellung abgeschaltet, damit kann das nichts zu tun haben,oder? (konnte das bisher noch nicht testeten, war wenig zuhause).Daniel110382 <notifications@github.com> hat am 5. Dezember 2018 um 21:24 geschrieben: ja genau sobald ich den adapter neu starte funtioniert er wieder für 6-7 min. der pi ist über lan am router verbunden—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.
|
Raspberry Pi 3 b+ |
hab jetzt auch mal alle shellys im netzwerk auf werkseinstellungen zurück gestellt und alle neu angelernt. dann adapter und instanz gelöscht und wieder neu installiert leider ohne erfolg. gleicher fehler weiterhin |
Wenn ich es richtig verstehe, ist der raspi über LAN direkt mit der Frizzbox verbunden . Welche Fritzbox habt ihr im Einsatz? |
Und bitte unbedingt das Testprogramm einmal auf einem anderem Rechner als dem Raspi ausführen. Auch wir der Raspi mit direkter LaN Verbindung zur Fritzbox |
mein Raspi steckt direkt über lan am router |
ich glaube der Router verwirft die Multcast Pakete nach einer Weile. Das Problem gibt es anscheinend häufiger. Kannst du am Router irgendwelche IGMP Einstellungen vornehmen? |
habe nichts mit igmp einstellungen gefunden. bin alle reiter im router durchgegangen |
okay, das sieht nicht so, als ob man da etwas einstellen kann. Hast Du beim Raspberry ipv6 enabled? Bei Google schreiben einige, dass sie das Problem beheben konnten indem sie ipv6 disabled haben. Ihr könnt einmal folgendes versuchen.
wenn Ihr jetzt ipv6 könnt ihr so enablen
|
hilfe was hat er denn jetzt der adapter. alle paar sekunden neustart 2018-12-06 20:54:15.059 - �[34mdebug�[39m: shelly.0 REST Response {"name":null,"ison":false,"has_timer":false,"default_state":"off","btn_type":"edge","btn_reverse":1,"auto_on":0,"auto_off":0,"schedule":false,"schedule_rules":[],"sun":false,"sun_on_times":"0000000000000000000000000000","sun_off_times":"0000000000000000000000000000"} |
Fehler kommt, seit dem Du ipv6 deaktiviert hast? Was passiert wenn Du den Raspi komplett bootest? |
ne habe vorhin mal den adapter neu installiert seit dem habe ich es |
dieser fehler kommt jetzt wenn ich den adapter installiert habe und die instanz hinzufügen will. ERR! Invalid response body while trying to fetch https://registry.npmjs.org/har-validator: Integrity verification failed for sha512-u80+ruKigcnvL6u/AoCX4VoySNRw/yaCULQ0FVtoaNxXo2kozbil7jI1D5wIQoPyUZwTSs7+t0lcDxrlrXBqnw== (/root/.npm/_cacache/content-v2/sha512/bb/cd/3eaee2a281c9ef2fabbf028097e15a3248d470ff268250b434155b6868dc57a36928cdb8a5ee32350f9c084283f2519c134acefeb7495c0f1ae5ad706a9f) Cannot install iobroker.shelly: 1 |
Mist, das war nicht notwendig, da der Fehler nicht am Adapter liegt. Sonst würde das Testprogramm nicht gleich reagieren. |
macht nix hab jetzt das backup von gestern drauf gemacht.. jetzt läuft es wieder. so werde jetzt mal das mit dem ipv6 testen |
Super, ich kann leider erst morgen weiter schauen. Muss morgen leider ausnahmsweise um 4 aufstehen und Lehre mich jetzt schlafen. |
hmm.. hat doch nicht geklappt.. er resetet alle paar sekunden neu immer noch gleicher fehler.. |
Kannst ja den Shelly Adapter stoppen. Ipv6 deaktivieren und das Programm von @appollon77 starten. Mal sehen ob es nach ein paar Minuten weiterhin keine Daten liefert |
ok.. habe endlich meinen fehler gefunden. ich hatte bei instanzen unter shelly einstellungen den benuternamen und das passwort von der shelly cloud eingegeben das war mein fehler. dort darf man nur unter benutzernamen: admin eingeben und beim passwort nichts eingeben. |
Danke für die Info. Dann schließe ich den Issue! Viel Spaß mit dem Adapter Sent with GitHawk |
When the shelly adapter is restarted, the current state (true / false) will always be displayed correctly. But after a while, the old state stays the same all the time. Say it does not update the state anymore. Manuel I can change the state of iobroker and the shellys react too
The text was updated successfully, but these errors were encountered: