NEWS
"state ping pong" beim schalten (true->false->true) (Z2M)
-
Hallo,
ich habe folgendes Problem beim Schalten von Zigbee Geräten (via zigbee2mqtt-Adapter, Websocket):
Beim Schalten eines "Schalters" (States), egal ob via Admin oder Skript, wechselt der Status immer 3 mal. Also wenn ich z.B. einen Zigbee-Zwischenstecker anschalte über ioBroker und mir den Status ausgeben lasse (in einem Testskript oder im Historie-Adapter), sieht das dann so aus:
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0 17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0(Wenn ich das Gerät via z2m-WebUI schalte, passiert das logischerweise nicht. Da ändert sich der Wert in ioBroker genau 1 mal)
Ich nutze ioBroker schon sehr lange uns ich bin mir relativ sicher, dass das noch nicht schon immer so ist. Ich hatte vor 2 Tagen einige Adapter aktualisiert, unter anderem
javascript: Update von Version 9.0.18 auf 10.1.3
admin: Update von 7.8.23 auf Version 8.0.11Danach habe ich das zum ersten mal beobachtet. Aus lauter Verzweiflung habe ich dann ein Proxmox-Backup von vor 3 Tagen eingespielt. Hat allerdings nichts gebracht, gleiches Verhalten.
Was mich in erster Linie interessieren würde, ist das bei euch auch so? Sollte ich das wirklich bisher nicht bemerkt haben? Das würde mich extrem wundern. Allerdings kann ich mir auch nicht erklären, woher das plötzlich kommen könnte.
Vielen Dank
Jens
-
Hallo,
ich habe folgendes Problem beim Schalten von Zigbee Geräten (via zigbee2mqtt-Adapter, Websocket):
Beim Schalten eines "Schalters" (States), egal ob via Admin oder Skript, wechselt der Status immer 3 mal. Also wenn ich z.B. einen Zigbee-Zwischenstecker anschalte über ioBroker und mir den Status ausgeben lasse (in einem Testskript oder im Historie-Adapter), sieht das dann so aus:
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0 17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0(Wenn ich das Gerät via z2m-WebUI schalte, passiert das logischerweise nicht. Da ändert sich der Wert in ioBroker genau 1 mal)
Ich nutze ioBroker schon sehr lange uns ich bin mir relativ sicher, dass das noch nicht schon immer so ist. Ich hatte vor 2 Tagen einige Adapter aktualisiert, unter anderem
javascript: Update von Version 9.0.18 auf 10.1.3
admin: Update von 7.8.23 auf Version 8.0.11Danach habe ich das zum ersten mal beobachtet. Aus lauter Verzweiflung habe ich dann ein Proxmox-Backup von vor 3 Tagen eingespielt. Hat allerdings nichts gebracht, gleiches Verhalten.
Was mich in erster Linie interessieren würde, ist das bei euch auch so? Sollte ich das wirklich bisher nicht bemerkt haben? Das würde mich extrem wundern. Allerdings kann ich mir auch nicht erklären, woher das plötzlich kommen könnte.
Vielen Dank
Jens
@nevermind
Zweimal wäre okay. Einmal mit ack false und einmal mit ack trueDer mittlere ist seltsam.
Wenn der Adapter direkt vom Gerät selbst die Info bekommt, dann schreibt er natürlich nur einmal mit ack true -
Hallo,
ich habe folgendes Problem beim Schalten von Zigbee Geräten (via zigbee2mqtt-Adapter, Websocket):
Beim Schalten eines "Schalters" (States), egal ob via Admin oder Skript, wechselt der Status immer 3 mal. Also wenn ich z.B. einen Zigbee-Zwischenstecker anschalte über ioBroker und mir den Status ausgeben lasse (in einem Testskript oder im Historie-Adapter), sieht das dann so aus:
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0 17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0(Wenn ich das Gerät via z2m-WebUI schalte, passiert das logischerweise nicht. Da ändert sich der Wert in ioBroker genau 1 mal)
Ich nutze ioBroker schon sehr lange uns ich bin mir relativ sicher, dass das noch nicht schon immer so ist. Ich hatte vor 2 Tagen einige Adapter aktualisiert, unter anderem
javascript: Update von Version 9.0.18 auf 10.1.3
admin: Update von 7.8.23 auf Version 8.0.11Danach habe ich das zum ersten mal beobachtet. Aus lauter Verzweiflung habe ich dann ein Proxmox-Backup von vor 3 Tagen eingespielt. Hat allerdings nichts gebracht, gleiches Verhalten.
Was mich in erster Linie interessieren würde, ist das bei euch auch so? Sollte ich das wirklich bisher nicht bemerkt haben? Das würde mich extrem wundern. Allerdings kann ich mir auch nicht erklären, woher das plötzlich kommen könnte.
Vielen Dank
Jens
@nevermind ja, ist bei mir auch so. Ich habe mir erst mal ein debouncing Script geschrieben, weil ich das Zucken im UI (Lavelace) gesehen habe. Magst du ein Issue auf github aufmachen?
-
17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0das ist ok
das vom admin nicht... was da los ??
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0das sollte nicht passieren..würde ich mal behaupten
-
17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0das ist ok
das vom admin nicht... was da los ??
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0das sollte nicht passieren..würde ich mal behaupten
17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0Warum wird der alte State nochmal acknowledged? Das führt bei mir im UI zu einem Zucken der Schalter.
EDIT: ich glaube das Bsp von oben zeigt, dass über admin geschalten wurde. Könnte auch vom UI kommen. Das Problem ist, dass der State danch hin und her springt.
-
Beim Schalten eines "Schalters" (States), egal ob via Admin oder Skript
Die erste Zeile ist admin. Da wurde der State geändert. Zeile 2 und 3 ist das ping pong von Zigbee.
-
17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0das ist ok
das vom admin nicht... was da los ??
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0das sollte nicht passieren..würde ich mal behaupten
17:25:40.439 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: false | Alt: true | ack: true | Quelle: system.adapter.zigbee2mqtt.0 17:25:40.524 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: true | Quelle: system.adapter.zigbee2mqtt.0das ist ok
das vom admin nicht... was da los ??
17:25:40.203 info [ÄNDERUNG] zigbee2mqtt.0.0x00158d0003628ed2.state | Neu: true | Alt: false | ack: false | Quelle: system.adapter.admin.0das sollte nicht passieren..würde ich mal behaupten
Nein, das vom Admin ist ok.
Interessant ist, das vom Z2M Adapter der State 2 mal mit
ack falsegeschrieben wird, einmal mit dem Wert der Laut Admin geschaltet werden sollte (Admin ->neu true, ack:false, Z2N ->neu: true, ack: true)Aus meiner Sicht ist der mittlere Auffällig.
Mach mal bitte folgendes:
- stell sicher das du nicht nur
Änderungensondern auchAktualisierungenins Log geschrieben bekommst. - schalte den Schalter via Z2M auf einen Wert
- Warte 120 s (das ist wichtig)
- schalte den Schalter via Admin auf den anderen Wert
- Warte wieder 160 sekunden
Poste danach bitte das Log.
Meine Vermutung ist das Z2M die vom Gerät kommende Bestätigung des Zustandes verzögert liefert (mögliche Gründe dafür gibt es viele) - dementsprechend kann die mittlere Zeile aus anderen Gründen kommen.
Zusätzlich wird benötigt:
- Die Z2M Version
- Das Log von Z2M aus dem Zeitraum
- Die Version des ioBroker.zigbee2mqtt Adapters
A.
- stell sicher das du nicht nur
-
@asgothian die mittlere Zeile kommt definitiv vom Vorgang. Wenn ich ein Licht auf "ein" schalte, sieht das in 2tm so aus:
[22/09/2026, 09:50:37] z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Dining-Light', payload '{"brightness":76,"color":{"hue":34,"saturation":75,"x":0.4369,"y":0.4041},"color_mode":"color_temp","color_temp":333,"last_seen":"2026-09-22T09:50:37+02:00","linkquality":98,"state":"OFF"}' [22/09/2026, 09:50:37] z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0-2', payload '{"brightness":76,"color":{"hue":34,"saturation":75,"x":0.4369,"y":0.4041},"color_mode":"color_temp","color_temp":333,"state":"ON"}' [22/09/2026, 09:50:37] z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Dining-Light', payload '{"brightness":76,"color":{"hue":34,"saturation":75,"x":0.4369,"y":0.4041},"color_mode":"color_temp","color_temp":333,"last_seen":"2026-09-22T09:50:37+02:00","linkquality":98,"state":"ON"}'in iob
22/09/2026, 09:50:37.768 [info ]: javascript.0 (784) script.js.common.lights.Debug: RAW val=true ack=false from=system.adapter.lovelace.0 22/09/2026, 09:50:37.887 [info ]: javascript.0 (784) script.js.common.lights.Debug: RAW val=false ack=true from=system.adapter.zigbee2mqtt.0 22/09/2026, 09:50:37.982 [info ]: javascript.0 (784) script.js.common.lights.Debug: RAW val=true ack=true from=system.adapter.zigbee2mqtt.0Das ist zigbee2mqtt Adapter 3.2.2 und z2m 2.14.1
Da kommt also erst OFF obwohl das der aktuelle Zustand ist.
-
-
Kommt das Log von dem Test um den ich oben gebeten habe ?
-
Ist sichergestellt, das
-- niemand die Lampe in der Zeit davor geschaltet hat ?
-- es keine durchlaufendes Skript gibt, welches daten von Z2M per polling regelmässig abholt ?
-- die betroffene Lame nicht bestandteil einer Gruppe ist ? -
wie ist das Log von Z2M sortiert ? Leider fehlen die ms, so das ich nicht sehen kann welche der Meldungen neu oder alt sind
-
Was macht der Publish auf
'zigbee2mqtt/0-2'da drin ?
du darfst nicht vergessen - Du kennst den Kontext, und was du machst, ich sehe nur die Texte die du postest.
A.
Nachtrag: Wenn die Antwort auf die meisten / alle Fragen die ich gestellt habe ja ist, dann ist das Problem bei Zigbee2mqtt.io zu suchen - dein Log legt nahe das Z2M den falschen Status sendet, und der ioBroker den nur Anzeigt.
-
-
Kommt das Log von dem Test um den ich oben gebeten habe ?
Ich habe mich bemüht das so zu machen.
Ist sichergestellt, das ...
Alle meine Lichter sind in Gruppen, weil ich die auch mit FB bediene.
Was macht der Publish auf 'zigbee2mqtt/0-2' da drin ?
Weiß ich nicht. Da bin ich nicht tief genug drin.
Ich habe das gemerkt als ich ganz auf Lovelace umgestellt habe. Da tippe ich auf das UI, der Schalter geht an. Kurz darauf springt er wieder zurück und wieder auf an. Das war in meinem alten UI (Jarvis) nicht so. Darum kann ich auch nicht sagen, ob das neu ist oder schon immer so war.
-
Hier das z2m log aus dem logfile. Da steht etwas mehr als im Logfenster des UI.
-
Scheint wirklich ganz auf Seite z2m zu liegen. Auch wenn ich direkt in z2m schalte, prellt es. Vielleicht gibt es da drüben eine Einstelliung, die das verhindert.
-
Ich (mit KI) habe es eingegrenzt:
Wenn ein Device keinen ordentlichen defaultRespose mit Attributen schickt, sonder nur "ja, habe ich gemacht", und last_seen aktiv ist, sendet z2m eine Nachricht mit dem letzten Zustand.
Ich habe bei mir jetzt last_seen (settings - advanced) ausgeschaltet. -
last_seen sollte eigentlich default auf disabled stehen. HA sollte auch default auf false sein. Bei wir war beides enabled. Ich habe das eigentlich nie aktiviert. HA ganz bestimmt nicht. Hat sich wahrscheinlich mal ein Update verhaspelt.
-
@asgothian @arteck ich hatte last_seen, weil ich es aus dem getting started von hier übernommen hatte: https://github.com/arteck/ioBroker.zigbee2mqtt/blob/main/docs/DE/DE_get-started.md
Gibt es einen Grund, warum das hier aktiv ist, obwohl in z2m default disabled?
-
Hallo Zusammen
oh mann... ja, bei mir lag es scheinbar auch am "last seen". Hatte ich aktiviert um Probleme in meinem Zigbee-Netzwerk zu finden. Jetzt habe ich es wieder deaktiviert und das Pingpong, also die Meldung mit dem alten, vorherigen Status ist weg.
Vielen Dank :)
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden