Schon wieder Probleme mit ZigBee

Hallo liebe Gemeinde
Ich bin ja gerade dabei mit ZigBee und Bluetooth zu experimentieren.
Vlt. habe ich mich in Sachen ZigBee übernommen als ich entschied gleich Multiprotokoll zu nutzen.

Als Hardware nutze ich den Sonoff ZBDongle-E welcher mit der Multi-PAN (RCP) Firmware versehen wurde.

Dann in HA das AddOn Silicon Labs Multiprotokoll installiert.
Dann Z2M installiert.
Ohne näheres hinsehen läuft auch beides.

Jetzt kam das erste Gerät:
Sonoff TRVZB Thermostat. Es konnte prima angelernt werden und scheint soweit auch korrekt zu funktionieren.

Heute kam jetzt ein Wassererkennungsdetektor hinzu (NOUS E4)
Anlernen hat geklappt. Beim Test mit einem feuchten Tuch hat er auch ausgelöst.

Alle Geräte werden im Z2M mit LQI 255 angezeigt.

Ab jetzt läuft es schief…Die Wassererkennung ging wieder aus und hat nicht mehr reagiert. Sensor gelöscht und neu angelernt…geht trotzdem nicht.

Egal wir lernen jetzt erst mal den FensterKontakt an der auch neu da ist.
Hat geklappt wobei irgendwas in ROT kam was aber zu schnell wieder weg war…war glaube ich weil er den Batteriestand noch nicht richtig auslesen konnte.

ABER

Werder vom Fensterkontakt noch vom Wasserdetektor klommen Meldungen bei Z2M an das einzige was wohl nach wie vor funktioniert ist das Thermostat von dem im Protokoll regelmäßig Einträge auftauchen.
Sowas hier:

[2025-01-24 21:15:06] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Test_TRV_ZigBee', payload '{"battery":98,"child_lock":"UNLOCK","closing_steps":567,"frost_protection_temperature":7,"idle_steps":30,"linkquality":252,"local_temperature":20.8,"local_temperature_calibration":0,"occupied_heating_setpoint":19,"open_window":"OFF","running_state":"idle","system_mode":"auto","update":{"installed_version":4609,"latest_version":4609,"state":"idle"},"valve_closing_degree":100,"valve_closing_limit_voltage":2486,"valve_motor_running_voltage":1507,"valve_opening_degree":100,"valve_opening_limit_voltage":2010,"weekly_schedule":{"friday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","monday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","saturday":"00:00/16 07:00/19 10:00/19 10:00/19 10:00/19 23:00/16","sunday":"00:00/16 07:00/19 10:00/19 10:00/19 10:00/19 23:00/16","thursday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","tuesday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","wednesday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16"}}'

von den beiden anderen Geräten kommt nix an. Wenn ich den Fensterkontakt öffne und schließe ist an dem Gerät ein kurzes blinken zu sehen was wohl bedeutet er hat was gesendet - aber in meinem Z2M kommt nix an. Da ist der Kontakt immer geöffnet.

Das Thermostat macht leider nicht immer was es soll…gerade kamm so eine Meldung

error 2025-01-24 21:35:11z2m: Publish 'set' 'system_mode' to 'Test_TRV_ZigBee' failed: 'Error: ZCL command 0x8c65a3fffee1745e/1 hvacThermostat.write({"systemMode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Timeout - 17853 - 1 - 8 - 513 - 4 after 10000ms)'

Kann jemand helfen ?

lg und Danke

hier mal noch das Startprotokoll meines Z2M:

Starting Zigbee2MQTT without watchdog.
[2025-01-24 20:53:13] info: 	z2m: Logging to console, file (filename: log.log)
[2025-01-24 20:53:13] info: 	z2m: Starting Zigbee2MQTT version 2.0.0 (commit #unknown)
[2025-01-24 20:53:13] info: 	z2m: Starting zigbee-herdsman (3.2.1)
[2025-01-24 20:53:13] warning: 	zh:ezsp: 'ezsp' driver is deprecated and will only remain to provide support for older firmware (pre 7.4.x). Migration to 'ember' is recommended. If using Zigbee2MQTT see https://github.com/Koenkk/zigbee2mqtt/discussions/21462
[2025-01-24 20:53:22] error: 	zh:ezsp:ezsp: Command (setValue(EzspValueId.VALUE_CCA_THRESHOLD, 0)) returned unexpected state: {"_cls_":"setValue","_id_":171,"_isRequest_":false,"status":55}
[2025-01-24 20:53:23] info: 	z2m: zigbee-herdsman started (resumed)
[2025-01-24 20:53:23] info: 	z2m: Coordinator firmware version: '{"meta":{"maintrel":"1 ","majorrel":"7","minorrel":"3","product":12,"revision":"7.3.1.0 build 0"},"type":"EZSP v12"}'
[2025-01-24 20:53:23] info: 	z2m: Test_TRV_ZigBee (0x8c65a3fffee1745e): TRVZB - SONOFF Zigbee thermostatic radiator valve (EndDevice)
[2025-01-24 20:53:23] info: 	z2m: WasserAlarm-Test (0xa4c1380413335383): E4 - Nous Water Leakage Sensor) (EndDevice)
[2025-01-24 20:53:23] info: 	z2m: Sonoff_FensterKontakt_Test (0x00124b002fbaed4f): SNZB-04 - SONOFF Contact sensor (EndDevice)
[2025-01-24 20:53:23] info: 	z2m: Currently 3 devices are joined.
[2025-01-24 20:53:23] info: 	z2m: Connecting to MQTT server at mqtt://core-mosquitto:1883
[2025-01-24 20:53:23] info: 	z2m: Connected to MQTT server
[2025-01-24 20:53:23] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload '{"state":"online"}'
[2025-01-24 20:53:23] info: 	z2m: Started frontend on port 8099
[2025-01-24 20:53:23] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Test_TRV_ZigBee', payload '{"battery":98,"child_lock":"UNLOCK","closing_steps":567,"frost_protection_temperature":7,"idle_steps":30,"linkquality":255,"local_temperature":20.5,"local_temperature_calibration":0,"occupied_heating_setpoint":19,"open_window":"OFF","running_state":"idle","system_mode":"auto","update":{"installed_version":4609,"latest_version":4609,"state":"idle"},"valve_closing_degree":100,"valve_closing_limit_voltage":2486,"valve_motor_running_voltage":1507,"valve_opening_degree":100,"valve_opening_limit_voltage":2010,"weekly_schedule":{"friday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","monday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","saturday":"00:00/16 07:00/19 10:00/19 10:00/19 10:00/19 23:00/16","sunday":"00:00/16 07:00/19 10:00/19 10:00/19 10:00/19 23:00/16","thursday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","tuesday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16","wednesday":"00:00/16 07:00/19 10:00/16 10:00/16 17:00/19 23:00/16"}}'
[2025-01-24 20:53:23] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/WasserAlarm-Test', payload '{"battery":100,"battery_low":false,"linkquality":255,"tamper":false,"water_leak":false}'
[2025-01-24 20:53:23] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Sonoff_FensterKontakt_Test', payload '{"battery":null,"battery_low":false,"contact":false,"linkquality":255,"voltage":null}'
[2025-01-24 20:53:23] info: 	z2m: Zigbee2MQTT started!
[2025-01-24 20:53:28] info: 	z2m:mqtt: MQTT publish: topic 'homeassistant/binary_sensor/1221051039810110150109113116116_0xe406bffffe167213/connection_state/config', payload '{"device":{"hw_version":"EZSP v12 7.3.1.0 build 0","identifiers":["zigbee2mqtt_bridge_0xe406bffffe167213"],"manufacturer":"Zigbee2MQTT","model":"Bridge","name":"Zigbee2MQTT Bridge","sw_version":"2.0.0"},"device_class":"connectivity","entity_category":"diagnostic","name":"Connection state","object_id":"zigbee2mqtt_bridge_connection_state","origin":{"name":"Zigbee2MQTT","sw":"2.0.0","url":"https://www.zigbee2mqtt.io"},"payload_off":"offline","payload_on":"online","state_topic":"zigbee2mqtt/bridge/state","unique_id":"bridge_0xe406bffffe167213_connection_state_zigbee2mqtt","value_template":"{{ value_json.state }}"}'

Multiprotokoll wird schon ~1jahr nicht weiter entwickelt:

Sicher das du nicht den Dongle-E meinst? Beim -P ist mir eine solche Firmware nicht bekannt.

Das bezieht sich auch auf den Chip der auf dem Dongle-E ist.
Neuere Firmware drauf und auf ember umstellen und das ganze ohne Multiprotokoll, das wäre meine Empfehlung.

LG
Tobi

Hi Tobi

Ja ist natürlich der E - sorry

Okay flashe ich den Stick am besten mit der neusten NCP-Firmware.
Soll ich Z2M deinstallieren damit es neu aufgesetzt wird? Das Silicon Labs Multiprotokoll kann ich ja dann löschen.

lg

So habe alles gelöscht und neu installiert
Allerdings will der Z2M nicht starten:

22:11:59] INFO: Preparing to start...
[22:11:59] INFO: Socat not enabled
[22:11:59] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-01-24 22:12:00] info: 	z2m: Logging to console, file (filename: log.log)
[2025-01-24 22:12:00] info: 	z2m: Starting Zigbee2MQTT version 2.0.0 (commit #unknown)
[2025-01-24 22:12:00] info: 	z2m: Starting zigbee-herdsman (3.2.1)
[2025-01-24 22:12:01] info: 	zh:adapter:discovery: Matched adapter: {"path":"/dev/ttyUSB0","manufacturer":"Itead","serialNumber":"b84be2edb74bef1180f7c5a079f42d1b","pnpId":"usb-Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_V2_b84be2edb74bef1180f7c5a079f42d1b-if00-port0","vendorId":"10c4","productId":"ea60"} => zstack: path=/dev/ttyUSB0, score=4
[2025-01-24 22:12:01] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/ttyUSB0","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-01-24 22:12:01] info: 	zh:zstack:znp: Serialport opened
[2025-01-24 22:12:01] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-01-24 22:12:02] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-01-24 22:12:06] error: 	z2m: Failed to call 'Frontend' 'stop' (TypeError: Cannot read properties of undefined (reading 'close')
    at /app/lib/extension/frontend.ts:132:52
    at new Promise (<anonymous>)
    at Frontend.stop (/app/lib/extension/frontend.ts:132:15)
    at Controller.callExtensions (/app/lib/controller.ts:368:17)
    at Controller.stop (/app/lib/controller.ts:233:9)
    at stop (/app/index.js:172:5)
    at process.handleQuit (/app/index.js:180:13))

Was will er denn jetzt wieder von mir…

Wie sieht denn die configuration.yaml von z2m aus?

du hast den falschen adapter konfiguriert.

Wenn du jetzt die aktuelle firmware hast musst du da wo du den port: angegeben hast auch adapter: ember haben dein log sieht mehr nach adapter: zstack aus was für den Dongle-P wäre.

Läuft

Das Problem war nicht das ember oder ezsp…geht beides
Der SerialPort läuft nur wenn ich in “voll” angebe…also serial-byid

Wie hoch sollte denn die LQI seine damit es problemlos läuft?
Seit ich ember benutze stehen die LQI Werte nicht mehr auf 255 sonder in den LOGS von Z2M sehe ich wechselnde Werte von 44-110 für das Thermostat.

Die beiden anderen haben 100.

Der Dongle ist im Keller und ich teste gerade eine Etage darüber.
Das kann ich doch verbessern in dem ich einen 2. Dongle auf dieser Etage installiere und als Router konfiguriere - oder? Wobei ich gar noch weiß wie das geht.

War davor wahrscheinlich nur eine falsche anzeige.
Der LQI geht von 0 bis 255 und wenn du da eine Etage wechselst wirst du da kein vollen Empfang gehabt haben.

Kann man machen, wobei es da vielleicht mehr Sinn macht einen Netzwerk basierten Coordinator zu nehmen, damit er Mittiger im Haus platziert werden kann.

Du hast doch jetzt schon mal ein Firmware geflasht, das musst du nur mit einer Router Firmware machen.

Ja habe die Router Firmware gefunden.
Die andere wurde ja automatisch zum Upgrade angezeigt - die musste man nicht erst irgendwo runterladen.

Würde es was bringen dem Dongle im Keller ne fettere Antenne zu spendieren ?

Häng einfach ein paar zigbee Plugs ins Haus, diese sind auch Router, da sie dann am Dauerstrom hängen.

Plugs habe ich derzeit keine daher habe ich meinen 2. Dongle mit der Router FW geflasht und angelernt. Der hat jetzt LQI 216.
Wie sorge ich dafür das die Geräte jetzt über den Router laufen oder machen die das selbst?

In den “Bindungen” des Routers kann ich was festlegen
Quellen-Endpunkt, Gerät und Ziel-Endpunkt

Bei Quellen-Endpunkt gibt es 1, 2 und 242…ich mutmaße mal das 1 der Dongle im Keller ist und 2 der Router.

EDIT:
Okay … das Thermostat ist gerade im LQI auf 216 gestiegen…hat sich also an den Router gehängt. jetzt reagiert das Thermostat ohne Verzögerungen auf den Fensterkontakt

Das ist ein klares jein, Theoretisch nach Standard ja, praktisch weichen viele Geräte vom Standard ab.
Aqara ist z.B. dafür bekannt das sie da bleiben wo sie angelernt wurden und nicht zu Routern wechsel die besser währen.
Deswegen wir auch oft empfohlen die Geräte an dem Ort anzulernen wo sie später benutzt werden.

LG

Das mit dem anlernen da wo sie hin kommen macht Sinn - würde ich auch so tun aber wenn man Router entfern oder dazu bekommt dann lernt man ja nicht neu an - schade dass man das nicht so macht wie es sinnvoll ist…nämlich sich an den Zugangspunkt zu hängen der das Stärkste Signal bereitstellt

Wenn das mit dem Multiprotokoll nicht mehr gemacht wird…wie macht man dann Matter und Thread? Einen 2. Dongle ?

Klugscheißer-Modus: an
Das Thema ist etwas komplexer, als nur das stärkste Signal zu betrachten. Zigbee ist ein Mesh-Netzwerk, und wenn zwei Geräte nebeneinander stehen, wird das stärkste Signal immer vom nächstgelegenen Gerät kommen. Das bedeutet jedoch nicht automatisch, dass es die beste Route zum Koordinator bietet.
Klugscheißer-Modus: aus

Tatsächlich gibt es einige Geräte, die – um Ressourcen wie RAM, ROM oder CPU zu sparen – vom Standard abweichen. Im herstellereigenen Ökosystem funktionieren diese Abweichungen wunderbar, da sie dort entsprechend berücksichtigt werden. Aus meiner Sicht sind das vertretbare Stolpersteine, wenn man das Gesamtbild betrachtet, insbesondere die Vielzahl an Herstellern und Geräten, ist es eigentlich erstaunlich, wie selten es vorkommt, dass ein Gerät nicht mit dem eigenen Zigbee-Netzwerk kompatibel ist. Bei mir persönlich ist das bisher noch nie der Fall gewesen.

Jop.
Ich habe auf meinem Hauptsystem einen Sonoff Dongle-P für Zigbee (Z2M) und meinen alten Conbee2 für Thread.
An meinem Testsystem habe ich den Skyconnect für Thread.