为什么节点加入网络失败会触发ZDO_SyncIndicationCB?
时间:12-22
整理:3721RD
点击:
协调器用函数ZDO_JoinIndicationCB做IEEE地址过滤,判断节点加入网络。一开始节点加入网络,type=NWK_ASSOC_JOIN。然后函数就返回ZFailure。多次以后,节点加入网络,参数type就变成NWK_ASSOC_REJOIN_SECURE了。
我跟踪节点的程序,发现函数ZDApp_ProcessNetworkJoin遇到协调器的ZDO_JoinIndicationCB返回ZFailure时,nwkStatus为ZFailure,多次重试之后,会触发函数ZDO_SyncIndicationCB。
ZDO_SyncIndicationCB
ZDO_SyncIndicationCB是在已经入网,但是和父节点失去同步的时候会触发这个函数,从而进入rejoin的过程,如果是父节点和子节点失去同步的时候也会触发这个函数,只是不会执行rejoin过程,因为是父节点。
未成功入网的节点为什么也会触发?父节点在ZDO_JoinIndicationCB时返回ZFailure,返回超过3次,子节点就会触发ZDO_SyncIndicationCB