project-chip/connectedhomeip
GitHub: project-chip/connectedhomeip
Matter(原名Project CHIP)是由连接标准联盟主导的开源智能家居互操作性协议SDK,旨在打破生态壁垒,让不同厂商的智能家居设备通过统一的IP协议实现互联互通。
Stars: 8611 | Forks: 2343
# 文档链接
- [](https://deepwiki.com/project-chip/connectedhomeip)
- [Matter SDK 文档页面](https://project-chip.github.io/connectedhomeip-doc/index.html)
- [Matter SDK 覆盖率报告](https://matter-build-automation.ue.r.appspot.com/)
# Matter
[](https://github.com/project-chip/connectedhomeip/actions/workflows/build.yaml)
**Builds**
[](https://github.com/project-chip/connectedhomeip/actions/workflows/android.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-ameba.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-asr.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-bouffalolab.yaml)
[](https://github.com/project-chip/connectedhomeip/blob/master/.github/workflows/darwin.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-cc13xx_26xx.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-cc32xx.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-efr32.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-esp32.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-infineon.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-linux-imx.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-nxp.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-linux-arm.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-linux-standalone.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-nrfconnect.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-qpg.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-stm32.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-telink.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/examples-tizen.yaml)
**Tests**
[](https://github.com/project-chip/connectedhomeip/actions/workflows/tests.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/unit_integration_test.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/cirque.yaml)
[](https://github.com/project-chip/connectedhomeip/actions/workflows/qemu.yaml)
**Tools**
[](https://github.com/project-chip/connectedhomeip/actions/workflows/zap_templates.yaml)
**Documentation**
[](https://github.com/project-chip/connectedhomeip/actions/workflows/docbuild.yaml)
# 关于
Matter(原名 Project CHIP)由连接标准联盟(Connectivity Standards Alliance)指导,旨在建立更多物体之间的连接,简化制造商的开发流程,并提升消费者的兼容性体验。
# 什么是 Matter?
Matter 是一个统一、开源的应用层连接标准,旨在使开发者和设备制造商能够连接并构建可靠、安全的生态系统,并提高智能家居设备之间的兼容性。它基于市场验证的技术构建,使用 Internet Protocol (IP),并与 Thread 和 Wi-Fi 网络传输兼容。Matter 由连接标准联盟(Alliance)内的一个工作组开发。该工作组开发并推广 Matter 标准的采用,这是一个免版税的连接标准,旨在提高智能家居产品之间的兼容性,并将安全性作为基本设计宗旨。促使主要行业参与者共同构建 Matter 的愿景是:智能连接应当简单、可靠且可互操作。
Matter 简化了制造商的开发,并提高了消费者的兼容性。
该标准的建立基于一个共同的信念,即智能家居设备应当是安全、可靠且无缝使用的。通过基于 Internet Protocol (IP),Matter 实现了智能家居设备、移动应用和云服务之间的通信,并为设备认证定义了一套特定的基于 IP 的网络技术。
Matter 规范详述了实现 Matter 应用和传输层栈所需的一切。它旨在作为一个完整的规范供实现者使用。
联盟于 2020 年 1 月 17 日正式开放 Matter 工作组,该规范现已[开放](https://csa-iot.org/developer-resource/specifications-download-request/)采纳。
访问 [buildwithmatter.com](https://buildwithmatter.com) 以了解更多信息,并阅读关于该项目的最新新闻和更新。
# 项目概述
## 开发目标
Matter 的开发考虑了以下目标和原则:
**统一:** Matter 是基于并建立在经过市场测试的现有技术之上的。
**互操作:** 在用户许可的前提下,该规范允许任何 Matter 认证设备之间进行通信。
**安全:** 该规范利用了现代安全实践和协议。
**用户控制:** 最终用户控制与设备交互的授权。
**联邦式:** 没有任何单一实体充当信任根的瓶颈或单点故障。
**健壮:** 协议集规定了设备的完整生命周期——从无缝的开箱即用体验,到操作协议,再到在发生变化时正常运行所需的设备和系统管理规范。
**低开销:** 协议可在低计算资源设备(如 MCU)上实际实现。
**普及:** 通过利用 IP 并可在低能力设备上实现,协议具有广泛的部署性和可访问性。
**生态系统灵活:** 协议足够灵活,可以适应具有不同策略的生态系统中的部署。
**易于使用:** 协议提供流畅、连贯、集成的配置和开箱即用体验。
**开放:** 项目的设计和技术流程对公众开放和透明,包括在可能的情况下对非成员开放。
## 架构概述
Matter 旨在为智能家居设备构建通用的基于 IPv6 的通信协议。该协议定义了将部署在设备上的应用层以及有助于保持互操作性的不同链路层。下图展示了协议栈的正常运行模式:

架构分为多层,以帮助分离不同的职责,并在协议栈的各个部分之间引入良好的封装。绝大多数交互都流经下图所示的协议栈:

1. **Application(应用层):** 设备的高阶业务逻辑。例如,一个专注于照明的应用程序可能包含处理灯泡开关及其颜色特性的逻辑。
2. **Data Model(数据模型):** 数据层对应于有助于支持应用程序功能的数据和动词元素。当有意图与设备交互时,应用程序会操作这些数据结构。
3. **Interaction Model(交互模型):** Interaction Model 层定义了一组可以在客户端和服务器设备之间执行的交互。例如,在服务器设备上读取或写入属性将对应于设备上的应用程序行为。这些交互作用于数据模型层定义的元素。
4. **Action Framing(动作成帧):** 一旦使用 Interaction Model 构造了一个动作,它就会被序列化为规定的打包二进制格式,以便编码进行网络传输。
5. **Security(安全):** 编码后的动作帧随后被发送到 Security Layer,以对 payload 进行加密和签名,确保数据安全并由数据包的发送方和接收方进行认证。
6. **Message Framing & Routing(消息成帧与路由):** 在交互被加密和签名后,Message Layer 使用必需和可选的 header 字段构造 payload 格式;这些字段指定了消息的属性和一些路由信息。
7. **IP Framing & Transport Management(IP 成帧与传输管理):** 在最终 payload 构造完成后,它被发送到底层传输协议进行数据的 IP 管理。
# Matter 当前状态
Matter 的设计和技术流程旨在对公众开放和透明,包括在可能的情况下对工作组的非成员开放。在 Apache v2 许可证下提供此 GitHub 仓库及其源代码是实现这一承诺的重要且可证明的一步。
Matter 致力于将市场测试技术的最佳方面结合起来,并将其作为统一且凝聚的整体系统解决方案重新部署。这种方法的整体目标是尽快将 Matter 的好处带给消费者和制造商。因此,您在此仓库中看到的是一种针对技术规范的实施优先方法,在实践中验证集成。Matter 仓库正在不断增长和发展,以实现整体架构。该仓库目前包含安全基础、消息成帧和分发,以及 interaction model 和 data model 的实现。代码示例展示了简单的交互,并支持多种传输方式——Wi-Fi 和 Thread——从资源受限(即内存、处理)的硅平台开始,以帮助确保 Matter 的可扩展性。
# 如何贡献
我们欢迎您对 Matter 的贡献。请在[此处](./CONTRIBUTING.md)阅读我们的贡献指南。
# 在 Matter 中构建和开发
关于如何构建 Matter 的说明可以在[这里](./docs/README.md)找到。
# 目录结构
Matter 仓库的结构如下:
| 文件/文件夹 | 内容 |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| build | 构建系统支持内容和构建输出目录 |
| build_overrides | 不同平台的构建系统参数自定义 |
| config | 项目配置 |
| credentials | 开发和测试凭据 |
| docs | 文档,包括指南。请访问 [Matter SDK 文档页面](https://project-chip.github.io/connectedhomeip-doc/index.html) 阅读。 |
| examples | 演示 Matter 使用的示例固件应用程序 |
| integrations | 第三方集成 |
| scripts | 使用 Matter 仓库所需的脚本 |
| src | Matter 的实现 |
| third_party | Matter 使用的第三方代码 |
| zzz_generated | ZAP 生成的模板代码 - 围绕 cluster 信息 |
| BUILD.gn | GN 构建系统的构建文件 |
| CODE_OF_CONDUCT.md | Matter 的行为准则及其贡献 |
| CONTRIBUTING.md | 贡献 Matter 的指南 |
| LICENSE | Matter 许可证文件 |
| REVIEWERS.md | PR 审阅者 |
| gn_build.sh | 特定项目(如 Android、EFR32 等)的构建脚本 |
| README.md | 本文件 |
# 许可证
Matter 根据 [Apache 2.0 许可证](./LICENSE)发布。
标签:C++, HomeKit, IoT, Matter协议, Project CHIP, Thread, UML, VX技术, Wi-Fi, Zigbee, 互操作性, 互联网, 低功耗, 全栈, 嵌入式开发, 嵌入式系统, 开发框架, 开源, 操作系统, 数据擦除, 智能家居, 智能设备, 物联网, 硬件抽象层, 网络安全监控, 网络调试, 自动化, 蓝牙, 连接性, 连接标准联盟, 逆向工具, 通讯协议, 驱动开发