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.

[参考译文] CC2530:Zed 重新加入问题- BDB_试运行 失败

Guru**** 2595805 points


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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1069760/cc2530-zed-rejoin-issue---bdb_commissioning_failure

部件号:CC2530

一名泽德在 几周后因目前未知的原因从网络中“失踪”。

重启设备没有帮助(已尝试多次)。

已制定一个程序,以便 Zed 调用

      bdb_StartCommissioning(BDB_COMMISSIONING_MODE_NWK_FORMATION | BDB_COMMISSIONING_MODE_NWK_STEERING | BDB_COMMISSIONING_MODE_FINDING_BINDING | BDB_COMMISSIONING_MODE_INITIATOR_TL);

按下按钮5秒钟后。
这种尝试也多次,但没有成功。  我无法确定是否调用了预期代码,因为预期的副作用(指示灯闪烁)没有发生。

使用 IAR 进行调试时,请保持 NVRAM 内存完好,设备最初未加入网络。

输入'..._ProcessCommissioningStatus(bdbCommissioningModeMsg_t* bdbCommissioningModeMsg)',

状态对应于 BDB_试运行 失败。

 流程佣金状态方法仅输入一个-我认为 没有再次尝试调试。

我在 bdb_event_loop 中设置了断点,看起来这是第一次发生事件。

遗憾的是,在移动断点数次(并在调试运行之间重置)后,此设备再次出现在网络上,并且目前正在持续执行此操作。

这表明网络信息并未丢失。

据我所见,我的嗅探器日志仅在重新加入请求成功时显示该请求-在此之前没有重新加入请求。

我的问题如下:

BDB_试运行 失败 是在样本代码中未处理的状态。  我想就此采取行动-建议是什么?

——有什么想法可能是根本原因——当它再次发生时,该怎么看?

——在这种情况下,有没有其他建议让泽德重新加入网络?

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

    您是否在 CC2538:Z-Stack 3.0.2中添加了修补程序?

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

    嗨,马里奥,

    Zed 不应使用 BDB_试运行_MODE_NWK_Formation,这样做可能会导致  BDB_试运行 失败。  我希望 在  发现 BDB_试运行_network_restored 不正确后,BDB_试运行_parent_lost 案例会导致 SampleApp_end_device_inuate_EVT 计时器。   这将导致 bdb_ZedAttempettRecoverNwk,您可以尝试使用该应用程序。  感谢您迄今为止提供的信息。  如果证明 NV 完好无损,最终重新加入成功,那么 Zigbee 网络或无线电硬件可能会发生变化。  这将有助于可靠地重新创建问题,以进一步了解和调试问题所在。

    此致,
    瑞安

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

    请你 Ryan 提供此反馈。

    好的,我正在从  代码中删除 BDB_试运行_MODE_Nwk_formation,希望这可以避免输入未处理的案例

    已经有一个侦听器用于调用  bdb_ZedAttempettRecoverNwk()的*app_end_device_inch_EVT;。

    所以,基本上,我应该检查一下,如果我遇到另一个阻塞情况,这是否会被呼叫。

     

    我认为网络或无线电硬件没有发生变化。  我的家庭 ZigBee 网络上安装了该装置,用于实际测试,我让它运行了几天,看看它是否会自行恢复网络。  我调试网络时,网络在一个多小时内重新获得(我对网络的恢复感到失望)。  我还有大约20台运行正常的设备,其中大多数是其他类型的设备,其中一些是相同类型的设备。

     

     我在调试过程中没有看到 BDB_TUSing_parent_Lost 发生(我认为如果发生这种情况我应该已经看到了),重新加入延迟似乎没有开始,因为 没有达到。  在初始化过程结束时,我调用"bdb_StartCommissing(BDB_TUSing_UBILE_NETWORK_ON_STARTUBI);"。

    对于  “switch(bdbCommissioningModeMsg->bdbCommissioningMode))”,在_ProcessCommissioningStatus bdb 回调中没有回退默认情况并不是很干净,但我不确定在默认情况下应该做什么:

    当 佣金状态 CB 中未处理 bdbingMode 时,我可能应该添加*app_end_device_inuate_EVT 计时器。

     

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

    BDB_试运行 重新加入现有网络启动的值与 BDB_试运行 初始化的值相同。   初始化通知应仅成功 ,但 Zed 的 BDB_TUSICEND_PART_Lost 通知除外,该通知应依次处理。   您可以检查 ZCD_NV_BDBNODEONANETWORK 以查看 Zed 是否有存储在其 NV 中的网络信息,如果   BDB 无法访问 BDB_TALING_PARTIAL_PART_Lost 案例,则可跳启动 APP_END_DEVICE_RECONBILE_EVT 计时器。

    此致,
    瑞安