Skip to content

03 · BDB 组网机制

对应底座:第四部分·2.1 / 2.2

学习目标

  • 理解 BDB(设备基本行为)在 ZigBee 3.0 中的作用
  • 掌握 BDB 的三大组成:Commissioning、Security、Reset
  • 理解设备如何通过 Commissioning 完成入网

为什么需要 BDB

ZigBee 设备在相互发送数据之前,需要先组建网络。在 ZigBee 3.0 之前,不同厂商设备组网方式各异,难以互通。BDB(Base Device Behavior,设备基本行为)是 ZigBee 3.0 的新特性,为各个 ZigBee 设备提供了一套统一的机制,让它们能够正确地组建 ZigBee 网络。

mermaid
flowchart TB
    BDB["BDB 设备基本行为"]
    BDB --> M1["Commissioning Modes<br/>入网模式(组网核心)"]
    BDB --> M2["BDB Security<br/>网络安全规范"]
    BDB --> M3["Reset Methods<br/>复位方法"]
    style M1 fill:#0f6be3,color:#fff

BDB 三大组成

组成内容说明
Commissioning Modes入网模式定义设备组网的基本规范,ZigBee 组网的核心内容
BDB Security网络安全定义网络安全管理规范
Reset Methods复位方法提供多种设备复位方式

在协议栈代码的 BDB 文件夹中可以找到 BDB 相关实现,主要包括:

  • bdb.c / bdb.h:BDB 核心
  • bdb_FindingAndBinding.c:查找与绑定
  • bdb_Reporting.c:属性上报
  • bdb_touchlink.c / bdb_tlCommissioning.c:Touchlink 触控入网

Commissioning(入网)

BDB 中 Commissioning Modes 是 ZigBee 组网的核心内容,定义了设备如何入网的基本规范。ZigBee 3.0 的组网实验将基于此完成协调器建网、设备加入网络的过程。

工程裁剪提示

Z-Stack 3.0 协议栈包含丰富功能,但实际开发中部分功能可能是冗余的,甚至影响开发。例如针对 TI 评估板设计的 UI 文件(zcl_sampleapps_ui.c/h)在产品开发中通常需要裁剪,以保证工程精简。协议栈裁剪是开发者需要掌握的一项技术。

课后自测

  1. BDB 是什么?为什么说它是 ZigBee 3.0 组网的关键特性?
  2. BDB 包含哪三方面内容?哪个是组网核心?
  3. 为什么实际项目开发中需要对协议栈进行裁剪?

内容来源:紫甲 IoT《ZigBee 3.0 开发指南》第四部分·2.1/2.2,原站链接

Aiot Linker · 物联网专业课程群