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.

[参考译文] CC1352R:强制调试并通过 ZR 从 ZED 路由到 ZC

Guru**** 2466550 points
Other Parts Discussed in Thread: Z-STACK

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1121483/cc1352r-force-commissioning-and-routing-from-zed-to-zc-through-zr

器件型号:CC1352R
Thread 中讨论的其他器件:Z-stack

我在 LaunchPad 上有3个项目可用于测试:

ZC_LIGHT

ZR_SW

Zed_sw

ZED 和 ZR 可以与 ZC 配对、一切都可以正常工作。

但是、如何确保通过 ZR 到 ZC 的 ZED 对以及所有传输也通过 ZR 的这种路由方式?

我们是否有任何设置可以排除 ZED 和 ZC 之间的直接交易?

ZR 应始终参与此过程。

我没有足够的空间将 ZED 和 ZC 彼此移开并将 ZR 置于中间。

谢谢。

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

    没有方法可以通过特定路由器分配要配对的设备。

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

    我不确定、但可能我看到过应用手册或其他内容、其中测试了链中的许多器件和路由器。 他们写了一条注释、指出没有足够的空间将所有器件放置在链中、并添加了一些限制、以使它们以特定的顺序相互连接。 因此、它们将 DEV1连接到了 DEV2、将 DEV2连接到了 DEV3、将 DEV3连接到了 DEV4等。尽管它是网状网络、但它们知道自己是如何连接的。 但我失去了链路、我不记得它们是如何使 DEV1未直接连接到 DEV4的。 您是否理解我所说的内容? 有什么建议吗?

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

    我知道您的要求、但我知道没有软件替代方案来实现这一要求。

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

    我找到了文档 https://www.ti.com/lit/an/swra650b/swra650b.pdf

    对于器件而言、它们的"区域"是什么意思? 是只是一个特别的房间彼此远离,还是这些区域是以软件的方式逻辑创建的?

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

    应用报告已经提到“每个区域只能与相邻区域的成员通信。”因此,就像您描述的“彼此相距甚远的特殊房间”一样。

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

    尊敬的 Alex:

    应用报告源材料在 NWK 层使用 ZNP、python 脚本和高级允许/拒绝列表来实现基于 IEEE 地址的器 件路由的 Zone 方法、即使这样、也无法强制将 ZED 加入一个特定的区域。

    如果您不希望任何 ZED 直接关联到 ZC、或者如果这只是为了测试目的、则可以在  nwk_globals.h 中设置 NWK_MAX_DEVICE_LIST= NWK_MIN_ROuter_children、以便所有关联的设备都保留为 ZR 邻居、因此不允许 ZED 子设备。

    我的快速测试解决方案始终是将 ZED 和 ZR 放置在更靠近 ZC 的位置。

    此致、
    Ryan

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

    很棒的想法。

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

    谢谢!

    是针对 ZR 还是针对 ZC 在 nwk_globals.h 文件中进行的更改? 还是两者都适用?

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

    您可以对 ZC 执行此操作、因为 ZR 仍希望保留终端设备子设备。

    此致、
    Ryan

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

    是的、它可以正常工作。 谢谢。

    我有另一个问题。 如果我关闭 ZC 并复位 ZR、ZR CUI State 会显示"在网络中"、但 ZC 会关闭。

    在 ZR 侧是否有任何方法知道 ZC 不可用?

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

    您可以定期从 ZR 向 ZC 发送激活端点请求。 如果 ZR 无法接收 ZC 的响应,您可以判断它与 ZC 的连接是否断开。

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

    ZR 确实保持在网络中、并且能够在网络中通信和路由数据包、但如果新设备尝试加入、则 在信任中心脱机的情况下更新 TC 链路密钥将失败。  ZR 的 Z-Stack 库将知道 ZC 通过失败的链路状态更新和现有路由/邻居表关闭。  您可以使用 Z-Stack API (如 Zstackapi_DevNWkCheckRouteReq()   )检查带有 ZC 的路由是否处于活动状态,或尝试发送 ZDO 消息(如 Zstackapi_ZdoIeeAddrReq()),并查找是否获得响应。

    此致、
    Ryan