照明
此照明示例展示了如何使用 Matter 应用层构建照明设备以及如何进行单灯控制。内容包括环境设置、LED 硬件接线、配置修改以及编译和下载。此外,该示例还提供了使用 CHIP Tool 进行测试和设备配网的步骤。用户可以将此示例作为创建自己应用程序的参考。
环境需求
该示例支持以下开发套件:
硬件平台 |
板卡名称 |
---|---|
RTL8777G HDK |
RTL8777G EVB |
准备 Matter 环境
要设置 Matter 环境,请按照 开发环境设置 中列出的步骤操作。
准备 CHIP Tool
CHIP Tool(chip-tool)是 Matter 的控制器实现,允许将 Matter 设备加入网络并使用 Matter 消息与其通信,这些消息可能包含数据模型的相关操作,例如群集命令。该工具还提供其他特定于 Matter 的实用程序,如解析设置负载或执行发现操作。
要构建 CHIP Tool,请按照 CHIP Tool 步骤操作。
硬件连线
连接红框中三个 LED 的引脚。
LED1:显示 On/Off 状态。
LED2:显示识别状态。
LED3:显示系统状态。在出厂重置期间,LED 每隔 500ms 闪烁一次。出厂重置结束后,灯会以亮 50ms、灭 950ms 的状态闪烁。如果有 Bluetooth LE 连接,LED 每隔 100ms 闪烁一次。

硬件接线
配置选项
示例样本配置
我们的示例样本都有默认配置。
如果要修改示例配置,
可以更改 matter/connectedhomeip/examples/<app_name>/realtek_bee/main/include
路径下的 CHIPProjectConfig.h
,其中 app_name 指的是应用程序的名称,例如 lighting-app。
有关配置项的更多信息,请参见 APP配置。
工厂数据配置
对于 EVB 板,工厂数据默认是禁用的。要使用工厂数据,请参阅 工厂数据 中的 启用工厂数据支持 和 工厂数据生成 部分。
编译和下载
编译
导航到指定目录并编译 lighting 应用程序。
$ cd ./subsys/matter/samples
$ rm -r build/
$ ./build.py rtl8777g lighting
下载
编译成功后,应用程序 bin 文件 matter-cli-ftd_bank0_MP_dev_*.bin
将生成在 build/bank0/bin
目录中。
要将应用程序 bin 文件下载到 EVB 板,按照 快速入门 中 固件下载 中列出的步骤操作。如果工厂数据已启用,请参阅 工厂数据 中的 烧录工厂数据。
然后按下 EVB 板上的重置按钮,它将开始运行。
其他需要烧录的文件如下表所示。
文件类型 |
文件 |
文件路径 |
---|---|---|
System ConfigFile |
configFile_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware\trustzone_disable |
Bank0 Boot PatchImage |
BANK0_boot_patch_MP_release_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware |
Bank0 OTA HeaderFile |
OTAHeader_Bank0_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware\trustzone_disable |
Bank0 SystemPatch Image |
sys_patch_MP_release_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware |
Bank0 Bluetooth StackPatch Image |
bt_stack_patch_MP_master_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware |
Bank0 Bluetooth HostImage |
bt_host_MP_xxx.bin |
\subsys\openthread\vendor\bee4\rtl8777g\firmware |
测试验证
将示例编程到 EVB 板后,完成下面的步骤。
准备阶段
使用 USB 线将套件连接到计算机。
使用串口调试工具(例如,Tera Term)打开与套件的串口连接。
如果在编程过程中未擦除 flash,请按住 SW2 并保持 6.5s 以上,直到进行出厂重置。
按下 RST 以开启蓝牙广播。
将设备加入到 Matter 网络。请参考 设备配网。在配网过程中,记下灯泡节点 ID 的值以备后用(<light_bulb_node_ID>)。
测试阶段
在准备工作完成后,可以使用 CHIP Tool 测试单灯控制。
运行以下命令:
在 toggle 命令之前检查灯的 on-off 属性值。
$ ./chip-tool onoff read on-off <light_bulb_node_ID> <endpoint_id>
<light_bulb_node_ID>
:从上一步中获得<endpoint_id>
:带有 OnOff 集群的端点 ID
例如:
$ ./chip-tool onoff read on-off 2 1
日志中将出现以下消息:
CHIP:TOO: OnOff: False
切换 on-off 属性状态。
$ ./chip-tool onoff toggle <light_bulb_node_ID> <endpoint_id>
例如:
$ ./chip-tool onoff toggle 2 1
在 toggle 命令后检查 on-off 属性值是否已更改。
$ ./chip-tool onoff read on-off <light_bulb_node_ID> <endpoint_id>
例如:
$ ./chip-tool onoff read on-off 2 1
日志中将出现以下消息:
CHIP:TOO: OnOff: True