Support for missing ZCL foundation commands
See original GitHub issueFile src/zcl/definition/foundation.ts
states:
Reading these lines, I understand that when zigbee-shepherd
was refactored into zigbee-herdsman
most recent ZCL foundation / global commands were intentionally left out just for the sake of simplicity and no real demand for those commands.
However, as more and more manufacturers adopt ZigBee, specially its quite opinionated 3.x version along the ZigBee Cluster Library, we’re seeing an increasing number of devices making use of these ZCL commands, specially readStruct
, writeStruct
and writeStructRsp
.
I found out about this the hard way when trying to implement the toZigbee
converter for Livolo covers, but I can imagine that many other devices are currently missing support for advanced settings in their Z2M integrations also because of this limitation.
I think it is time to support those commands, and I’d be happy to work on them.
I can’t call myself an expert in the ZigBee stack at all, but I’ve been lurking the space for 10 years and I’m familiar with sniffing 802.15.4 traffic, can read and understand the specification, I’m well-seasoned in reverse-engineering stuff, and have written more TypeScript than I’d like to admit, so I feel confident I can come up with something that lives up to the quality standards of this project.
So, before I jump into implementing anything, I wanted to ask the devs here, specially @Koenkk, whether this is a good idea, or whether am I missing any reason why this shouldn’t be worked on.
Cheers!
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (5 by maintainers)
The reason that these were not added yet was indeed that we didn’t have any devices which use these commands. If you have a device which does it would be great if you can implement it! (but just implement the ones which are actually used by devices)
Superseded by #333 for now 🚀