请注意!新的开发者预览版计划即将推出。点击此处申请,抢先试用新工具并提供反馈。

Silicon Labs

EFR32MG24

此示例用作灯泡设备类型(具有开启/关闭功能)。 这些步骤已在 SiLabs EFR32MG24 开发板上进行了验证。

此示例使用测试供应商 ID (VID) 和产品 ID (PID) 0x8005

初始设置

  1. 按照 connectedhomeip 代码库中指定的方式安装依赖项:
    1. 构建诉讼或调查
    2. 构建 EFR32 照明示例
  2. 安装简单命令命令,并确保其二进制文件(命令工具)位于您的 PATH 中。例如:
    export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
  3. 在计算机上安装 JLink(刷写映像需要),如 EFR32 照明示例中的查看日志记录输出中所述。
  4. 克隆并初始化 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
  5. 导出环境变量:
    1. 如果您的开发板是 10 dBm 版本,请使用 BRD4186C
      export EFR32_BOARD=BRD4186C
    2. 如果您的开发板是 20 dBm 版本,请使用 BRD4187C
      export EFR32_BOARD=BRD4187C

构建映像并刷写开发板

  1. 为照明应用构建映像:
    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 文件夹中生成该映像。
  2. 将 EFR32 开发板与计算机连接,并将映像刷写到 EFR32 开发板:
    python3 out/debug/chip-efr32-lighting-example.flash.py --erase

安装引导加载程序

  1. 打开 Simplicity Commander:
    commander
  2. 打开左上角的“Select Kit...”下拉菜单,然后选择要使用引导加载程序刷写的套件。此菜单中填充了检测到的所有 JLink 设备,并按序列号列出它们。为了便于选择,请拔掉所有支持 JLink 的设备(要刷写的设备除外),使列表中仅填充一个套件。
  3. 在左侧选择 Flash 图块。
  4. Flash MCU 部分中,点击浏览
  5. 转到 connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries,然后找到与您设置的 EFR32_BOARD 环境变量匹配的 .s37 文件:

    1. 如果您的开发板是 10 dBm 版本,并且您使用的是 BRD4186C,请选择 bootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
    2. 如果您的开发板是 20 dBm 版本,并且您使用的是 BRD4187C,请选择 bootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37

    点击打开以选择文件。

  6. 点击 Flash

请注意,在刷写引导加载程序后,应用的后续刷写操作应省略 --erase 标志,否则必须重新刷写引导加载程序--erase 标志会清空主板的所有闪光灯,包括引导加载程序。

验证示例

  1. 查看您的白板日志。打开两个终端窗口。
    1. 在第一个窗口中:
      JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
    2. 在第二个窗口中:
      JLinkRTTClient
      在第二个窗口中输出日志。
  2. 设备应在计算机上以 USB 串行设备的形式显示。您可能会在 /dev/ 中找到它:
    ls -la /dev/tty*
    您可以使用 minicom 或屏幕打开串行控制台。例如,如果设备位于 /dev/ttyACM0
    screen /dev/ttyACM0 115200
    您可以使用串行控制台输入 OpenThread 命令(例如 state)。
  3. 如果 EFR32 开发板之前已配对,我们建议您将其恢复出厂设置
    1. 长按按钮 PB0 超过 10 秒。
    2. LED 指示灯将闪烁 3 次。持续按住该按钮,直到您看到小显示屏上的二维码刷新。

EFR32MG12

此示例用作灯泡设备类型(具有开启/关闭功能)。 这些步骤已在 SiLabs EFR32MG12 (Mighty Gecko) 开发板上进行了验证。

此示例使用测试供应商 ID (VID) 和产品 ID (PID) 0x8005

初始设置

  1. 按照 connectedhomeip 代码库中指定的方式安装依赖项:
    1. 构建诉讼或调查
    2. 构建 EFR32 照明示例
  2. 安装简单命令命令,并确保其二进制文件(命令工具)位于您的 PATH 中。例如:
    export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
  3. 在计算机上安装 JLink(刷写映像需要),如 EFR32 照明示例中的查看日志记录输出中所述。
  4. 克隆并初始化 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
  5. 导出环境变量:
    export EFR32_BOARD=BRD4161A

构建映像并刷写开发板

  1. 为照明应用构建映像:
    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 文件夹中生成该映像。
  2. 将 EFR32 开发板与计算机连接,并将映像刷写到 EFR32 开发板:
    python3 out/debug/chip-efr32-lighting-example.flash.py --erase

验证示例

  1. 查看您的白板日志。打开两个终端窗口。
    1. 在第一个窗口中:
      JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
    2. 在第二个窗口中:
      JLinkRTTClient
      在第二个窗口中输出日志。
  2. 设备应在计算机上以 USB 串行设备的形式显示。您可能会在 /dev/ 中找到它:
    ls -la /dev/tty*
    您可以使用 minicom 或屏幕打开串行控制台。例如,如果设备位于 /dev/ttyACM0
    screen /dev/ttyACM0 115200
    您可以使用串行控制台输入 OpenThread 命令(例如 state)。
  3. 如果 EFR32 开发板之前已配对,我们建议您将其恢复出厂设置
    1. 长按按钮 PB0 超过 10 秒。
    2. LED 指示灯将闪烁 3 次。持续按住该按钮,直到您看到小显示屏上的二维码刷新。

后续步骤

成功构建 Matter 示例后,创建开发者项目