EFR32MG24
此示例用作灯泡设备类型(具有开启/关闭功能)。 这些步骤已在 SiLabs EFR32MG24 开发板上进行了验证。
此示例使用测试供应商 ID (VID) 和产品 ID (PID) 0x8005
。
初始设置
- 按照
connectedhomeip
代码库中指定的方式安装依赖项: - 安装简单命令命令,并确保其二进制文件(命令工具)位于您的
PATH
中。例如:
。export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- 在计算机上安装 JLink(刷写映像需要),如 EFR32 照明示例中的查看日志记录输出中所述。
- 克隆并初始化
connectedhomeip
代码库:cd ~
git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git fetch origin v1.0-branch
git checkout FETCH_HEAD
git submodule update --init --recursive
source ./scripts/activate.sh
- 导出环境变量:
- 如果您的开发板是 10 dBm 版本,请使用
BRD4186C
:export EFR32_BOARD=BRD4186C
- 如果您的开发板是 20 dBm 版本,请使用
BRD4187C
:export EFR32_BOARD=BRD4187C
- 如果您的开发板是 10 dBm 版本,请使用
构建映像并刷写开发板
- 为照明应用构建映像:
系统将在cd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
文件夹中生成该映像。 - 将 EFR32 开发板与计算机连接,并将映像刷写到 EFR32 开发板:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
安装引导加载程序
- 打开 Simplicity Commander:
commander
- 打开左上角的“Select Kit...”下拉菜单,然后选择要使用引导加载程序刷写的套件。此菜单中填充了检测到的所有 JLink 设备,并按序列号列出它们。为了便于选择,请拔掉所有支持 JLink 的设备(要刷写的设备除外),使列表中仅填充一个套件。
- 在左侧选择 Flash 图块。
- 在 Flash MCU 部分中,点击浏览。
转到
connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries
,然后找到与您设置的EFR32_BOARD
环境变量匹配的.s37
文件:- 如果您的开发板是 10 dBm 版本,并且您使用的是
BRD4186C
,请选择bootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
。 - 如果您的开发板是 20 dBm 版本,并且您使用的是
BRD4187C
,请选择bootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37
。
点击打开以选择文件。
- 如果您的开发板是 10 dBm 版本,并且您使用的是
点击 Flash。
请注意,在刷写引导加载程序后,应用的后续刷写操作应省略 --erase
标志,否则必须重新刷写引导加载程序。--erase
标志会清空主板的所有闪光灯,包括引导加载程序。
验证示例
- 查看您的白板日志。打开两个终端窗口。
- 在第一个窗口中:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- 在第二个窗口中:
在第二个窗口中输出日志。JLinkRTTClient
- 在第一个窗口中:
- 设备应在计算机上以 USB 串行设备的形式显示。您可能会在
/dev/
中找到它:
您可以使用 minicom 或屏幕打开串行控制台。例如,如果设备位于ls -la /dev/tty*
/dev/ttyACM0
:
您可以使用串行控制台输入 OpenThread 命令(例如screen /dev/ttyACM0 115200
state
)。 - 如果 EFR32 开发板之前已配对,我们建议您将其恢复出厂设置:
- 长按按钮 PB0 超过 10 秒。
- LED 指示灯将闪烁 3 次。持续按住该按钮,直到您看到小显示屏上的二维码刷新。
EFR32MG12
此示例用作灯泡设备类型(具有开启/关闭功能)。 这些步骤已在 SiLabs EFR32MG12 (Mighty Gecko) 开发板上进行了验证。
此示例使用测试供应商 ID (VID) 和产品 ID (PID) 0x8005
。
初始设置
- 按照
connectedhomeip
代码库中指定的方式安装依赖项: - 安装简单命令命令,并确保其二进制文件(命令工具)位于您的
PATH
中。例如:
。export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- 在计算机上安装 JLink(刷写映像需要),如 EFR32 照明示例中的查看日志记录输出中所述。
- 克隆并初始化
connectedhomeip
代码库:cd ~
git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git fetch origin v1.0-branch
git checkout FETCH_HEAD
git submodule update --init --recursive
source ./scripts/activate.sh
- 导出环境变量:
export EFR32_BOARD=BRD4161A
构建映像并刷写开发板
- 为照明应用构建映像:
系统将在cd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
文件夹中生成该映像。 - 将 EFR32 开发板与计算机连接,并将映像刷写到 EFR32 开发板:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
验证示例
- 查看您的白板日志。打开两个终端窗口。
- 在第一个窗口中:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- 在第二个窗口中:
在第二个窗口中输出日志。JLinkRTTClient
- 在第一个窗口中:
- 设备应在计算机上以 USB 串行设备的形式显示。您可能会在
/dev/
中找到它:
您可以使用 minicom 或屏幕打开串行控制台。例如,如果设备位于ls -la /dev/tty*
/dev/ttyACM0
:
您可以使用串行控制台输入 OpenThread 命令(例如screen /dev/ttyACM0 115200
state
)。 - 如果 EFR32 开发板之前已配对,我们建议您将其恢复出厂设置:
- 长按按钮 PB0 超过 10 秒。
- LED 指示灯将闪烁 3 次。持续按住该按钮,直到您看到小显示屏上的二维码刷新。
后续步骤
成功构建 Matter 示例后,创建开发者项目。