Closed RobinBol closed 7 years ago
I think I took a wrong approach regarding this issue. The coordinator should be able to configure routers and end devices to report to a specific endpoint (with the correct profile). The problem is that the Xiaomi devices do not respond to these bind
requests, well, they respond successfully, but then do not change the destination endpoint on their attribute reports for example.
For others facing similar issues, for now we solved it by changing the profile on endpoint 1 to Home Automation (which is expected/the default of the Xiaomi devices). Therefore I'll close this issue.
Hi all,
I am trying to create a generic fix for https://github.com/zigbeer/zigbee-shepherd/issues/26 which will not require the hardcoded endpoint switch (which will break implementation of other devices). My idea was to map an incoming
ZCL: Report Attributes
to the correct endpoint at this point in the code: https://github.com/zigbeer/zigbee-shepherd/blob/master/lib/components/af.js#L525. In order to find the correct endpoint on the controller we should be able to read the destination endpoint from the incoming message. I know it is present in the message, see this sniff:However, it seems that the message does not arrive in zigbee-shepherd land, hence I can not replace the endpoint with the correct one (the mapping). I might miss something here, on what level in the zigbee stack does this incoming message gets assigned to the coordinators endpoint/profile combination?
Is this a viable approach or do you have other ideas?