在使用ZDP_MgmtPermitJoinReq()函数函数中遇到一个问题,具体情况如下,请各位能帮忙解答,谢谢!
我的Zigbee网络中有一个协调器,一个路由器(0x4B32),一个待入网设备(路由器),上电后协调器和路由器都设置了禁止其它设备入网。
我想实现的功能是:首先待入网设备通过外部操作调用ZDOInitDevice(0);让其自动启动;然后协调器向路由器(0x4B32)发送ZDP_MgmtPermitJoinReq()指令后,待入网设备通过向路由器(0x4B32)入网。
目前的问题是:实际上协调器向路由器(0x4B32)发送ZDP_MgmtPermitJoinReq()指令后,0x4B32并没有开启入网,当然设备也没有加入网络。通过抓包发现协调器有发数据包给0x4B32,但是0x4B32的Assoc仍然为0,按道理应该为1才对,这样才能开启入网。但是我通过NLME_PermitJoiningRequest()指令本地开启0x4B32的允许入网,这时Assoc为1,其他设备能够正常入网。
我的疑问是:0x4B32接收到协调器发过来的ZDP_MgmtPermitJoinReq()指令后,后续的工作是协议栈自动处理开启入网功能;还是需要用户根据接收到的指令开启入网功能?
抓包结果见附件。