-
Notifications
You must be signed in to change notification settings - Fork 26
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
Please expose functionality to set Standard Distributed Key (TZ-119) #25
Comments
We will provide API for this, thanks for pointing out |
Hi @chshu, thank you for doing this work. It works like a charm in my test project. However I tried using this with the Zigbee device type set to "Zigbee End Device" and received the following error. If I set the device type to Zigbee Coordinator or Router device it works without problems.
|
Thank you for your test. Currently, the end device of Zigbee does not support temporarily setting the distributed key. However, this feature will be fixed in the next week. |
The current API doesn't expose a function to set the Standard Distributed Key. This would be nice to have in order to join networks that don't use the standard Zigbee Alliance Key Transport Key. Recognisable by having the Key Id set to 2 in the Security Control Field of the ZigBee Security Header.
This functionality is available in the boss library with the function call 'zb_zdo_set_tc_standard_distributed_key'. I was able to get my ZigBee device connected to the network by using a workaround. I reconfigured the on/off light example with 'CONFIG_ZB_ZCZR=y' to link against the zczr libraries that expose that function. And defined the function as external
extern void zb_zdo_set_tc_standard_distributed_key(unsigned char *key_ptr);
Calling this function with the correct key after invoking esp_zb_init allowed the module to extract the Standard Network Key from the Transport Key message. The module is correctly sending a Device Announcement with the network key.
Details:
The text was updated successfully, but these errors were encountered: