YP.Lam | 基于 Docker 的 EFR32MG21 Zigbee/Matter 固件打包

基于 Docker 的 EFR32MG21 Zigbee/Matter 固件打包

基于 Docker 环境实现 EFR32MG21 官方 Bootloader, Zigbee 协调器与 Matter 固件编译打包与烧录。

最后更新:2024-07-13

打包与烧录均可以基于 Docker 完成

docker run --rm -it \
  --user builder \
  -v /dev/bus/usb:/dev/bus/usb \
  -v $(pwd)/build:/build \
  --privileged \
  ghcr.io/darkxst/silabs-firmware-builder:4.4.2

进入 Docker 容器,基于模板生成项目源码,编译。

slc generate \
      --with="EFR32MG21A020F768IM32" \
      --project-file="/gecko_sdk/platform/bootloader/sample-apps/Series-2/bootloader-uart-xmodem/bootloader-uart-xmodem.slcp" \
      --export-destination=bootloader-uart-xmodem \
      --copy-proj-sources --new-project --force \
      --configuration=""
cd bootloader-uart-xmodem
# 修改引脚配置
make -f bootloader-uart-xmodem.Makefile release

cd ..

slc generate \
      --with="EFR32MG21A020F768IM32" \
      --project-file="/gecko_sdk/protocol/zigbee/app/ncp/sample-app/ncp-uart-hw/ncp-uart-hw.slcp" \
      --export-destination=ncp-uart-hw \
      --copy-proj-sources --new-project --force \
      --configuration=""      

cd ncp-uart-hw
# 修改引脚配置 sl_iostream_usart_vcom_config.h
make -f ncp-uart-hw.Makefile release

# 部分模块需要先解锁
commander device recover -d EFR32MG21A020F768