2021-02-20 02:09 AM
Hello,
I have ran two examples of Zigbee applications on Nucleo STM32WB.
One with end device device type and the other one with router device type (both with FFD stack).
I have registered the node on my existing Zigbee network.
I can see that the device type of the node is changing but when I look at the code, I could not find any difference (in app_zigbee.c).
Can you point at to me where the device type is set in the code?
Thank you for your answer,
Best regards,
Léo
PS: is there a complete documentation of the API/stack available where I can find that kind of information?
Solved! Go to Solution.
2021-03-13 10:49 PM
Hello,
I have figured it out. Device type is set by setting or not end device parameters.
/* Add Sleepy End device configuration */
config.capability &= ~(MCP_ASSOC_CAP_RXONIDLE | MCP_ASSOC_CAP_DEV_TYPE | MCP_ASSOC_CAP_ALT_COORD);
config.endDeviceTimeout = 1*SED_SLEEP_TIME_30S /* 1 x (30sec sleep time unit) => 30s sleepy cycle */;
Best,
Léo
2021-02-25 06:31 AM
Hello @Léo Granier ,
I advise you to follow this application note AN5506 Getting started with Zigbee® on STM32WB Series, which guides you to build specific Zigbee applications and explains how to interface with the STM32WB Series microcontroller.
I hope this resource is helpful for you.
Imen
2021-02-25 07:25 AM
Hello @Imen DAHMEN ,
Thank you for your answer.
Unfortunately, I have been through AN5506 documentation (and I have read all ressources available that I could find - I could have missed some but not this one).
I could not find the information I need in this documention.
Is there a complete documentation of the API available somewhere?
I really cannot see where the role is set in the code. I can see that the router/end device can only join a network and cannot form one (vs a coordinator). But I cannot see in the code itself where the end device/router role is set.
Best regards,
Léo
2021-03-03 02:35 AM
Hi @Léo Granier ,
Honestly, this is not my area of expertise but I added the topic "STM32WB" to your question in order to increase its chance to be reviewed by our STM32WB experts.
Hello @Remi QUINTIN ,
Can you please help @Léo Granier on this issue ?
Imen
2021-03-13 10:49 PM
Hello,
I have figured it out. Device type is set by setting or not end device parameters.
/* Add Sleepy End device configuration */
config.capability &= ~(MCP_ASSOC_CAP_RXONIDLE | MCP_ASSOC_CAP_DEV_TYPE | MCP_ASSOC_CAP_ALT_COORD);
config.endDeviceTimeout = 1*SED_SLEEP_TIME_30S /* 1 x (30sec sleep time unit) => 30s sleepy cycle */;
Best,
Léo