This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于退网的实现,应该使用ZDP_MgmtLeaveReq() 而不是 ZDApp_LeaveReset()/NLME_LeaveReq()对吗?

Other Parts Discussed in Thread: Z-STACK

最近调试终端退网功能,开始使用NLME_LeaveReq()和ZDApp_LeaveReset(),一直出现退网之后终端再次加网会失败的问题无法解决,终端执行退网动作后在协调器的关联表中还会存在退网节点的信息,感觉不合道理。昨天试了下使用ZDP_MgmtLeaveReq()发现都解决了, 无论终端还是协调器使用ZDP_MgmtLeaveReq()都能使终端成功退网并且退网后无论再次原来的还是另一个网络都能顺利加入,且退网后协调器的关联表会立即将退出节点信息删除。

在协调器使用ZDP_MgmtLeaveReq()时dstAddr参数为终端的地址,IEEEAddr为终端的IEEE,终端使用时dstAddr参数为协调器的地址,IEEEAddr仍为终端的IEEE。

根据这样的结果来看应用程序执行退网操作的方法应该是使用ZDP_MgmtLeaveReq()而不是 ZDApp_LeaveReset()/NLME_LeaveReq(),当然中间的过程会有执行到 ZDApp_LeaveReset()/NLME_LeaveReq()那是过程中间的事情应用程序不需要关注。