Lazy loaded image
【ESP-Matter环境】_搭建ESP-Matter环境,并使用esp32_-_h2_模拟Matter_Node(light)
字数 2672阅读时长 7 分钟
2025-12-2
2026-3-8

挑选开发板

先为项目挑选合适的设备。
写在最前面
先介绍一下模组与开发板的区别,以免出现混淆
模组:是将 ESP32 芯片(核心处理器)+ 必备外围电路(电源管理、射频天线、Flash/PSRAM 存储、滤波电路等)集成封装后的成品,相当于 ESP32 的 “核心组件”。 开发板:面向开发者的调试 / 学习工具,以 ESP32 模组(或直接用 ESP32 裸芯片)为核心,额外扩展了一系列便于开发、调试的外围电路和接口,目的是让开发者不用自己焊接外围电路,就能快速上手测试代码、验证功能。

适用模组介绍

经过对国内 ESP32 型号的全面分析,ESP32-C6 系列是目前最适合 Matter 协议开发的选择,兼具强大性能和良好性价比。若预算有限,ESP32-C3 系列是入门级优选;追求高性能则推荐ESP32-S3 系列

开发板选型

写在前面: 常见的一些后缀意义如下表格,也可参考技术文档
DevKitC:评估板
  • ESP32-C3-DevKitC-1
  • 核心芯片:ESP32‑C3
  • Wi‑Fi:2.4 GHz
  • 没有 802.15.4,不能跑 Thread
  • 只能做 Matter over Wi‑Fi
  • ESP32-C3-DevKitC-1 18.6元:https://detail.tmall.com/item.htm?abbucket=8&id=887690740161&mi_id=0000mqYNZo1BOh4C5xtqVlBf7ZAskHLJezOPPFzzdLuQ104&ns=1&priceTId=2100c89517646643330046805e08d1&skuId=5731694513036&spm=a21n57.1.hoverItem.1&utparam=%7B%22aplus_abtest%22%3A%22326e5ddfe509ba90322aa8f238659898%22%7D&xxc=taobaoSearch
  • ESP32-C6-DevKitC-1
    • 核心芯片:ESP32‑C6
    • Wi‑Fi 6 + 802.15.4
    • 可以做 Matter over Wi‑Fi 和 Matter over Thread
    • ESP32-C6-DevKitC-1 50元:https://item.taobao.com/item.htm?abbucket=8&id=906725865652&mi_id=0000x88gdCKR8yjGMJup6AGk4KkOewHT37018vVtOu47OWM&ns=1&priceTId=2100c82017646651000735307e0910&skuId=5932896806227&spm=a21n57.1.hoverItem.3&utparam=%7B%22aplus_abtest%22%3A%2267d6c165f9dfe22792af9a8331e82058%22%7D&xxc=taobaoSearch
后期验证完毕可以选用 模组(需要画板子) 或者Mini开发板。

将ESP32 模拟为 Matter 小灯

参考视频:
【手机APP通过matter协议控制ESP32开发板】 https://www.bilibili.com/video/BV1FM411r7kp/?share_source=copy_web&vd_source=6dd64b24a2e3d6b6b1641e4f3a6e874a
【【Matter 培训回放】| 乐鑫 ESP-Matter 与 ESP-IDF Matter 应用开发 SDK 讲解】 https://www.bilibili.com/video/BV1ii42117em/?share_source=copy_web&vd_source=6dd64b24a2e3d6b6b1641e4f3a6e874a
这个网页页面底部有个视频,有一个matter方案 ↓
参考文档:
参考章节:https://docs.espressif.com/projects/esp-matter/en/latest/esp32/developing.html#id2
每次进入时输入source ~/esp/esp-idf/export.sh 激活环境变量
我了解到,这些可能会帮助开发
  1. ESP‑ZeroCode ESPRainmatter是乐鑫(Espressif)推出的一个 “零代码 + Matter” 解决方案:你不用写一行 C 代码,就可以通过图形化配置,生成一份运行在 ESP32 系列芯片上的 Matter 智能家居设备固件,直接加入苹果 Home、Google Home、Alexa 等 Matter 生态。
可以拆成两部分来理解:
  1. ESP‑ZeroCode
      • 乐鑫的 无代码开发模式/平台
      • 通过网页或图形化界面配置硬件功能(灯、开关、传感器等)、网络参数、云接入等
      • 最终“一键生成”可烧录的固件,省去手写代码的过程
  1. ESPRainmatter
      • 基于 Matter 协议 的实现/方案
      • 让 ESP32 系列芯片可以作为 Matter 设备,与不同品牌、不同平台的智能家居系统互通
      • 底层依托乐鑫的 ESP‑IDF + Matter SDK
合在一起:
ESP‑ZeroCode ESPRainmatter =用“拖拽配置”的无代码方式,快速生成 支持 Matter 协议的 ESP32 设备固件。

能干什么?

用它,你可以在不写代码的前提下快速做出:其他常见 Matter 标准设备类型(视乐鑫平台当前提供的模板而定)
这些设备生成的固件烧到 ESP32 芯片上后,可以直接:
  • 作为 Matter 设备加到:
    • Apple Home(通过 HomePod / Apple TV 作为 Matter 控制器)
    • Google Home
    • Amazon Alexa(支持 Matter 的 Echo 设备)
  • 通过 Wi‑Fi 或 Thread(取决于芯片型号和配置)加入家庭网络

配置ESP-Matter开发环境

如果出现问题,可以查看下方的 解决办法, 也可以直接使用下方的补充的命令。
  1. 克隆出错可使用 加速(对应 git clone --depth 1 https://github.com/espressif/esp-matter.git
    1. 子模块 加速(对应git submodule update --init --depth 1
      1. checkout_submodules.py 执行卡死或报错解决办法
        1. 在执行 ./scripts/checkout_submodules.py 时,由于需要拉取数十个庞大子模块(如 pigweed 等),极易因为网络波动或 --shallow 浅克隆导致报错。
          • 情况A:报错 Direct fetching of that commit failed
            • 原因:你请求的 commit hash 已经不在远端仓库的浅克隆历史中。
              解决:必须去掉命令中的 --shallow 参数,改为全量拉取:
          • 情况B:卡死不动、网速为 0 或连接超时
            • 解决:让开发板(如香橙派/WSL)通过局域网走 Windows 电脑的代理软件(如 Clash)。
              1. 确保 Windows 电脑的代理软件开启了 “允许局域网” (Allow LAN),并记录端口(如 7897)。
              1. 临时关闭 Windows 的专用网络/公用网络防火墙。
              1. 在开发板终端设置局域网 HTTP 代理(假设宿主机 IP 为 192.168.137.1):
              判断进度提示:脚本运行看似卡死时,新开终端输入 top 查看是否有 git 或 git-index-pack 进程高占用 CPU。若有,说明正在解压,请耐心等待 10-20 分钟直到出现输入提示符,不要强行中断。
          • 情况C:报错 Unexpected checksum... (disk corruption?)
            • 原因:之前的网络中断或强行取消导致某个子模块的临时压缩包损坏。只要损坏文件在,就一定会无限报错。
              解决:像“排雷”一样,根据报错提示的路径,只删除损坏的那个缓存文件夹,然后重新拉取。
              例如报错中提示的是 openthread 模块(看报错路径倒数第二层名字):
      1. 如果在 ./install.sh 出现界面后,下载工具失败报错 Network is unreachable 编译前的初始化脚本 ./install.sh 需要访问 Google 服务器(CIPD)下载大量二进制工具。此步骤通常不走系统默认的 VPN 通道,必须手动为终端配置 HTTP 代理。
        1. 根据你使用的代理软件类型,选择以下两种方案之一:
          方案 A:使用现代代理工具(推荐,如 Clash / V2rayN 混合端口) 现代代理工具的局域网端口同时支持 HTTP 和 SOCKS5 协议,可直接在终端中引用。
          方案 B:使用纯 SOCKS5 代理工具(如传统 Shadowsocks) 如果你的 VPN 只提供 SOCKS5 端口(如 1080),由于终端工具对 SOCKS5 支持较弱,需使用 pproxy 转换为 HTTP 代理。 (保持当前终端不变,打开一个新的 WSL/终端 窗口运行以下命令)
          注意:保持这个新窗口开启,不要关闭。回到原来的终端窗口执行:
      • 验证并执行安装 配置好上述环境变量后,验证网络并执行安装:
        • 安装时,可以在代理软件上看到下载速度例如:
          notion image
          激活环境 环境安装正常后,输入激活命令,如果输出类似下图内容,即代表 Matter 环境配置大功告成:
          notion image

      配置ESP-Matter(每次打开新终端时都需要执行一次)

      1. 每次打开新终端时都需要执行一次激活环境。
      • 将 Windows 的串口分配给 WSL2
        • 默认情况下,WSL 无法直接访问 Windows 的 COM 口,需要借助 usbipd-win 工具。
          1. 在 Windows PowerShell(管理员)执行安装:
            1. 查看 USB 设备列表:
              找到 ESP32 的 USB 串口设备(通常是CP210xCH340等),记下BUSID
            2. 绑定设备:
              • 这里的6-3只是我的串口号,大家要根据自己实际的串口号进行修改
                注:解除绑定步骤为:分离+解除:usbipd detach --busid 6-3usbipd unbind --busid 6-3
              • 将设备挂载到 WSL:
                • 在 Ubuntu 下确认是否识别到串口:
                • 在vscode中加载好espidf插件之后, 在窗口下面的串口配置图标,如果能看到 /dev/ttyUSB0,说明成功。
                • 添加用户 lzj 访问串口 /dev/ttyUSB0 的权限。
              1. 查看串口所属的组ls -l /dev/ttyUSB0
                1. 将用户添加到该组
                  • 完全注销并重新登录系统(注意VsCode也要关掉然后重新code .打开)(或许会usb掉,记得重新绑定)

                  烧录light设备

                  1. 擦除Flash
                    1. 编译设备
                      1. 烧录Flash 并 监控设备
                         
                         
                        上一篇
                        【Rust环境】如何在Windows的WSL子系统优雅的开发Rust
                        下一篇
                        【MatterChipTool环境】在Ubuntu下搭建python-matter-server、Chip-tool、chip-lighting-app 并简单运用

                        评论
                        Loading...