NEWS
UNSOLVED Zigbee Geräte schalten verzögert
-
@JLeg ... danke, äh... okay, das gibt mir eine Idee, was du meinst. Muss ich wohl mal flott Flot kennen lernen gehen...
-
@fiddle sagte in Zigbee Geräte schalten verzögert:
Danke, das wusste ich nicht, das "i" habe ich glaube ich noch nie genutzt, "lief ja alles" (zumindest waren diese "Lags" nie so gewaltig). Stimmt, tatsächlich sind auch die Osram LM und die SL wie auch alle Plugs "Router". Mhhh, doof. Ich will die Schalter nicht alle rauswerfen und dort Zigbee-Taster einbauen. Wäre ja hilfreich, wenn man da irgendwie eingreifen könnte... Firmware hacken, "Router" Eigenschaft ersetzen, die Bulbs "dumm" machen... hat vermutlich noch keiner "gewollt" außer mir
Kann man das Netzwerk irgendwie beeinflussen damit es "regelmäßig" lernt? Mit node red was bauen, damit er alle 10 min oder so alle abfragt ohne dabei zu hängen, damit er immer "aktuell" weiß, wer überhaupt erreichbar ist? Oder dem Coordinator eine "Default first hob strategy" vorgeben? Würde ja in meinem (und vermutlich vielen anderen Fällen auch) funktionieren. Es ist bei mir eigentlich immer ein bestimmter Plug, der dann verteilt, und der hat stärkere Links zu seinen Brüdern als der Coordinator. Also "Wirf's zu Plug 1, der macht immer den Rest". Die Devices kann man dann natürlich nicht "belehren", aber zumindest würde der Coord. nicht versuchen am ersten Plug vorbei einen schlechteren Link zu nutzen. ... (macht vermutlich alles keinen Sinn
)...
Vielleicht geht da was, aber:
- du musst eine eigene Firmware für den Zigbee-Koordinator schreiben
- Es ist fraglich ob damit alle Geräte arbeiten können, da sie Zigbee Konformes Verhalten erwarten
- Alternativ - Die Firmware der Birnen hacken. Die geben die Hersteller aber nicht heraus, und der Upload ist meines Wissens abgesichert.
Insgesamt gilt hat:
Das Zigbee Netz ist auf eigenständige Organisation und auf Ausfallsicherheit ausgelegt. Deswegen sind die Optionen da manuell einzugreifen gewusst begrenzt geblieben. Das was Du machst (bestimmte Geräte "nur ab und zu" per Zigbee zu Nutzen ist so nicht vorgesehen.
Es gibt aber eine Lösung die gehen kann:
- Du machst ein 2. Zigbee Netz auf
- Das Netz läuft auf einem anderen Kanal und mit anderer ID / PANID
- In diesem Netz sind nur die Leuchtmittel die du nur bei Abwesenheit nutzen willst.
Auf die Art stören diese Lampen dein restliches Netz nicht und sind aber bei längerer Abwesenheit (hoffentlich) verfügbar.
A.
-
@Asgothian danke für deine Antwort.
Wie ich mir dachte, deine Bullet Points 1 bis 3 sind (vermutlich mindestens wegen "abgesichert") "prohibitiv". Ich hack ja gern, aber das wird wohl am Ende nichts werden.
Die Idee mit dem 2. Netz ist gut! Geht aber nicht mit nur einem Coordinator, oder? Dann müsste ich den 2531 zusätzlich wieder anklemmen und eine 2. Instanz vom Adapter aufsetzen, richtig?
Jetzt beobachte ich erstmal die LQ... waren zwar ein paar mehr als 3,5 Klicks
bis zum Diagramm, und schön ist anders, aber immerhin.
Zwischenstand, Werte werden alle ~5sek aufgezeichnet.
- Der "wichtige" Plug schwankt zwischen 25 und 45;
- Ein zweiter, zum Vergleich, der nur ~2m Luftlinie vom Stick weg ist, zwischen 5 und 25... und dann sprang er gegen 20:00 und ist seither zwischen 25 und 40 unterwegs.
- Die Werte springen ziemlich genau alle 2 Minuten. Seltsam. Das Zeug "hat Puls"...
- In der ganzen Zeit seit heute Nachmittag habe ich beide alle 180sek. per node red umschalten lassen, damit da "was los ist" auf'm Funk. Hab' ich jetzt abgeklemmt, mal sehen was sie über Nacht ohne Aktionen machen.
"Zickenbienenvolk" sag' ich immer...
Schönen Abend erstmal.
-
Nachtrag: gerade nochmal das Log genauer betrachtet.
Mir scheint, dass er tatsächlich immer diese 10sek hängt wenn er ein Gerät nicht "pingen" kann. Habe immer wieder ziemlich genau 10sek Lücken im Log, davor pingt er einen Plug der gerade neben mir auf dem Tisch liegt. Hatte das vorhin wieder: über's dashboard zwei Plugs geschaltet, nichts passiert, mehrfach die Schalter im Dashboard hin und her... und nach ein paar Sekunden machten beide dann "klick-klack-klick-klack". Das im Log abgepasst - genau da "hing" das Log 10 sek, in denen hatte ich die Schalter im dashboard "hin und her geschubst". Kein Zufall würde ich sagen.
Wenn die "Hänger" also von fehlenden Geräten kommen... kann man den "timeout" von 10sek irgendwie auf 1 oder 2 sek runter setzen?
So, nu aber... Feierabend
-
@fiddle Jein
Der Timeout ist tief im Zigbee-Herdsman-converters vorgegeben.
Es ist denkbar in der Routine die die Geräte pingt das Absetzen und Erwarten der Pings voneinander zu trennen. Allerdings kann das unerwünschte Nebenwirkungen haben.
Ich schau mir das morgen einmal an.
A.
-
@Asgothian said in Zigbee Geräte schalten verzögert:
Ich schau mir das morgen einmal an.
Hat deine Recherche was gebracht? Ich hab das Phänomen auch und mein zigbee Netz ist sehr übersichtlich (nur 7 Devices, davon ein CC2530 als Router).
Problem ist, dass ich mit IKEA Tradfri Fernbedienung Lampen (Sonoff und shelly Switches) steuern will. Mal geht es sofort, mal dauert es ewig bis geschaltet wird. Die sind auch an Alexa gekoppelt und da funktionierts ohne irgendwelche Probleme. Ich denke mal dass es mit Erreichbarkeitsproblemen (ping) zusammenhängen kann. -
@amg_666
Meine Recherche hat erbracht das das Ping zwar verzögert abgesetzt wird, dieses aber zeitlich nicht gekoppelt ist an das Absenden anderer Zigbee Befehle. Eine Entkoppelung ist denkbar, aber ich bin mir nicht Sicher wie sinnvoll das ist, da damit ggf. das Netz mit Meldungen zugeworfen wird.A.
-
@Asgothian Danke für deine Mühe.
Wenn's also nicht wegen der Pings hakt, wie kommen wir der Ursache dann auf die Spur? Wenn ich Amg_666 richtig verstehe hat er ja keine "unregelmäßig abwesenden" Devices wie ich mit meinen per Wandschalter hart vom Strom getrennten Leuchtmitteln (sprich bei ihm sind alle eigentlich immer "an" /erreichbar) und dennoch hat er auch Hänger. -
@fiddle Richtig verstanden
-
Gibt es hier vielleicht schon ein paar neue Erkenntnisse?
Ich werde aktuell auch vom verzögerten Schalten geplagt. Es wird aber auch nichts ins Log geschrieben.
Teilweise sind die Verzögerungen bis zu 30 Sekunden. Irgendwie habe ich die Vermutung, dass dies durch "Alexa" ausgelöst werden. Wenn aber durch Alexa nicht geschaltet wird, dann kann ich auch direkt über iobroker nicht schalten.
Nachdem der "Knoten" gelöst ist, werden dann alle bis dahin getätigten Schaltvorgänge abgearbeitet und es ist für einen kurzen Moment Party im Raum. -
@DirkS Nein. Da ich den Effekt nicht habe kann ich den nicht analysieren.
A.
-
@Asgothian
Vielen Dank für die schnelle Antwort.
Seltsam ist es, dass es nicht immer auftritt. Was auch seltsam ist, dass diesmal nichts im Log steht.
Könnte ich denn noch irgendwie zur Lösung des Problem beitragen? -
Je nach dem wie häufig es auftritt könntest Du den Adapter im Debug laufen lassen, incl. zigbee-herdsman-debug Info, um dann wenn es passiert die vorhandenen Nachrichten aneinander setzen zu können.
Allerdings macht das nur in einem bestimmten Szenario Sinn. Um da genauer schauen zu können benötige ich
- ein Log von einer Schaltsituation die sauber gelaufen ist
- ein Log von einer Verzögerten Schaltsituation.
Wichtig ist dabei das die beiden Situationen soweit wie möglich identisch sein müssen, sprich das die gleichen Leuchtmittel angesprochen werden.
A.
-
@Asgothian
Debug Ausgabe hatte ich wohl irgendwann wieder deaktiviert. Nun ist sie wieder aktiv und auch der zigbee-herdman-debug info. Hoffe ich bekomme da eine Diskrepanz raus. -
[Nachtrag]
Debugausgabe ist nun aktiv und füllt die Log Datei extrem.
Es wird kontinuierlich Ausgabe erzeugt. Eventuell ist einfach zu viel Traffic, so dass irgendwann die Queue voll ist. Im Schnitt landen 100-120 Zeilen/Minute im Log. Ping, Status, Werte, etc. obwohl nichts geschaltet wird.
Kann man hier irgendwas einstellen, dass nicht ständig irgendwelche Updates kommen?
Kann es eventuell damit zu tun haben?
Version 1.16.0 overall slow network response
Welche Version arbeitet hier aktuell im "Kern"?
Habe gerade die aktuelle Version vom GitHub genommen. -
@DirkS Dabei geht es um Effekte im Zigbee2mqtt 1.16 soweit ich das erkennen konnte. Diese setzen wir nicht ein. In wie weit das auf Anpassungen innerhalb des Herdsman zurück fällt konnte ich nicht erkennen.
Ich gehe davon aus das Dein Effekt ein anderer ist. In dem Thread ist von einer generellen "Langsamkeit" die Rede.
A.
-
@Asgothian
Okay. Ich habe da mal eine Vermutung. Ich habe gerade etwas im Log beobachtet:
Es tat sich einige Zeit nichts, dann kam folgender Eintrag und danach folgten wieder einiger Einträge:
Error on send command to 0xYYXXZZFFeeGGHHJJ. Error: Error: Command 0xYYXXZZFFeeGGHHJJ/1 genOnOff.off({}, {"timeout":10000,"di...
Hier scheint eine meiner Steckdose nicht erreichbar gewesen zu sein und alles andere wartete darauf. -
@DirkS wenn was nicht sofort antwortet wird 10 sec gewartet ..
-
@DirkS
Es sollten nur Schaltbefehle an die eine Steckdose warten. Alles andere sollte parallel weiter laufen.Das sollte durch interne Queues so abgebildet sein, und ich bin mir 99% sicher das es so bei mir auch funktioniert.
Was hast du bei deinem Adapter in der Config an Einstellungen ?
A.
-
@Asgothian
Was meinst du konkret mit "Einstellungen"? Habe eigentlich nichts verändert außer den Schlüssel.
Die Log Level Einstellung erzeugt nun ganz schon viel Traffic. vorher hatte ich ein paar KB nun sind es 100MB Log/Tag.
Was mir aufgefallen ist, dass scheinbar Teile des Netzwerk wohl kurzzeitig ständig nicht erreichbar sind. Ich hatte mir hierzu einmal den "Available" State von verschiednen Zigbee Geräten an unterschiedlichen Standorten protokollieren lassen.
Es gibt wohl auch ein Firmware Update für meine cc2538 Lösung.