Skip to content
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

Busch-Jaeger 6735/6736/6737 #1842

Open
Kartracer390 opened this issue Aug 14, 2023 · 25 comments
Open

Busch-Jaeger 6735/6736/6737 #1842

Kartracer390 opened this issue Aug 14, 2023 · 25 comments
Labels
bug Something isn't working Zigbee-Herdsman-Converters issue This issue needs to be fixed in the zigbee-herdsman-converters

Comments

@Kartracer390
Copy link

Hallo zusammen,
nach dem Update auf 1.8.23 funktionieren leider meine Busch Jäger Taster nicht mehr, wie zuvor unter 1.8.10

daten
Die Taster hatte ich zuvor unter dem Reiter Ausschließen hinzugefügt und konnte somit sämtliche Tasten mit kurzen und langen Tastendruck unterscheiden und auswerten.
alt
Nach dem Update erhalte ich nur noch die Info, ob die jeweilige Tastenreihe aktiviert oder deaktiviert ist.
neu

Habe über Proxmox wieder eine Sicherung zurück gespielt und es funktioniert wieder. Hat sich hier am Adapter was verändert bzw. bekomme ich mit der neuen Version die alten Rückmeldungen zum laufen?

https://www.zigbee2mqtt.io/devices/6735_6736_6737.html

für Tipps wäre ich sehr dankbar

@arteck
Copy link
Collaborator

arteck commented Aug 15, 2023

hast du dir den Link angeschaut zu dem Gerät
unter https://www.zigbee2mqtt.io/devices/6735_6736_6737.html#known-issues

das ist doch dein Problem

hier die Diskusion dazu
Koenkk/zigbee2mqtt#7009

wenn du keine neuen unbekannten Geräte hast ..bleibt bei der .22 Version

@arteck arteck added bug Something isn't working Zigbee-Herdsman-Converters issue This issue needs to be fixed in the zigbee-herdsman-converters labels Aug 15, 2023
@muhlatte
Copy link

muhlatte commented Sep 11, 2023

Servus Kartracer,

ich habe generell dasselbe Problem. Habe anschließend die busch-jaeger.js umprogrammiert und überschreibe nach jedem Update diese unter /opt/iobroker/node_modules/zigbee-herdsman-converters/devices mit meiner lokalen Datei. Leider kann ich es nicht über external converters (in den Einstellungen) umsetzen, da die Statusaktualisierung (bspw. Zeile 169-181 in meinem Skript) auf irgendeine übergeordnete globale Funktion zugreift, die ich bisher nicht gefunden habe bzw. ersetzen konnte. Damit komme ich ganz gut zu Rande, man darf halt nicht das Ersetzen nach dem Update vergessen ;-). Wenn du den Weg auch gehen möchtest, anbei mein Skript.

Zur Info:
Nach dem Ersetzen im oben genannten Ordner musst du die Instanzen neu starten!

@arteck
Wenn es eine saubere Integration ins zigbee2mqtt geben würde, wäre es genial. Asgothian meinte damals zu mir, dass es schwierig werden würde die Änderung bei denen rein zu bringen, daher haben wir es dann gelassen.

Viele Grüße
Daniel
busch-jaeger.zip

@klada
Copy link

klada commented Nov 22, 2023

Ich habe an den BJ-Geräten in zigbee-herdsman-converters zuletzt mitgebaut und bin natürlich auch interessiert daran, dass Fehler minimal invasiv behoben werden. Ihr habt hier eine ziemliche Schlangengrube ausgehoben 😄 , denn es gibt eigentlich mehrere Probleme:

  • ioBroker.zigbee setzt offenbar nicht die gerätespezifische Option legacy auf false. Laut Doku ist es empfohlen, diese Option auf false zu setzen. Standardmäßig ist die Option leider auf true. Ich bin der festen Überzeugung, dass ioBroker bereits jetzt korrekt funktionieren würde, wenn legacy auf false gesetzt wird. Allerdings bin ich überhaupt nicht mit iobroker vertraut und kann daher keinen Tipp geben, wie man solche Optionen setzt. In zigbee2mqtt setzt man idealerweise global für alle Geräte folgende Option in der configuration.yaml:

    device_options:
      legacy: false

    Alternativ kann man das natürlich gerätespezifisch machen.

    @arteck Kannst du hier einen Tipp geben, wie ioBroker-Nutzer global das Attribut legacy=False für alle Geräte setzen können? Das wäre m.M.n. der schnellste Fix für das Problem, ganz ohne Anpassung in den converters.

  • Der Legacy-Mode der BJ-Geräte ist in der Tat derzeit partiell kaputt. Die long-press/release Actions kommen nicht an. Das wird auch der Grund sein, warum ioBroker überhaupt dieses Problem hat. Ich schaue mir das die Tage mal an und versuche das in ZHC zu fixen. Theoretisch wäre es aber gut, wenn ioBroker nicht die Legacy-Payload nutzen würde, sondern die Standardisierte. (Update: Habe soeben getestet, der Legacy-Mode geht).

  • Eigentlich müssten wir in zigbee2mqtt mal den Schritt wagen, den Legacy-Mode standardmäßig auszuschalten. Das wäre aber ein breaking change und Koen ist da zu recht immer sehr vorsichtig. Das ist auch der Grund, warum der vorgeschlagene PR erstmal reverted wurde. Erstmal keine (wissentlichen) Breaking Changes ohne Absprache. Das wird die nächste Baustelle, wenn das eigentliche Problem hier gelöst ist. 😃

@arteck
Copy link
Collaborator

arteck commented Nov 25, 2023

ich guck gerade mal durch...also

die methode findByZigbeeModel die laut Beschreibung "legacy" ist nutzen wir nicht
wir gehen über findByDevice

aber

der "legacy" mode ist durch den ganzen code zerstreut incl. man kann pro Device den auch noch Einstellen...

@klada
Copy link

klada commented Nov 25, 2023

der "legacy" mode ist durch den ganzen code zerstreut incl. man kann pro Device den auch noch Einstellen...

Genau, das ist hier das Problem. Der Legacy-Mode ist standardmäßig an (ja, das ist suboptimal), das hat aber AFAIK nichts mit findByDevice und dergleichen zu tun. Irgendwo muss es ja aber im iobroker die Möglichkeit geben, die gerätespezifischen Optionen zu setzen, die die Geräte exposen. Für die BJ-Geräte gibts ja z.B. insgesamt 3 Optionen (transition, state_action und legacy), die das Verhalten der Converter ändern und die bei Z2M im Config-File gesetzt werden können. Andere Geräte haben wiederum andere Optionen.

Ich finde die Stelle nur gerade nicht, an die Nutzer diese Optionen setzen können, weil ich mich mit iobroker nicht auskenne. Gibt's da nicht einfach ein zentrales Config-File?

@klada
Copy link

klada commented Dec 19, 2023

@arteck Ich würde wirklich gern helfen, die offiziellen Converter für Z2M zu verbessern. Aber ich brauche hier noch Feedback von jemanden, der ioBroker nutzt. Bitte testet dazu die BJ-Geräte mal im ioBroker im Legacy-Mode. Ohne eine Info dazu komme ich leider auch nicht voran.

@arteck
Copy link
Collaborator

arteck commented Dec 22, 2023

Gibt's da nicht einfach ein zentrales Config-File?

ne so einfach ist es nicht.. da wir die exposes anziehen und in unsere objekte wandeln.. ich kann an den converter wenn es in dessen options steht was mitgeben.. das ist dann zentral

da ich das Gerät auch nicht habe .. bin ich genau wie du auf jemanden angewiesen

@muhlatte
Copy link

Servus Dan,

generell kann ich anbieten hier zu unterstützen, da ich iobroker, zigbee adapter und die Busch-Jäger Geräte benutze (bis auf den Smartplug). War nur die letzten Wochen auf Dienstreise und anderweitig sehr eingespannt.
Aktuell habe ich halt nur die Wurstellösung mit der ich (meistens) ganz gut klar komme. Ein Adapterupdate ist dabei immer der Horror. Vielleicht können wir uns ja mal über die Feiertage auf Discord treffen und vielleicht hier weiter vorankommen.

VG und falls wir uns nicht mehr hören, frohe Weihnachten!
Daniel

@klada
Copy link

klada commented Dec 23, 2023

Hi,

über die Feiertage wird es bei mir eng. Ich habe aber mittlerweile eine Idee:

  1. Ich werde in den Convertern einen Switch einbauen, der sowohl im Legacy-Mode als auch im "Nicht-Legacy-Mode" die richtige exposes-Definition zurückgibt. Das schadet auch für zigbee2mqtt nicht und macht dort eigentlich auch nichts kaputt (berühmte letzte Worte 😉)
  2. Wenn @arteck zentral für die Geräte was vorgeben kann, schlage ich vor, dass der Legacy-Mode dann für alle BJ-Geräte in iobroker deaktiviert wird. Der ist halt leider standardmäßig an. Das ergibt aber erst Sinn, wenn die Änderung in dem Converter drin ist. Da gebe ich nochmal Bescheid, wenn es soweit ist.

Frohes Fest euch Allen!

@arteck
Copy link
Collaborator

arteck commented Jan 2, 2024

2. Wenn @arteck zentral für die Geräte was vorgeben kann, schlage ich vor, dass der Legacy-Mode dann für alle BJ-Geräte in iobroker deaktiviert wird. Der ist halt leider standardmäßig an. Das ergibt aber erst Sinn, wenn die Änderung in dem Converter drin ist. Da gebe ich nochmal Bescheid, wenn es soweit ist.

das können wir nicht abbilden.. wir nutzen eure exposes.. und da kann ich nicht pro Gerät sagen nutze das oder jenes.

@muhlatte
Copy link

muhlatte commented Feb 15, 2024

@klada
Servus Dan,

gutes Neues noch, sowas verjährt hoffentlich nicht ;-)
ich wollte mal nachfragen ob du noch wegen der Differenzierung der Legacy Modes / Switch Lösung irgendwelche Neuigkeiten hast? Da ich mit meinem lokalen Converter mittlerweile nicht mal mehr zur zigbee adapter version kompatibel bin (brightness_relay funktioniert irgendwie nicht mehr) bin ich wieder umso mehr an einer sauberen Implementierung interessiert.

@arteck
in allen Versionen über 1.8.24 kommt folgende Fehlermeldung bei Änderung brightness_relay : Send command to 0xd85def11a10029d2 failed with no error code (undefined)
state_relay funktioniert tadellos.

hier meine Log

2024-02-05 22:05:14.873  - �[32minfo�[39m: zigbee.1 (29415) starting. Version 1.10.2 in /opt/iobroker/node_modules/iobroker.zigbee, node: v18.16.1, js-controller: 5.0.19
2024-02-05 22:05:15.039  - �[32minfo�[39m: zigbee.1 (29415) delete old Backup files. keep only last 10
2024-02-05 22:05:15.042  - �[32minfo�[39m: zigbee.1 (29415) Starting Zigbee  npm ...
2024-02-05 22:05:15.172  - �[32minfo�[39m: influxdb.0 (9425) Store 6 buffered influxDB history points
2024-02-05 22:05:15.440  - �[32minfo�[39m: zigbee.1 (29415) Installed Version: [email protected]
2024-02-05 22:05:16.068  - �[32minfo�[39m: influxdb.0 (9425) Store 6 buffered influxDB history points
2024-02-05 22:05:17.351  - �[32minfo�[39m: influxdb.0 (9425) Store 6 buffered influxDB history points
2024-02-05 22:05:18.551  - �[32minfo�[39m: influxdb.0 (9425) Store 6 buffered influxDB history points
2024-02-05 22:05:19.475  - �[32minfo�[39m: zigbee.1 (29415) Coordinator firmware version: {"type":"zStack3x0","meta":{"transportrev":2,"product":1,"majorrel":2,"minorrel":7,"maintrel":1,"revision":20230507}}
2024-02-05 22:05:19.523  - �[32minfo�[39m: zigbee.1 (29415) Unable to disable LED, unsupported function.
2024-02-05 22:05:19.548  - �[32minfo�[39m: zigbee.1 (29415)   --> transmitPower : normal
2024-02-05 22:05:19.864  - �[32minfo�[39m: influxdb.0 (9425) Store 6 buffered influxDB history points
2024-02-05 22:05:19.919  - �[32minfo�[39m: zigbee.1 (29415) Currently 40 devices are joined:
2024-02-05 22:05:20.075  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c13827e446b202 (addr 6247): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.084  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c1383af5627b2e (addr 2910): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.090  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138cc04c57418 (addr 2613): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.095  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138fd1937ec31 (addr 29100): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.100  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10029d8 (addr 27573): 6736 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 2rows (Router)
2024-02-05 22:05:20.102  - �[32minfo�[39m: zigbee.1 (29415) 0x54ef44100025d21f (addr 11675): MCCGQ14LM - Xiaomi Aqara E1 door & window contact sensor (EndDevice)
2024-02-05 22:05:20.107  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10029d2 (addr 48259): 6736 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 2rows (Router)
2024-02-05 22:05:20.110  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10029d1 (addr 48769): 6736 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 2rows (Router)
2024-02-05 22:05:20.113  - �[32minfo�[39m: zigbee.1 (29415) 0x00124b0024c2eb7a (addr 20774): ZBMINI - SONOFF Zigbee two way smart switch (Router)
2024-02-05 22:05:20.116  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10029d7 (addr 56607): 6736 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 2rows (Router)
2024-02-05 22:05:20.120  - �[32minfo�[39m: zigbee.1 (29415) 0x54ef4410002a60ee (addr 14767): VOCKQJK11LM - Xiaomi Aqara TVOC air quality monitor (EndDevice)
2024-02-05 22:05:20.123  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a1002731 (addr 37521): 6736/01 - Busch-Jaeger Zigbee Light Link wall-mounted transmitter 2rows (EndDevice)
2024-02-05 22:05:20.127  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10027fd (addr 44867): 6735 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 1row (Router)
2024-02-05 22:05:20.130  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138cdbee4361c (addr 32798): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.134  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a100415e (addr 5670): 6737 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 4rows (Router)
2024-02-05 22:05:20.137  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138a107128568 (addr 2735): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.144  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c13803ed401a1f (addr 16401): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.147  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c13874f47c8fe2 (addr 30312): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.150  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a100273f (addr 11737): 6736/01 - Busch-Jaeger Zigbee Light Link wall-mounted transmitter 2rows (EndDevice)
2024-02-05 22:05:20.152  - �[32minfo�[39m: zigbee.1 (29415) 0x54ef44100025acb0 (addr 4792): MCCGQ14LM - Xiaomi Aqara E1 door & window contact sensor (EndDevice)
2024-02-05 22:05:20.155  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a1002903 (addr 42960): 6735/01 - Busch-Jaeger Zigbee Light Link wall-mounted transmitter 1row (EndDevice)
2024-02-05 22:05:20.157  - �[32minfo�[39m: zigbee.1 (29415) 0x00158d0007e61ba7 (addr 64492): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
2024-02-05 22:05:20.161  - �[32minfo�[39m: zigbee.1 (29415) 0x00158d0001e45069 (addr 9290): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
2024-02-05 22:05:20.163  - �[32minfo�[39m: zigbee.1 (29415) 0x00158d0007e76c9a (addr 9818): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
2024-02-05 22:05:20.165  - �[32minfo�[39m: zigbee.1 (29415) -> Configuring 0xd85def11a1001f76 RB01
2024-02-05 22:05:20.170  - �[32minfo�[39m: zigbee.1 (29415) 0x00158d0007e78ae1 (addr 2030): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
2024-02-05 22:05:20.172  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138b118255b77 (addr 49709): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.175  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138c06aa0a31a (addr 17751): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.176  - �[32minfo�[39m: zigbee.1 (29415) 0x54ef44100025d9db (addr 14169): MCCGQ14LM - Xiaomi Aqara E1 door & window contact sensor (EndDevice)
2024-02-05 22:05:20.178  - �[32minfo�[39m: zigbee.1 (29415) 0x00158d0007e76d2d (addr 22714): MCCGQ11LM - Xiaomi Aqara door & window contact sensor (EndDevice)
2024-02-05 22:05:20.181  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c1381e94c1d7c6 (addr 55683): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.183  - �[32minfo�[39m: zigbee.1 (29415) 0x001788010224097d (addr 9503): 8718696449691 - Philips Hue White A60 Single bulb E27/B22 (Router)
2024-02-05 22:05:20.185  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138bf90547d3b (addr 15028): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.187  - �[32minfo�[39m: zigbee.1 (29415) 0x00124b00281b0213 (addr 24103): DIYRuZ_Flower - DIYRuZ [Flower sensor](http://modkam.ru/?p=1700) (EndDevice)
2024-02-05 22:05:20.189  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a100274f (addr 27627): 6736/01 - Busch-Jaeger Zigbee Light Link wall-mounted transmitter 2rows (EndDevice)
2024-02-05 22:05:20.190  - �[32minfo�[39m: zigbee.1 (29415) 0x00124b002871df36 (addr 28815): DIYRuZ_Flower - DIYRuZ [Flower sensor](http://modkam.ru/?p=1700) (EndDevice)
2024-02-05 22:05:20.192  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a1001f76 (addr 20884): 6735/01 - Busch-Jaeger Zigbee Light Link wall-mounted transmitter 1row (EndDevice)
2024-02-05 22:05:20.194  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138f6adeb2948 (addr 38393): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.196  - �[32minfo�[39m: zigbee.1 (29415) 0xa4c138b1f08ff911 (addr 29388): A1Z - Nous Smart plug (with power monitoring) (Router)
2024-02-05 22:05:20.198  - �[32minfo�[39m: zigbee.1 (29415) 0x3c6a2cfffed418db (addr 31409): THS317-ET - OWON Temperature sensor (EndDevice)
2024-02-05 22:05:20.199  - �[32minfo�[39m: zigbee.1 (29415) 0xd85def11a10029d5 (addr 29880): 6736 - Busch-Jaeger Zigbee Light Link power supply relay/dimmer 2rows (Router)
2024-02-05 22:05:20.200  - �[32minfo�[39m: zigbee.1 (29415) Zigbee started
2024-02-05 22:05:20.247  - �[33mwarn�[39m: zigbee.1 (29415) download icon from https://www.zigbee2mqtt.io/images/devices/6737.jpg saved into /opt/iobroker/node_modules/iobroker.zigbee/admin/img/6737.png
2024-02-05 22:05:20.449  - �[32minfo�[39m: zigbee.1 (29415) debug devices set to []
2024-02-05 22:05:34.240  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.255  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.561  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.568  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.720  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.732  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.741  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.759  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.843  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:34.868  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:36.813  - �[33mwarn�[39m: zigbee.1 (29415) DeviceAvailability:Failed to ping 0xa4c138bf90547d3b TS011F
2024-02-05 22:05:38.968  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:39.062  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002803 failed with no error code (undefined)
2024-02-05 22:05:44.866  - �[33mwarn�[39m: zigbee.1 (29415) DeviceAvailability:Failed to ping 0xa4c138b1f08ff911 TS011F
2024-02-05 22:05:50.755  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:05:54.113  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:05:56.770  - �[33mwarn�[39m: zigbee.1 (29415) DeviceAvailability:Failed to ping 0xa4c138cdbee4361c TS011F
2024-02-05 22:06:05.099  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:06:08.367  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:06:23.245  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:06:23.278  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'brightness'
2024-02-05 22:06:23.507  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'rm01_row_2'
2024-02-05 22:06:23.682  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'rm01_row_2'
2024-02-05 22:06:26.379  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'rm01_row_3'
2024-02-05 22:06:27.887  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'rm01_row_4'
2024-02-05 22:06:28.967  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002700 failed with no error code (undefined)
2024-02-05 22:06:28.974  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002700 failed with no error code (undefined)
2024-02-05 22:06:31.149  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'brightness'
2024-02-05 22:06:31.736  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002700 failed with no error code (undefined)
2024-02-05 22:06:31.746  - �[31merror�[39m: zigbee.0 (29370) Send command to 0xd85def11a1002700 failed with no error code (undefined)
2024-02-05 22:06:35.711  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:06:38.987  - �[31merror�[39m: zigbee.1 (29415) Send command to 0xd85def11a10029d2 failed with no error code (undefined)
2024-02-05 22:06:41.436  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'brightness'
2024-02-05 22:06:43.383  - �[31merror�[39m: zigbee.1 (29415) No state available for '6736' with key 'brightness'

Dank euch für die Rückmeldungen und einen schönen Abend!
Daniel

@klada
Copy link

klada commented Feb 15, 2024

@muhlatte Meine Idee war es, folgende exposes-Definition zu verwenden (Beispiel):

        exposes: (device, options) => {
            const expose = [];
            if (utils.isLegacyEnabled(options)) {
                expose.push(e.action([
                    'row_1_on', 'row_1_off', 'row_1_down', 'row_1_up', 'row_1_stop',
                    'row_2_on', 'row_2_off', 'row_2_down', 'row_2_up', 'row_2_stop',
                    'row_3_on', 'row_3_off', 'row_3_down', 'row_3_up', 'row_3_stop',
                    'row_4_on', 'row_4_off', 'row_4_down', 'row_4_up', 'row_4_stop',
                ]));
            } else {
                expose.push(e.action([
                    'off_row_1', 'on_row_1', 'brightness_step_down_row_1', 'brightness_step_up_row_1', 'brightness_stop_row_1',
                    'off_row_2', 'on_row_2', 'brightness_step_down_row_2', 'brightness_step_up_row_2', 'brightness_stop_row_2',
                    'off_row_3', 'on_row_3', 'brightness_step_down_row_3', 'brightness_step_up_row_3', 'brightness_stop_row_3',
                    'off_row_4', 'on_row_4', 'brightness_step_down_row_4', 'brightness_step_up_row_4', 'brightness_stop_row_4',
                ]));
            
            }
            expose.push(e.linkquality());

            return expose;
        },

Damit wäre theoretisch die exposes-Definition immer korrekt und wir wären super kompatibel. Aus Kompatibilitätsgründen ist der Legacy-Modus halt an und er würde per Default immer die alte Action-Payload exposen. Um das umzustellen, müsste man lediglich legacy entweder nur für dieses Gerät oder den Gerätetyp auf false stellen und alles wäre gut.

Wenn ich @arteck aber richtig verstanden habe, kann genau das ioBroker halt nicht. Das ist leider das Problem, dass der ZigBee-Adapter, den ioBroker nutzt, wohl nicht das gesamte Feature-Set von zigbee-herdsman-converters unterstützt.

Die Converter setzen nämlich an manchen Stellen einfach voraus, dass man Attribute wie legacy pro Gerät oder Gerätetyp setzen kann (so wie eben in zigbee2mqtt). Und solange das der ioBroker Adapter nicht kann, werden die Geräte in ioBroker leider nicht gehen. Es sei denn, du stellst auf zigbee2mqtt um und bindest die ZigBee-Geräte per MQTT in den ioBroker ein.

Wir könnten den Default für den Wert legacy in den Herdsman-Convertern zwar drehen, aber das würde bedeuten, dass wir aktiv und wissentlich Setups von Leuten kaputt machen, die zigbee2mqtt nutzen. Genau das versucht Koen immer zu vermeiden. Daher fürchte ich, dass wir jetzt hier leider doch in einer Sackgasse sind, solange ihr den Convertern keine Optionen mitgeben könnt.

Oder habe ich jetzt wieder etwas falsch verstanden und ihr könnt doch einfach legacy für alle BJ-Geräte auf false setzen? Dann würde ich mich direkt an die Arbeit machen. 😄

@klada
Copy link

klada commented Feb 18, 2024

Hi, ich habe hier nochmal bei Koen nachgefragt und es ist tatsächlich so, dass in zigbee2mqtt der Legacy-Mode der zigbee-herdsman-converts für neue Installationen schon seit einer Weile automatisch aus ist.

@arteck Könnt ihr nicht auch im ioBroker eine globale Option einführen, um alle Zigbee-Geräte entweder mit Legacy an oder aus zu betreiben? Neue Installationen sollten auch explizit legacy auf false gesetzt bekommen. Das muss doch zumindest als globale Option gehen, wenn es schon nicht pro Gerät geht.

Das driftet jetzt ein bisschen von dem Problem hier mit den Busch-Jaeger-Geräten ab, aber ich denke ihr habt generell ein Problem im ioBroker, wenn ihr selbst in neuen Installationen Features in den Herdsman-Converters nutzt, die als veraltet deklariert sind.

@Kartracer390
Copy link
Author

Hallo gibt hierzu schon Neuigkeiten?

@muhlatte
Copy link

muhlatte commented Nov 21, 2024

@klada
da ich gerade Urlaub habe hatte ich mir gedacht, ich ziehe mal mein Zigbee Adapter auf Zigbee2MQTT Adapter im iobroker um. Leider hat das am Gesamtverhalten nichts geändert. Weiterhin haben wir im ioBroker (unter Zigbee2MQTT) nur den State und die Brightness funktionierend, die Reihen und auch die up/down/stop Stati funktionieren nicht. Soweit ich das in dem busch_jaeger converter gesehen hatte, sind das legacy Funktionen bei fromZigbee. Dies wird in ioBroker nicht unterstützt. Warum weiß ich auch nicht. Können wir irgendwie diese legacy funktionen ersetzen oder erweitern um nicht-legacy Funktionen?

Im Z2M Dashboard werden alle Aktionen an gezeigt, aber halt nicht als Status
image

@arteck:
Wären das dann fromZigbee_1.default.command_off/step/stop?

Würde mich echt freuen wenn ihr mich da nochmals unterstützen könntet. Ich bin echt am Verzweifeln da ich die Dinger seit meinem Update nicht mehr zum Laufen bringe.

Dank euch und viele Grüße
Daniel

@klada
Copy link

klada commented Nov 21, 2024

@muhlatte Das ist so korrekt. Das ist auch kein Status, sondern ein Event. Du musst aus der MQTT-Payload das action-Attribut auslesen. Wie das in iobroker geht - keine Ahnung. Ich nutze nur Home Assistant.

Diese Dinger sind ja zum Teil auch auf einem Relais bzw. Dimmer. Da wäre der Status dann z.B. on oder off, und in action steht, welche Taste gedrückt wurde. Die Teile auf einem Dimmer/Relais haben also einen state und eine action, die Teile auf einem Netzteil haben nur action, die 1-fach-Wippe auf einem Dimmer/Relay wiederum hat nur state.

Insgesamt ist es so, dass Zigbee2Mqtt 2.0 vor der Tür steht und dort der ganze Legacy-Kram dann endgültig rausfliegt [1]. Das hat vermutlich auch gravierende Auswirkungen auf iobroker, wo derzeit meines beschränkten Wissens nach noch alles im Legacy-Modus läuft (betrifft aber theoretisch nicht den Z2M-Adapter).

Sobald Z2M 2.0 fertig ist, würde ich auch die Busch-Jaeger-Untersützung im Herdsman gern etwas modernisieren (beim letzten Versuch bin ich abgestorben). Vorher macht das eigentlich keinen Sinn und funktional wird das auch keine Auswirkungen haben. Spoiler: Bei den batteriebetriebenen Tastern könnte z.B. das neue throttle helfen, was anders als debounce ggf. kein Mini-Delay verursacht - das steht auf meiner TODO-Liste, das mal zu testen.

[1] Koenkk/zigbee2mqtt#24198

@muhlatte
Copy link

Servus Dan,

erstmal vielen Dank für die schnelle RM. Bei ioBroker funktioniert Legacy nicht, weswegen wir die Einstellungen von Koenkk mit

  legacy_api: false
  legacy_availability_payload: false

zwangsweise aktiviert haben müssen.
Unter dem Zigbee Adapter habe ich tatsächlich den Payload als "msg_from_zigbee" Datenpunkt, generell eine super Idee den an zu zapfen. Ich muss mir dann in einem Skript machen dass die IDs und types zuordnet -> zwar aufwendig,aber damit könnte es klappen
Vielleicht können wir ja schon Vorarbeit leisten, wenn ich dir da behilflich sein kann, gerne. Ich glaube dass die

fromZigbee: [
            fromZigbee_1.default.ignore_basic_report,
            fromZigbee_1.default.on_off,
            fromZigbee_1.default.brightness,
            fromZigbee_1.default.command_off,
            fromZigbee_1.default.command_step,
            fromZigbee_1.default.command_stop,
            /*legacy.fz.RM01_on_click,
            legacy.fz.RM01_off_click,
            legacy.fz.RM01_up_hold,
            legacy.fz.RM01_down_hold,
            legacy.fz.RM01_stop,*/
        ],

(-> legacy ausgeklammert)

Um die command befehle erweitert werden muss

Für Z2M 2.0:
Eine Unterscheidung der Geräte wäre natürlich generell klasse, bin aber schon zufrieden wenn einfach nur alles ohne legacy angezeigt wird ;-)

@arteck:
Kann man unter dem Zigbee2MQTT Adapter den payload auch auslesen? Ich habe die Datenpunkte nicht gefunden, nur das Datum der Aktualisierung wird gespeichert aber ohne Message. Kann man die payload-Speicherung irgendwie aktivieren im Adapter?

@klada
Copy link

klada commented Nov 23, 2024

erstmal vielen Dank für die schnelle RM. Bei ioBroker funktioniert Legacy nicht, weswegen wir die Einstellungen von Koenkk mit

  legacy_api: false
  legacy_availability_payload: false

zwangsweise aktiviert haben müssen.

heißt das jetzt, dass der Zigbee-Adapter im ioBroker nun doch schon mit deaktiviertem Legacy-Support läuft? Das wäre super und das korrekte Verhalten.

Um die command befehle erweitert werden muss

Tatsächlich wird sich die Payload der 6735/6736/6737-Geräte mit Z2M 2.0 ändern. Hier kannst du sehen, wie es künftig aussehen wird.

Ich würde jetzt wirklich erstmal die Füße still halten. Mit dem Z2M 2.0-Release wird sich einiges ändern, der Legacy-Kram fliegt weg und ich gehe davon aus, dass sich das Problem damit auch für ioBroker-Nutzer in Luft auflöst.

@muhlatte
Copy link

Korrekt das macht er schon von Anfang an, daher wird das mit Z2M wie von dir erwähnt kein Problem für ioBroker darstellen (was aber natürlich aktuell mein großes Funktionalitätsproblem ist). Mit deinem "Payload auslesen"-Tipp habe ich meine Lichtsteuerung jetzt aber super hinbekommen. Ist gefühlt minimal träger, aber als Übergangslösung kann man das gut machen! Dank dir nochmals dafür!

Eine Frage hätte ich noch: Kann man die onEventPoll eventuell alle 5Sekunden ausführen lassen? Ich weiß dass das ordentlich das Zigbeenetz belastet, aber ich habe mit meinem Custom-Converter und 45 Geräten und davon 5 RM01 BJ Geräte nie ein Problem festgestellt. Ich habe in meinem Smarthome einige Stati-Abfragen drin, die mit den jetzigen 60Sekunden eben unglaublich verzögert kommen. Wäre daher echt super wenn du das für den aktuellen Converter noch ändern könntest!
Wenn es eine Möglichkeit gibt die bei mir customised zu ändern ohne wieder ein separates Skript aufmachen zu müssen wäre es für mich auch getan.

@klada
Copy link

klada commented Nov 23, 2024

Korrekt das macht er schon von Anfang an, daher wird das mit Z2M wie von dir erwähnt kein Problem für ioBroker darstellen

Klar, Z2M macht das. Meine Aussage bezog sich auf den ZigBee-Adapter im ioBroker, wo zigbee-herdsman-conververs direkt benutzt wird. Da ist die Frage, wie es dort bezüglich Legacy aussieht. Wenn dort nix besonders konfiguriert ist, dann ist der Legacy-Mode per Default an und das wird mit dem nächsten großem Release von zigbee-herdsman-conververs (also Z2M 2.0) richtig scherbeln. Wenn er in ioBroker.zigbee allerdings bisher schon aus war, ist alles gut...

Aber wie gesagt, als zigbee2mqtt-Nutzer betrifft dich das nun sowieso nicht mehr. Dort ist der Legacy-Mode für Neuinstallationen schon seit Jahren standardmäßig aus.

Eine Frage hätte ich noch: Kann man die onEventPoll eventuell alle 5Sekunden ausführen lassen?

Ja, das geht im zigbee2mqtt. Dazu öffnest du deine Konfiguration (normalerweise devices.yaml) und setzt dort für die Geräte, wo du ein anderes Poll-Interval brauchst, eine Option. Ich habe das selektiv für einige Busch-Jaeger-Geräte wie folgt gemacht:

'0xd85def11axxxxxx':
  friendly_name: spots_wohnzimmer
  state_poll_interval: 30

Im konkreten Fall sind das 30 Sekunden. 5 Sekunden sind schon sehr heavy. Unter 10 würde ich nicht gehen, aber das ist deine Entscheidung.

Das zeigt übrigens auch, dass man wirklich gerätespezifische Optionen braucht. Wenn das der ZigBee-Adapter vom ioBroker nicht kann, ist das funktional echt ein riesiger Einschnitt für die Nutzer. Ich würde als ioBroker-Nutzer da in jedem Fall den Umweg über zigbee2mqtt vorziehen (so wie du es nun auch machst).

@muhlatte
Copy link

muhlatte commented Jan 2, 2025

Servus Dan,

erstmal gutes und gesundes 2025! Ich wollte mal nachfragen wie es mit Z2M 2.0 und dem Umbau des BJ-Converters aussieht? Morgen soll ja Z2M 2.0 ausgerollt werden, oder? Die Woche hätte ich noch Zeit das Ganze in IO Broker zu testen da Urlaub.

Dank dir für die Rückmeldung und viele Grüße
Daniel

@klada
Copy link

klada commented Jan 2, 2025

Hi,

wann Z2M 2.0 genau kommt, kann ich dir nicht sagen - ich bin ja kein Team-Mitglied oder dergleichen. Ich habe mich in den letzten Jahren lediglich um die BJ-Geräte gekümmert, weil ich alle Kombinationen da habe und produktiv nutze.

Ich habe für Z2M 2.0 nur Altlasten in den BJ-Konvertern entsorgt. Der von mir geplante Umbau ist am Ende nur rein Code-kosmetischer Natur, daher warte ich damit bis nach dem 2.0-Release. Ich möchte möglichst kleine Schritte am Stück machen.

@afoeder
Copy link

afoeder commented Jan 29, 2025

Hi zusammen, sorry dass ich hier "aufspringe", wollte mich nur auch mal melden dass ich im HomeAssistant mit Z2M mit den legacy-Format anscheinend Probleme hatte. "Jahrelang" haben meine busch-jaeger mit row_2_off usw. funktioniert, und seit einigen Wochen nicht mehr. Ich bin erst jetzt dazu gekommen, mich ordentlich darum zu kümmern, und bin eben eher zufällig drauf gestoßen, dass sie nun off_row_2 usw. heißen. Siehe auch https://gist.github.com/afoeder/5dfc48dd46b147bf051fc732158cab36/revisions#diff-438c5c6c1d1096474c5df4d59ddcb12d5cccf934daa5ee7583351457f7385b44R48
Ich behalte den thread hier mal im Blick, da ich wie Du, @klada , harter Busch-Jaeger-Adopter bin :)

@klada
Copy link

klada commented Jan 29, 2025

Hi zusammen, sorry dass ich hier "aufspringe", wollte mich nur auch mal melden dass ich im HomeAssistant mit Z2M mit den legacy-Format anscheinend Probleme hatte. "Jahrelang" haben meine busch-jaeger mit row_2_off usw. funktioniert, und seit einigen Wochen nicht mehr.

Das stand halt im Changelog für zigbee2mqtt drin, dass sich hier die action-Payload ändert, wenn vorher legacy nicht explizit aus war. Spannend wäre, ob du ioBroker.zigbee nutzt oder direkt zigbee2mqtt. Soweit ich das sehe, wurde hier in ioBroker.zigbee noch nicht auf die aktuellen zigbee-herdsman-convers aktualisiert. Könnte gut sein, dass der nun aus den zigbee-herdsman-convers entfernte Legacy-Mode hier wie von mir vor einem Jahren vermutet zu Herausforderungen führt.

Ich kann aber nur immer wieder betonen, dass ich unbedingt den Umweg über zigbee2mqtt empfehlen würde, solange man hier im ioBroker.zigbee nicht individuelle Geräte-Optionen setzen kann.

@afoeder
Copy link

afoeder commented Jan 29, 2025

ja, ich durchschauen so langsam, was da los war. Witzig auch, dass Du derjenige warst, der korrekterweise die Änderungen in d1809833 nachgetragen hast, die ich damals angefangen hatte. So sieht man sich wieder :)
Ich nutze direkt z2m eben via Home Assistant.

Ich hatte das einfach quasi jahrelang "headless" laufen, die Updates haben immer funktioniert, und mich nie um (breaking) changes oder einen changelog gekümmert…

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Zigbee-Herdsman-Converters issue This issue needs to be fixed in the zigbee-herdsman-converters
Projects
None yet
Development

No branches or pull requests

5 participants