dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.9k stars 498 forks source link

Philips Hue ZLL/ZB3 match DDF only for newer firmware #7635

Closed manup closed 7 months ago

manup commented 7 months ago

The existing DDFs require that the lights have a recent firmware which provides the 0xFC03 cluster and otherwise won't function fully for polling and updating the light state.

The PR no longer matches DDFs for older firmware lights, and falls back to the legacy code for them.

Later on we can introduce DDFs which also handle the old firmware with standard clusters instead of 0xFC03 cluster. Note this PR only affects the ZLL lights, I'm not sure if also ZB30 lights need this for older firmware?

manup commented 7 months ago

Good point, ok I'll add the line to all light DDFs which use the 0xFC03 cluster.

In a separate PR there will also be an automatic refresh of the ZDP active endpoints and simple descriptors to prevent the false positives due the wrongly added clusters. This will be done in a lazy manner like refresh once per startup (and later on after OTA), so it might require one more reboot to fix old lights to not use the DDFs.

manup commented 7 months ago

I've the matchexp also to Festavia and Gradient, since the cluster is used in the DDF, or was it always there?

ebaauw commented 7 months ago

I won’t hurt, and keeps the DDFs similar. But I think the cluster has been on those from the introduction, as that’s the way to set gradients.