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:使用 touchlink 重新启动后、网络将无法恢复?

Guru**** 2589265 points


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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/999420/cc2652p-after-using-touchlink-to-restart-the-network-will-not-recover

器件型号:CC2652P
Thread 中讨论的其他器件:SysConfig

您好~

我使用的是 ZR_ Light 演示例程。

、此 API 后1 μ s:

REQ.timeoutTime = 0xffffff;
Zstackapi_BdbTouchLinkTargetEnableCommissioningReq (appServiceTaskId、&req);

可以正常使用 touchlink,并且可以在重新启动后恢复网络。


2、扫描网络后:

zstack_bdbStartCommissioningReq.commissioning_mode = BDB_TUSESING_MODE_NWK_STUING | BDB_TUSING_MODE_Finding_Binding;
Zstackapi_BdbStartCommissioningReq (appServiceTaskId、&ZStack_BdbStartCommissioningReq);

 回调(zclSampleLight_ProcessCommissioningStatus)提示失败。 然后启用 touchlink、TL 可正常使用、但重新启动后不会恢复网络。

需要帮助,谢谢~

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

    Mingwei、您好!

    您是否使用 TouchLink UI 来评估此功能、是否已按照 《Z-Stack 用户指南》的 TouchLink 调试部分中的说明从 SysConfig 启用了 BDB_TL_INITIATOR 和 BDB_TL_TARGET?  由于  BDB  Touchlink 是具有分布式安全功能的网络构建的接近调试方法、 您是否正在尝试构建分布式网络或加入分布式网络?  请列出复制行为所需的所有步骤和项目更改。

    此致、
    Ryan

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

    尊敬的 Ryan:

    我没有使用  TouchLink UI 来评估此功能。我的设备是 Touchlink 加入分布式网络的目标设备。

    我发现在 A 函数中、在这一行代码下添加一行代码可以解决我的问题。

    zgWriteStartupOptions (ZG_STARTUP_CLEAR、ZCD_STARTOPT_DEFAULT_NETWORK_STATE);
    zgWriteStartupOptions (ZG_STARTUP_CLEAR、ZCD_STARTOPT_DEFAULT_CONFIG_STATE);

    BTW,在设备已连接到网络的前提下、如何获取当前网络是集中式网络还是分布式网络?

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

    您好 Mingwei、

    感谢您提供此更新。  由于 Zstackapi_BdbStartWritingReq 不是为了被 Touchlink 目标使用、我假设这个 API 保存了 NV 设置、该设置在复位时与 Touchlink 操作相冲突、直到您使用 zgCommisseStartWritpOptions 来复位器件参数。

    应用程序可以查询的值 AIB_apsTrustCenterAddress 以查看是否已加入分布式网络、因为 TC 地址将设置为0xFFFFFFFF。

    此致、
    Ryan

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

    感谢 Ryan~

    我还有另外一个问题:
    我的设备是一个端点、已加入网络。 此网络可以是集中式网络或分布式网络。 网络中有许多路由节点。 我如何知道哪个路由是我的父节点。 因为我需要向父节点发送消息(轮询控制签入请求)。

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

    Zstackapi_sysNwkInfoReadReq()将返回 parentNwkAddr 和 parentExtAddr。  TI 提供 可能感兴趣的轮询控制群集 SimpleLink Academy 实验。

    此致、
    Ryan

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

    您好、Ryan

    ?(和禁用直流/直流转换器、如何在程序运行过程中切换 Δ t、或者它将在重新启动后生效)

    我观察到、DCDC 的禁用和启用设置对应于闪存的最后一页。 在程序运行期间、我需要更改闪存最后一页中的 DCDC 设置、然后重新启动它、以便更改 DCDC 禁用和启用。
    当程序运行时、可使用哪个 API 来修改闪存中最后一页的 CCFG 设置?

    谢谢~

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

    您好、minigwei、

    不建议在运行时更改 CCFG 寄存 器、但这可以使用 NVS TI 驱动程序 API 来实现。  请参阅类似的 E2E 主题。

    此致、
    Ryan