书解上回,我们使用到两块 i.MX 8M EVK 和一个 WiFi 路由器组件 Matter 网络,并且使用 NXP Zigbee DK6 开发套件中的开发板作为 Zigbee 子设备,如下图所示:
图 1 :Matter Bridge Demo 硬件图
那么现在,我们就来看看,其软件层的基本逻辑,又是做了哪些工作呢?
首先声明,在本范例中,我们将 Zigbee 设备简单地分为两类。
一类是控制设备,它接受协调器(Matter Bridge 设备)的命令并做出动作,这类设备通常是 Zigbee 路由器(Router)。
另外一类是传感器设备,这类设备通常是 Zigbee 终端设备(End Device),常常处于睡眠状态,有时会利用定时唤醒,间隔发送数据包到协调器。
① Matter Bridge 设备对 Zigbee 控制设备的命令解析及传递
在 Matter Bridge 网络中,已入网的 Zigbee 设备会被映射到 Matter 设备的动态端点中,这样 Matter 网络控制器对 Zigbee 设备的控制会发送到这些端点。
对于 Zigbee 控制类设备,桥接设备需要通过 Zigbee 协调器正确地将这些命令转发给它们。如下图中的 Level Control 和 OnOff Control 命令。
对于这类 Zigbee 控制设备,设计的软件框图如下:
图 2:针对 Zigbee 控制设备的 Bridge 软件设计框架
② Matter Bridge 设备对 Zigbee 传感器设备属性汇报的管理
对于 Zigbee 传感器类(End Device)设备,可以在设备入网时就进行绑定(bind)操作,这样 Zigbee 协调器就能定期收到属性数据汇报(attribute report)。
图 1 :Matter Bridge Demo 硬件图
那么现在,我们就来看看,其软件层的基本逻辑,又是做了哪些工作呢?
首先声明,在本范例中,我们将 Zigbee 设备简单地分为两类。
一类是控制设备,它接受协调器(Matter Bridge 设备)的命令并做出动作,这类设备通常是 Zigbee 路由器(Router)。
另外一类是传感器设备,这类设备通常是 Zigbee 终端设备(End Device),常常处于睡眠状态,有时会利用定时唤醒,间隔发送数据包到协调器。
① Matter Bridge 设备对 Zigbee 控制设备的命令解析及传递
在 Matter Bridge 网络中,已入网的 Zigbee 设备会被映射到 Matter 设备的动态端点中,这样 Matter 网络控制器对 Zigbee 设备的控制会发送到这些端点。
对于 Zigbee 控制类设备,桥接设备需要通过 Zigbee 协调器正确地将这些命令转发给它们。如下图中的 Level Control 和 OnOff Control 命令。
对于这类 Zigbee 控制设备,设计的软件框图如下:
图 2:针对 Zigbee 控制设备的 Bridge 软件设计框架
② Matter Bridge 设备对 Zigbee 传感器设备属性汇报的管理
对于 Zigbee 传感器类(End Device)设备,可以在设备入网时就进行绑定(bind)操作,这样 Zigbee 协调器就能定期收到属性数据汇报(attribute report)。
同时,Matter 控制设备也需要通过 subscribe 命令将其映射的端点和 Cluster 绑定到 Matter 控制设备。这样通过两次绑定,Zigbee 传感器的数据最终会被推送到 Matter 控制设备。
对于这类 Zigbee 传感器设备(End Device),设计的软件框图如下:
图 3:针对 Zigbee End Device 设备的 Bridge 软件设计框架
JN5189 是为极低功耗无线设备设计的高性能超低功耗微控制器,搭载了 802.15.4 PHY 和 MAC,以及 AES 128 硬件加解密模块,支持 Zigbee、Thread 以及 Matter 等多种协议。本文使用 Zigbee 协议,将其作为 Zigbee 协调器来实现桥接功能。
图 4 : NXP JN5189 Zigbee SoC 基本参数
参考文献:
NXP Zigbee JN5189:https://www.nxp.com/products/wireless/thread/jn5189-88-t-high-performance-and-ultra-low-power-mcus-for-zigbee-and-thread-with-built-in-nfc-option:JN5189_88_T
《 Matter Bridge技术分析 》—— iotthings