0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

esp-matter环境下的应用实践

冬至子 来源:kurisaW 作者:kurisaW 2023-08-07 17:53 次阅读

前提准备
请确保你本地已经配置好 esp-idf 及esp-matter环境,可参考此博客【Matter】esp-matter开发环境搭建

设置环境变量
1.ESP-IDF
根据官网提示,我们需要设置linux平台下的标准工具链,安装以下软件包:

sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
使用 ESP-IDF 需要 CMake 3.5 或以上版本。较早的 Linux 发行版可能需要升级自身的软件源仓库,或开启 backports 套件库,或安装 “cmake3” 软件包(不是安装 “cmake”)。

cd ./esp/esp-idf
source export.sh

1.jpg

2.ESP-Matter
Linux
macOS
由于我们使用的是Linux环境,所以此处仅作Linux下的说明,macOS可详见此处

在基于 Debian 的 Linux 发行版(例如 Ubuntu)上,可以使用以下命令满足这些依赖项:

sudo apt-get install git gcc g++ pkg-config libssl-dev libdbus-1-dev
libglib2.0-dev libavahi-client-dev ninja-build python3-venv python3-dev
python3-pip unzip libgirepository1.0-dev libcairo2-dev libreadline-dev
准备编译matter所需环境。注:如切换了其他分支需要重新运行

cd ./esp/esp-matter/connectedhomeip/connectedhomeip
source scripts/bootstrap.sh

1.jpg

激活编译matter环境

cd ./esp/esp-matter/connectedhomeip/connectedhomeip
source scripts/activate.sh

1.jpg

Matter Example编译下载
1.激活esp-matter环境
cd esp-idf
. ./export.sh
cd esp-matter
. ./export.sh
2.选择esp设备
cd esp-matter/examples/light
idf.py set-target esp32c3
初次执行这个命令发生了如下报错:

...
AttributeError: 'HTTPResponse' object has no attribute 'strict'
...
在GitHub上参考此issue,并执行以下命令:

pip install -U "urllib3<2"
同时重新执行esp-matter安装脚本:

由于需要重新运行安装脚本命令,此处直接执行的话会报错,参考此issue

rm -rf esp-matter/connectedhomeip/connectedhomeip/.environment
cd esp-matter
./install.sh
pip install -U "urllib3<2"
然后回到示例工程下继续执行esp设备选择

cd esp-matter/examples/light
idf.py set-target esp32c3

此时发生了新的错误:

1.jpg

由于示例工程下的build以前遗留的构建文件,而系统在执行程序时并不会覆盖或主动删除旧的构建文件,因此需要用户手动删除,因此正确的操作就是:

sudo rm -r esp-matter/examples/light/build
idf.py set-target esp32c3

最后成功解决问题:

1.jpg

3.编译工程

idf.py build

1.jpg

4.SDK烧写
第一次烧写 SDK 时,需要擦除整个 flash 再执行烧录命令

idf.py erase_flash

1.jpg

烧录程序并打开串口监视

idf.py flash monitor

可以看到烧录进度:

1.jpg

包括串口监视器的提示信息,同时执行以下命令可退出串口监视:

CTRL + ]

1.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux系统
    +关注

    关注

    4

    文章

    590

    浏览量

    27330
  • 烧录器
    +关注

    关注

    3

    文章

    177

    浏览量

    26216
  • Flash存储
    +关注

    关注

    0

    文章

    38

    浏览量

    8277
  • ESP32
    +关注

    关注

    17

    文章

    953

    浏览量

    17032
收藏 人收藏

    评论

    相关推荐

    matter./install.sh安装过程中出错的原因有哪些?

    raceback (most recent call last): File "/root/esp-matter/connectedhomeip/connectedhomeip
    发表于 06-05 08:11

    esp-matter在安装时一直卡在Setting up CIPD package manager.的原因?

    在按照文檔上操作 git clone --depth 1 https://github.com/espressif/esp-matter.git cd esp-matter git
    发表于 06-05 08:15

    使用esp32c3开发matter时,开发好的产品还需要走matter官方认证流程获得认证吗?

    使用esp32c3开发matter时,(SDK使用esp-matter),使用这个芯片开发matter的话,开发好的产品还需要走matter
    发表于 06-11 07:46

    esp-matter执行install.sh失败的原因?

    manager...Traceback (most recent call last): File \"/home/rck/esp2/esp-matter/connectedhomeip
    发表于 06-11 08:39

    esp-matter使用idf.py编译light sample报错怎么解决?

    在搭建好esp-matter后,编译light sample的时候报错 rck@ubuntu:~/ESP/esp-matter/examples/light$ idf.py build /home
    发表于 06-11 07:04

    esp-matter light示例配对过程中出错的原因?

    pointer is outside heap areas\")。示例light没有进行改动。 1.请问是IDF的版本不对吗? 2.我想要实验esp-matter中的示例,那个版本的IDF能正常进行调试
    发表于 06-11 07:19

    esp-Matter执行install.sh失败的原因?

    manager...Traceback (most recent call last): File \"/home/edu118/work/matter/esp-matter/esp-matter
    发表于 06-12 07:18

    ESP32-C3支持matter协议吗?

    ESP32-C3是否支持matter协议了? 可以通过softap方式配网吗?
    发表于 06-13 07:34

    MacOS按照文档的步骤进行环境的配置, esp-matter执行./install.sh的时候报错怎么解决?

    MacOS 按照文档的步骤进行环境的配置, esp-matter执行./install.sh的时候报错: Downloading and installing packages into local
    发表于 07-19 07:41

    基于matter协议开发,搭建环境时报错要如何解决?

    你们好 我想问一 我想基于matter协议开发ESP-32参考:https://docs.espressif.com/projects/esp ... oping.html按照上面的
    发表于 02-10 08:34

    ESP-Matter示例项目无法在组件找到库的原因?

    我克隆了 ESP-Matter 的照明应用示例https://github.com/project-chip/connect ... -app/esp32。然后我在组件添加了几个库并确保
    发表于 04-13 08:40

    esp-matter如何为按钮配置GPIO?

    我只是在尝试 esp-matter 的按钮示例。我想检查连接了哪个 PIN,但不幸的是我无法从源代码中弄清楚。下面提到的 app_driver_switch_init() 函数应该初始化按钮,将通过
    发表于 04-13 07:53

    ESP-Matter烧录体验例程

    ESP-MatterESP32系列SoC的官方Matter开发框架。它建立在开源的Matter SDK之上,提供了简化的API、常用的外围设备、用于安全、制造和生产的工具和实用程序,
    的头像 发表于 07-07 10:39 637次阅读
    <b class='flag-5'>ESP-Matter</b>烧录体验例程

    经验分享 | ESP-Matter 烧录体验

    ESP-MatterESP32系列SoC的官方Matter开发框架。它建立在开源的MatterSDK之上,提供了简化的API、常用的外围设备、用于安全、制造和生产的工具和实用程序,并附有详尽的文档
    的头像 发表于 07-07 10:04 973次阅读
    经验分享 | <b class='flag-5'>ESP-Matter</b> 烧录体验

    esp-matter开发环境搭建步骤

    由于后面的 esp-matter 测试的时候需要使用到科学上网环境,所以我们需要提前确保 linux 环境能够使用科学上网。
    的头像 发表于 09-18 17:30 1332次阅读