Hwo does one disable the beacon requests from an end device after the node is orphaned? A requirement for zigbee certification of the public profiles is that in a scenario where an end device has lost communication with its parent, it can try to rejoin for up to 15 minutes, and then must stop and be siilent for at least 15 minutes.
I have been unable to stop the beacon requests from the node. I have tried the NLME_NetworkDiscoveryRequest(chanlist,BEACON_ORDER_NO_BEACONS); but that seems to be overridden immediately, perhaps in the ZDO_ProcessOsalMsg function where it is being set at 60 seconds.
I even tried modifying this section in zdapp.c without success.
case ZDO_NWK_JOIN_REQ:
if ( ZG_BUILD_JOINING_TYPE && ZG_DEVICE_JOINING_TYPE )
{
retryCnt = 0;
devStartMode = MODE_RESUME;
_tmpRejoinState = true;
osal_cpyExtAddr( ZDO_UseExtendedPANID, _NIB.extendedPANID );
zgDefaultStartingScanDuration = BEACON_ORDER_60_MSEC;
ZDApp_NetworkInit( 0 );
}
break;