ZED poll rate set incorrectly if reset from a leave request with rejoin enabled
Issue description:
ZED will poll using REJOIN_POLL_RATE instead of POLL_RATE after being reset due to a parent leave request where the rejoin option was set.
Proposed fix:
In ZDApp_ProcessNetworkJoin of ZDApp.c, removeNLME_SetPollRate( zgRejoinPollRate ); fromif (nwkStatus == ZSuccess) and place in theelse statement instead. One must also set the zgRejoinPollRate when device state is DEV_END_DEVICE_UNAUTH
if ( ZG_SECURE_ENABLED && ( ZDApp_RestoreNwkKey( TRUE ) == false ) ) {if ( ZSTACK_END_DEVICE_BUILD ){NLME_SetPollRate( zgRejoinPollRate );}// wait for auth from trust centerZDApp_ChangeState( DEV_END_DEVICE_UNAUTH );
Optimally, also placeNLME_SetPollRate( ZDApp_SavedPollRate ); inside of ZDO_JoinConfirmCB.
one Man:
回复 YiKai Chen:
谢谢