本文将介绍Matter对网络桥接功能的支持,并探讨在Matter提供的例程基础上怎么样去使用i.MX 8M和JN5189实现Zigbee网络和Matter网络之间的桥接,从而将Zigbee设备连接到Matter网络。快来一探究竟吧!
Matter是新一代的物联网技术协议,与传统的Z-Wave或Zigbee网络协议相比,它在安全性、互操作性方面有很大的改进。特别是对多种物理层的支持,让Matter几乎能够运行在所有的网络产品中。
当然,传统的Z-Wave或Zigbee产品并不会很快退出市场,如何将这一些产品连接到Matter网络,以此来实现它们和Matter产品之间的互连互通,是目前急需解决的一个问题。我们大家可以通过Matter桥接设备(Bridge)实现Matter和传统网络之间的互连。
幸运的是,Matter开发组织已经提供了一些Matter桥接设备的例程。在这些例程中,Matter桥接设备作为一个Matter设备可以加入到Matter网络,而Z-Wave或Zigbee设备需要被映射到它的动态端点(dynamic endpoint)中。这样Matter网络的其它设备就能够最终靠Matter桥接设备的动态端点来跟Z-Wave或Zigbee设备通信,如下图所示。这些端点被称为“动态端点”的原因是Zigbee设备随时有可能离网,原先映射端点也就不再有效。
本文将以Zigbee网络为例,以i.MX 8M EVK和JN5189 DK6 EVK为硬件开发平台,介绍如何在例程基础上添加代码,来实现Zigbee网络的桥接功能。
JN5189是为极低功耗无线设备设计的高性能超低功耗微控制器,搭载了802.15.4 PHY和MAC,以及AES 128硬件加解密模块,支持Zigbee、Thread以及Matter等多种协议。本文使用Zigbee协议,将其作为Zigbee协调器来实现桥接功能。
本文的设计中,Matter桥接设备作为Zigbee网络的协调器,因此它需要管理Zigbee网络的组建和Zigbee设备的入网,离网,命令控制及绑定等操作。同时它要维护一个Zigbee设备的本地数据库。如图4中的ZCB模块。
为了便于本文的讨论,我们将Zigbee设备简单地分为两类。一类是控制设备,它接受协调器的命令并做出动作,这类设备通常是Zigbee 路由器(Router)。另外一类是传感器设备,这类设备通常是Zigbee 终端设备(End Device),常常处于睡眠状态,有时会利用唤醒的间隔发送数据包到协调器。
已入网的Zigbee设备会被映射到Matter设备的动态端点中,这样Matter网络控制器对Zigbee设备的控制会发送到这些端点。对于Zigbee控制类设备,桥接设备一定要通过Zigbee协调器正确地将这些命令转发给它们。
对于不带延时特性的命令,我们大家可以直接从例程提供的AttributeChangeCallback接口里获取。
对于Zigbee传感器类设备,可以在设备入网时就进行绑定(bind)操作,这样Zigbee协调器就能定期收到属性数据汇报(attribute report)。同时,Matter控制设备也一定要通过subscribe命令将其映射的端点和Cluster绑定到Matter控制设备。这样通过两次绑定,Zigbee传感器的数据最终会被推送到Matter控制设备。
Matter桥接设备软件的设计基于例程中的Linux平台,它通过Wi-Fi路由器加入到运行Matter chip-tool的Matter控制设备,从而组建一个本地的Matter网络。
通过Matter桥接设备,实现了Matter控制器对Zigbee照明设备的控制,同时获取到由Zigbee传感器推送的实时温度数据。
*博客内容为网友个人发布,仅代表博主个人自己的观点,如有侵权请联系工作人员删除。