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.

[参考译文] CC2652P:检查 ZigBee 器件是否真的已加入网络

Guru**** 1133960 points
Other Parts Discussed in Thread: CC2652P
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1345307/cc2652p-checking-zigbee-device-is-really-joined-on-the-network

器件型号:CC2652P

您好、Ryan、祝您一切顺利!

我需要了解进行检查(从我的 CC2652P 模块)时的一个重要问题、即器件(终端设备/路由器)是否已真正加入 ZigBee 网络。

几个月前、您建议我使用以下函数调用:

"您可以检查 ZStack_DevState (应为 ZStack_DevState_DEV_End_Device 或 ZStack_DevState_DEV_router)
或 bdbAttributes.bdbNodeIsOnANetwork (应为 true)。"

实际上、此变量指示设备是否以某种方式加入到网络中、但此时设备并未真正物理加入

我不确定我说的是什么、因为在没有协调器(没有路由器)处于活动状态(它们肯定是关闭的)的设备上、变量无论如何都是正确的

此时,我们只需简单地添加以下调用: "sendActiveEndpointRequest (/*dest addr*/0,/*end点*/0);" ,在到达协调器时返回 true。

这还可以吗、或者您是否建议我们采用更好的方法?

 

非常感谢

 

路易吉

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Luigi:

    上一主题: https://e2e.ti.com/f/1/t/1212994 

    可以调试 ZDO_SyncIndicationCB -> bdb_parentLost 以确认器件状态更改为 DEV_NWK_ORANK 并相应地通知您的应用程序。  在 ZED 的父级不响应数据请求轮询 LINK_DOWN_TRIGGER 时间后、将发生同步丢失指示。   由于器件应该继续尝试重新加入它保留 NV 信息的现有网络、因此 bdbAttributes.bdbNodeIsOnANetwork 保持为 true 是合理的。  如果您希望使器件恢复出厂设置、并允许其重新加入任何开放网络、则可以修改 bdb.c 和 ZD_app.c。   

    此致、
    瑞安