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.

[参考译文] CC2340R5:CC2350R53 ZBOSS ZIGBEE 如何实现包含 128 个节点的网络规模

Guru**** 2964790 points

Other Parts Discussed in Thread: SYSCONFIG, CC2745R10-Q1

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1653445/cc2340r5-the-cc2350r53-zboss-zigbee-how-to-achieve-a-network-scale-of-128-nodes

器件型号: CC2340R5
Thread 中讨论的其他器件: SysConfig、 CC2745R10-Q1

SDK 版本: simplelink_lowpower_f3_SDK_9_14_02_16

参考:zbos-user-guide  

配置文件中找到 用法 最大节点数
zb_mem_config_min.h 简单应用和小型网络。 16
zb_mem_config_med.h 而无需大量 Zigbee 功能、
例如、广播传输、绑定和组成员资格条目。
32
zb_mem_config_max.h 复杂的应用程序和庞大的网络。 128

大型网络应能够容纳 128 个节点。

但是、使用 ZB_mem_config_max 中的配置 实际测试、协调器可以连接到的最大节点数仅为 31。

增加 NVRAM 也没有任何改善、在 ZBOSS 协议栈中、NV(非易失性内存)的最大大小是否限制为 8K? 这将导致最大网络大小限制为 32。

 

 

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

    你好 baosong、

    以下是有关 Zigbee 栈 RAM 使用情况配置的附加信息。  由于 SimpleLink F3 SDK Zigbee 工程 在 ZB_VENDOR_lpf3_SDK.h 中定义了 ZB_CONFIGURATION_MEM  、因此引用了 zb_mem_config_lprf3.h 并使用 ZB_CONFIG_LIGHT_TRACISION、 ZB_CONFIG_APPLICATION_MODE媒体 和 MAX_CHILDRENER (来自 SysConfig 生成的 ti_zigbee_config.h) 来配置 zb_mem_config_common.h 文件中的定义。  请确保更改这些定义的相应位置、并在调试设置中确认这些值符合预期。

    目前似乎堆栈被配置为最多支持 32 个节点、这会在 31 处产生停止(加上本地器件本身)。  不应存在 NVRAM 限制来限制可以加入的器件数量、且 CC2340R53 能够支持 32 个以上的 Zigbee 器件。  您使用的是网状网络(即路由器)还是所有 ZED 都直接连接到 ZC?  您能否分享您对基准 TI 开箱即用示例应用的所有更改?   

    此致、
    Ryan

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

    我已经测试协调器最多可以连接 31 台路由器。我还测试协调器最多只能连接 31 个终端设备节点。syscfg 中的“Network Maximum Children“参数设置为 128。   我发现,当协调器使用默认的 SYSCFG 的 NVS 值 0x1000 时, 协调器最多只能连接几十个节点,如果 NVS 的大小更改为 0x2000 ,协调器可以连接多达 31 个节点,但继续增加 NVS 的大小不会改变加入协调器的节点数。    我知道协调器的 NV 将存储每个连接节点的链路密钥和 IEEE 地址信息、  所以我想知道 NVS 空间是否限制了协调器的网络大小?   我使用 CC2340R53。 其 RAM 的容量为 64K、因此不应受限制协调器网络规模的 RAM 空间限制。

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

    我认为当前设置中不存在 NVS 内存问题。  我想进一步了解您在 TI Zigbee 示例项目内对 ZB_mem_config_*实现所做的更改。  您能否提供您的应用.c 文件、SysConfig 和对 zb_mem_config_lprf3.h 的任何更改以供查看?

    此致、
    Ryan

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

    仅更改了 SYSCFG 配置文件、但未修改 zb_mem_config_lprf3.h 文件。

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

    当达到最多 31 个器件时、是否存在未能加入的其他器件的任何监听器日志或调试堆栈返回状态?  Zigbee 网络此时的行为方式是什么?  如果将 ZR 引入网络、是否允许使用更多设备?  虽然您不是目标器件、但您是否曾尝试通过 CC2745R10-Q1 LaunchPad 来确定结果是否相似?  您是否考虑过评估最新的 F3 SDK v9.20 来确定结果是否相似?

    我已经测试了协调器最多可以连接 31 台路由器。我还测试了协调器最多只能连接 31 个终端设备节点。

    对于任何给定的 ZR 和 ZED 组合、它的最大值是否仅为 31、并且所有 ZR/ZED 都与 ZC 直接相邻/关联、或者例如 ZED 是否可以通过其他 ZR 连接?

    Zigbee R&D 建议在此 SDK 的预构建库的 zb_config_common.h 中将 ZB_DEFAULT_MAX_CHILDS 硬编码为 32U。  他们建议 在 ZB_init () 之后和 zboss_start_no_autostart () 之前在 ZC 应用程序中调用 ZB_set_max_children(MAX_children) 来解决这个问题。  您能否实施此变通办法并就其有效性提供反馈?  您是否还可以在堆栈初始化后的运行时提供 gc_neighber_table_size 的调试打印?  这将提供进一步的证据。

    此致、
    Ryan

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

    我们对版本 V9.20(simplelink_lowpower_f3_SDK_9_20_00_81 进行了测试)、SYSCFG 中的“Network Maximum Children“参数配置为 100、SYSCFG 中的“Network Maximum End Device Capacity “参数配置为 50。

    构建一个由 50 台路由器组成的 Zigbee R23 网络、路由节点逐个连接到网络、当第 44 个路由器节点连接到网络时、无法加入网络。

    然后、我们关闭了之前连接的 43 个路由器节点、并仅专注于第 44 个路由器节点的网络连接过程。 我们在空中、获得了 Zigbee 帧的日志文件、并获得了协调器和第 44 个路由器节点的串行端口日志。



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

    我们通过接口“ZB_Nwk_get_total_capacity ()“获得了网络的总容量,它正好是由 SYSCFG 设置的值 100。

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

    e2e.ti.com/.../C.txte2e.ti.com/.../R.txt

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

    我看不到附加的 OTA 数据包日志、并且 C/NVRAM R.txt 文件仅包括 Module_Zigbee_ OSIF、它详细说明了。  是否可以  在选中所有级别(调试,详细,信息,警告和错误)的情况下启用 Module_Zigbee_Low_Level_ Log.MAC 和 Module_Zigbee_App?  将 gc_neighber_table_size 与总 Nwk 容量一起使用会很有帮助。  ZR 是否允许通过其他 ZR 加入 Zigbee 网络并形成网状网络、或者是否都尝试直接连接到 ZC?  哪些 ZR 器件、TI EVM 或第三方模块?  我假设此测试在 NVS 区域大小为 0x4000 的情况下运行、如果将其增加到 0x6000 或 0x8000、行为是否会发生变化?  能否在调试会话的内存窗口中验证 NVS 内存是否已填充?  之前您仅报告了 31 个设备正在加入;您知道发生了什么变化吗?

    此致、
    Ryan