openhab / openhab/org.openhab.binding.zigbee
Binding should NOT require an endpoint with Level Control to also support the OnOff cluster.
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 76
- Forks
- 112
- PR merge metrics
- No merged PRs in 30d
Description
Hi everyone,
I have a custom Zigbee dimmer device that registers just fine with OH2 M4, the problem is that I get the error below when I add the device. Switch cluster works fine, but for whatever reason the Level Control cluster fails to initialize.
2019-11-21 17:37:40.392 [DEBUG] [ng.zigbee.handler.ZigBeeThingHandler] - 0013A20041A406E7: No handler found for zigbee:device:9caa92e7:0013a20041a406e7:0013A20041A406E7_3_dimmer
2019-11-21 18:13:20.389 [INFO ] [ng.zigbee.handler.ZigBeeThingHandler] - 0013A20041A406E7: Channel zigbee:device:9caa92e7:0013a20041a406e7:0013A20041A406E7_3_dimmer failed to initialise device
2019-11-21 18:13:20.658 [INFO ] [ng.zigbee.handler.ZigBeeThingHandler] - 0013A20041A406E7: Channel zigbee:device:9caa92e7:0013a20041a406e7:0013A20041A406E7_4_dimmer failed to initialise device
2019-11-21 18:13:20.840 [INFO ] [ng.zigbee.handler.ZigBeeThingHandler] - 0013A20041A406E7: Channel zigbee:device:9caa92e7:0013a20041a406e7:0013A20041A406E7_3_dimmer failed to initialise converter
2019-11-21 18:13:20.851 [INFO ] [ng.zigbee.handler.ZigBeeThingHandler] - 0013A20041A406E7: Channel zigbee:device:9caa92e7:0013a20041a406e7:0013A20041A406E7_4_dimmer failed to initialise converter
After troubleshooting with @cdjackson (link) we found out that the issue is caused by the fact that the binding expects the Level Control endpoint to also support the OnOff cluster.
Although most if not all devices that support Level Control also support OnOff cluster, OH probably it shouldn’t assume that given that the zigbee specification clearly specifies handling both Level Control by itself and Level Control with On/Off support.
This makes OH less flexible and also previous versions of OH 2.x did not have this restriction.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the ZigBee binding's endpoint and Level Control initialization path described in the issue, using the reported custom dimmer behavior as the reproduction case. Done means an endpoint with Level Control but no OnOff cluster initializes its dimmer channels successfully, without requiring the OnOff cluster.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100