使用 Matter-SDK 快速搭建 Matter 环境 (Linux)

这篇具有很好参考价值的文章主要介绍了使用 Matter-SDK 快速搭建 Matter 环境 (Linux)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Matter 作为一个统一的智能家居互联协议,凭借其高兼容性的特点,正逐渐打破各个智能家居之间的壁垒。乐鑫作为在 Matter 项目发布之初的早期成员,提供了一套开源、完整、易用的 Matter-SDK。

乐鑫的 Matter-SDK 是建立在开源 Matter-SDK 之上的,它提供了简化的 API、常用的外设、安全、制造和生产工具以及详尽的文档支持。该 SDK 包括丰富的生产参考资料,旨在简化 Matter 产品的开发过程,使用户能够在最短的时间内投入生产。

使用 Matter-SDK 快速搭建 Matter 环境 (Linux),乐鑫科技,Matter,环境搭建,乐鑫教程,Matter-SDK,ESP-IDF

您可以通过点击以下链接,进一步了解 Matter:

  • ESP-Matter 编程指南
  • ESP-Matter 示例代码
  • Connectedhomeip Github 项目
  • 乐鑫 Matter 系列文章

您可以观看下面的教程视频,也可以阅读本篇的图文教程。本文将详细介绍在 Linux 环境下,如何使用 Matter-SDK 完成 Matter 环境搭建。

【乐鑫教程】|使用 Matter-SDK 快速搭建 Matter 环境 (Linux)


搭建步骤:

1. 系统及设备环境

  • 操作系统:Ubuntu 22.04.3 LTS
  • 主机配置:具有蓝牙适配器
  • 网络:能流畅访问 Github 的网络环境
  • 测试芯片:ESP32-C3-MINI-1
  • 测试开发板:ESP32-C3-DevKitM-1 v1.0
使用 Matter-SDK 快速搭建 Matter 环境 (Linux),乐鑫科技,Matter,环境搭建,乐鑫教程,Matter-SDK,ESP-IDF
ESP32-C3-DevKitM-1 v1.0

注:Ubuntu 版本应为 20.04 和 22.04,并且为主机开发。若使用虚拟机,在用 CHIP Tool 工具进行配网调试时会出现查找蓝牙设备失败或者无法进行调试的情况。

2. 安装准备

2.1 Matter 安装准备

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

安装过程具体请参考官方 Github 项目。

注:Windows 系统推荐使用 WSL 进行开发,详见官方 WSL 配置方法。

2.2 搭建 ESP-IDF 开发环境

Matter 的开发环境依赖于 ESP-IDF 开发环境,如果当前没有搭建 ESP-IDF 环境,请参考官方文档进行搭建,或者使用下面的指令进行快速搭建。

(1)安装 ESP-IDF 需要以下安装准备:

sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0

(2)获取仓库,进行安装:

git clone --recursive https://github.com/espressif/esp-idf.git
cd esp-idf; git checkout v5.1.1; git submodule update --init --recursive;
./install.sh
cd ..

3. 获取并安装 Matter

使用以下指令获取仓库,进行安装:

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

git clone --depth 1 https://github.com/espressif/esp-matter.git
cd esp-matter
git submodule update --init --depth 1
cd ./connectedhomeip/connectedhomeip
./scripts/checkout_submodules.py --platform esp32 linux --shallow
cd ../..
./install.sh
cd ..

4. 配置环境

当每一个新终端开启时,使用以下命令来配置 Matter 的开发环境:

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

您可以选择开启 Ccache 以提升编译速度:

export IDF_CCACHE_ENABLE=1

5. 编译 ESP-Matter 示例

进入 ESP-Matter Light 示例目录:

cd esp-matter/examples/light

开始编译示例,首先设置编译目标芯片平台(以 ESP32-C3 为例):

idf.py set-target esp32c3

在正式进行烧录之前,推荐先擦除整片 Flash,烧录并监控:

idf.py erase_flash

idf.py flash monitor

至此,如果编译没有报错,程序成功烧录进 ESP32-C3,并在终端界面显示正常的状态,则代表 Matter 环境已被成功搭建。

6. 对 Matter 设备进行配网与基本控制

首先,使用在交互模式下的 CHIP Tool 进行配网。先为配网开启一个新的终端,配置 Matter 的开发环境,并运行:

cd esp-idf; source ./export.sh; cd ..
cd esp-matter; source ./export.sh; cd ..
export IDF_CCACHE_ENABLE=1
chip-tool interactive start

对设备进行配网具有多种途径,这里我们使用 BLE Wi-Fi 的方式进行配网,复制如下指令:

pairing ble-wifi 0x7283 <ssid> <passphrase> 20202021 3840

在上述指令中,0x7283 是随机选取的节点 ID,20202021 是配对码,3840 是鉴别码,粘贴命令到终端,确保电脑与所填 Wi-Fi 在同一网络环境内,在 SSID 填入 Wi-Fi 名称,passphrase 填入密码。填写完成后的示例如下:

pairing ble-wifi 0x7283 Espressif password 20202021 3840

开始运行,等待一段时间,当监控设备的终端中出现以下日志时,即代表配网成功:

I (347065) app_main: Commissioning complete 

I (347065) esp_matter_core: Commissioning Complete

在配网完成后,我们尝试使用一个命令来对 ESP32-C3 开发板上的 RGB 灯进行控制,复制以下开关翻转的命令到 CHIP Tool 终端中运行:

onoff toggle 0x7283 0x1

在监控设备的终端中我们可以看到 Received command 相关日志:

I (122717) esp_matter_command: Received command 0x00000002 for endpoint 0x0001's cluster 0x00000006 

I (122717) esp_matter_attribute: ********** R : Endpoint 0x0001's Cluster 0x00000006's Attribute 0x00000000 is 1 ********** 

I (122727) chip[ZCL]: Toggle ep1 on/off from state 1 to 0

即代表收到了指令的请求,同时,我们也可以看到开发板上的 RGB 灯关闭了,再次运行,RGB 灯被点亮。

7. 常见问题及其解决方法

(1)idf.py erase_flash 时出现:

/dev/ttyUSB0 failed to connect: Could not open /dev/ttyUSB0, the port doesn't exist
Serial port /dev/ttyS0
/dev/ttyS0 failed to connect: Could not open /dev/ttyS0, the port doesn't exist
No serial ports found. Connect a device, or use '-p PORT' option to set a specific port.

解决方法:需要确保该用户对 USB 口拥有正确的读写权限。

sudo adduser <username> dialout sudo chmod a+rw /dev/ttyACM0

(2)git clone 时出错或速度过慢:

dial tcp 108.160.167.174:443: connect: connection refused

解决方法:需要确保用户拥有一个能流畅访问 Github 的网络。

(3)编译 Light 示例时报错,显示:

ERROR: This script was called from a virtual environment, can not create a virtual environment again

解决方法:使用如下指令进行编译。

pip install -r $IDF_PATH/requirements.txt

(4)在配网过程中并未出现如下提示:

I (347065) app_main: Commissioning complete 

I (347065) esp_matter_core: Commissioning Complete

解决方法:尝试重复进行配网操作。

(5)运行 idf.py 相关指令时显示:

idf.py: command not found

原因:开启新终端时未配置 Matter 环境。

解决方法:使用如下指令配置 Matter 环境。

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

cd esp-matter; source ./export.sh; cd ..

(6)Matter 安装过程中出现:

/home/User/esp/esp-matter/connectedhomeip/connectedhomeip/.environment/activate.sh:190: command not found: pw Error during bootstrap--see messages above.

解决方法:

git clean -Xdf
rm -rf connectedhomeip/connectedhomeop/.environmemt
source ./scripts/bootstrap.sh

(7)Matter 安装过程中出现:

raise CalledProcessError(retcode, cmd) 

subprocess.CalledProcessError: Command '['/home/share/samba/app/esp-matter/connectedhomeip/connectedhomeip/.environment/pigweed-venv/bin/python', '-m', 'pip', 'install', '--log', '/home/share/samba/app/esp-matter/connectedhomeip/connectedhomeip/.environment/pigweed-venv/pip-requirements.log', '--requirement=/home/share/samba/app/esp-matter/connectedhomeip/connectedhomeip/scripts/setup/requirements.txt', '--constraint=/home/share/samba/app/esp-matter/connectedhomeip/connectedhomeip/scripts/setup/constraints.txt']' returned non-zero exit status 1.

原因:python 3.10 版本中 pip 安装器的 bug 对 Matter 在 python 环境设置过程中的 pip 安装步骤产生了影响。

解决办法:将 python 3.10 切换至更低的版本,例如 3.8,再对 ESP-IDF 和 ESP-Matter 进行安装。


以上就是通过 Matter-SDK 完成 ESP-Matter 的环境搭建及测试的全过程。如果您有任何问题,可以进入乐鑫官网查看相关技术文档获取帮助,欢迎在评论区留言讨论,或随时联系我们。文章来源地址https://www.toymoban.com/news/detail-717752.html

到了这里,关于使用 Matter-SDK 快速搭建 Matter 环境 (Linux)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 使用docker快速搭建hive环境

    使用docker快速搭建hive环境

    写在前面 想练练Hive SQL,但是没有hive shell环境。现在只有一台空的CentOS 7机子,一想要弄jdk、hadoop、mysql、hive就头疼。 于是在网上找了找,发现用docker部署hive会快很多,在此记录一下部署过程。 以下过程每一步在文末都附有参考文档,出错的朋友可以去看对应的参考文档。

    2024年01月22日
    浏览(13)
  • 【环境搭建】使用IDEA创建快速搭建SpringBoot项目详细步骤

    【环境搭建】使用IDEA创建快速搭建SpringBoot项目详细步骤

    环境准备: 开发工具IDE:IntelliJ IDEA 2022.2.4 (Ultimate Edition) 开发环境JDK:Oracle OpenJDK Version 1.8.0_162 构建工具MAVEN: Maven 3.6.3 (1)创建spring initializr工程 通过IntelliJ IDEA工具创建工程时,通过file-new-project后,在弹出的界面中选择spring initializr选项(社区版无此选项)。然后去勾选相关

    2024年02月03日
    浏览(12)
  • fabric 环境快速搭建--Ubuntu20.04系统下使用fabric官方脚本搭建

    fabric 环境快速搭建--Ubuntu20.04系统下使用fabric官方脚本搭建

    由于是初识hyper ledger fabric在安装的时候遇到了很多的问题,最后在师兄的帮助下终于删了从头到尾安装了一遍,因此想记录一下,并且给和我遇到相同问题的小伙伴提供一些帮助。如果你是萌新,找我就对啦! 直接去官方下载即可 其他帖子上面有很多详细步骤,这里不多赘

    2024年02月14日
    浏览(18)
  • Android SDK环境搭建

    Android SDK环境搭建

        SDK:(software development kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。          因此,Android SDK 指的是Android专属的软件开发工具包。     很多时候我们做跟android app相关的测试工作,

    2024年01月25日
    浏览(11)
  • Storm学习之使用官方Docker镜像快速搭建Storm运行环境

    Storm学习之使用官方Docker镜像快速搭建Storm运行环境

    Apache Storm 官方也出了Docker 镜像 https://hub.docker.com/_/storm/ 本文我们就基于官方镜像搭建一个 Apache Storm 2.4 版本的运行环境,供大家后续学习。 有问题可以参考issue 解决, 我的安装过程一路都很顺畅。所以基本上没有看下面是我的详细操作和截图 。 可以说网上的乱七八糟的教

    2024年02月14日
    浏览(21)
  • 使用Docker快速搭建并优化Redmine环境:日志管理与健康检查指南

    Redmine是一种开源的项目管理和问题跟踪工具,它以Web应用程序的形式提供。Redmine的主要功能包括项目管理、问题跟踪、版本控制集成、Wiki和论坛等。它是用Ruby on Rails开发的,支持多语言和多数据库。Redmine的灵活性和可扩展性使其成为许多组织和团队用于协作和项目管理的

    2024年04月28日
    浏览(12)
  • 使用一键安装工具快速搭建 ESP-IDF 开发环境 (Windows)

    使用一键安装工具快速搭建 ESP-IDF 开发环境 (Windows)

    我们收到用户对 ESP-IDF SDK 软件开发环境感到搭建难、门槛高的反馈。为解决用户在此方面的问题。为此,我们推出本期教程介绍在 Windows 操作系统下使用一键安装工具快速搭建 ESP-IDF 开发环境。 您可以观看下面的教程视频,也可以阅读接下来本篇的图文教程。 【乐鑫教程】

    2024年02月09日
    浏览(16)
  • 全平台通用使用 kind 快速搭建 k8s 开发环境,坑已踩(无坑版)

    全平台通用使用 kind 快速搭建 k8s 开发环境,坑已踩(无坑版)

    博客原文 Kind (Kubernetes in Docker) 是一个 Kubernetes 孵化项目, Kind 是一套开箱即用的 Kubernetes 环境搭建方案。顾名思义,就是将 Kubernetes 所需要的所有组件,全部部署在一个 Docker 容器中,可以很方便的搭建 Kubernetes 集群。 Kind 已经广泛的应用于 Kubernetes 上游及相关项目的

    2024年01月25日
    浏览(33)
  • PicoNeo3开发坑点记录(一)☀️PreviewTool工具使用及开发环境快速搭建

    PicoNeo3开发坑点记录(一)☀️PreviewTool工具使用及开发环境快速搭建

    官方链接 你会得到一个.apk文件以及一个.7z压缩文件; 使用USB线将.apk文件复制到VR设备内,在VR设备中直接完成安装(与手机安装应用无异)。 这里提一下,官方文档是提示在设备端用AndroidDebugBridge(ADB)安装APK,不用管。 将.7z文件解压就行 这点很重要 在编辑器中打开Project

    2024年02月01日
    浏览(11)
  • [C# SDK/IDE]-VSCode 搭建 C# 开发环境

    [C# SDK/IDE]-VSCode 搭建 C# 开发环境

    活动地址:毕业季·进击的技术er 夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始,CSDN诚邀各毕业生/在校生/职场人讲述自己的毕业季故事,分享自己的经验,技术er的进击之路,等你来书写!我是从自身经历出发,分享自己的经验。 在技术学习过程中

    2023年04月08日
    浏览(19)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包