I'm currently debugging a problem where my Zigbee End Device (ZED) occasionally never sends an association request to my Zigbee Coordinator (ZC). My ZED is a nRF5340DK using a modified version of R23 Add On Zigbee template example. My ZC is a 3rd party device. I've added a call to zb_bdb_reset_via_local_action() such that there are no rejoins in my Zigbee network when the device is reset or leaves. Sometimes, if I reset my ZED after it has already joined the Zigbee network, it appropriately restarts the commissioning procedure, performs network steering, and joins the Zigbee network. However, sometimes after resetting my ZED if has already joined the Zigbee network, it doesn't join the Zigbee network and never sends an association request. I added a console print in zboss_thread() such that every time the pan id changes, the pan id gets printed (pan id obtained by zb_get_pan_id()). In the scenario that the network steering fails, I never see my ZC's pan id printed. So my thought is that my ZC's network might not even be discovered when zb_nlme_network_discovery_request is scheduled in zdo_commissioning_bdb.c.
Is there a way I can see all discovered networks in network steering?
Additionally, if my network is not being discovered, I'm wondering if the ZC is not responding to the beacon requests from my ZED during network discovery. If this is the case, is there any way to see some more details from the ZED on beacon requests being sent/beacon responses being received?