Matter理论介绍-通用-1-05:桥接设备-发现与配置流程

news2024/11/18 19:34:47
源码文档软件硬件技术交流技术支持入口文末
【所有相关 IDESDK例程源码均可从群文件 免费获取免安装解压即用

 

持续更新中,欢迎关注!

 


一、桥接设备的发现

桥接设备如何被其他Matter终端发现呢?一个Matter Node通过识别桥接器上的Aggregator端点的PartsList attributes属性和端点遍历整个端点树,以发现PartsList attributes中提到的所有桥接设备,同时读取这些桥接设备的设备类型和其他属性(公开的任何能被Matter系统识别的功能)。

在被发现的设备列表中,任何一个在设备类型属性中包含Bridged Node的端点都被视为桥接设备,或者说明这一组端点的其中一个出现在PartsList列表中(针对组合端点情况)。如果发现该桥接设备的Matter节点支持该桥接设备的设备类型,它可以将该桥接设备添加到自己的设备列表中,也可以进行相关配置。(比如开关设备找到了灯泡设备)

发现桥接设备的Matter节点应该根据从桥接器上获得的有用信息对桥接设备进行配置(可能需要用户输入),来决定将桥接设备和哪一个Matter设备绑定。(比如哪个开关控制哪个灯、或者用户在手机上控制哪个灯)

因为一个桥接器可能桥接了很多的桥接设备,所以发现设备应当读取每个桥接端点都具备的Bridged Device Basic Information clusterNodeLabel attribute属性来获取精简后的信息,以使用户能够轻松识别各种桥接设备,并加速配置的过程。如果发现设备仅仅向用户提供一个没有任何注释的设备列表,比如20个灯、4个开关这样的信息,这将使用户感到困惑。这些精简的标签信息可以由网桥设备提供。

如果在桥接设备的Power Source Cluster中发现了电源相关信息,发现节点应该采用类似与和Matter本地节点电源交互的方式与其进行交互。这些信息可以实现通知用户有关桥接设备中电源的状态等功能。

二、桥接设备的配置

对于为发现的桥接设备进行配置,主要由两种基本方法:一种用于执行器,一种用于传感器/开关

配置过程与对Matter设备的配置过程相似。这是因为即使是桥接设备,在设备类型和Matter设备相同的情况下,桥接设备具有和Matter设备相同的应用程序集群(clusters)。

2.1 桥接设备作为执行器

当桥接设备作为执行器时,需要一个对其发送命令的控制器,Matter生态系统中的控制器可以向桥接器上的一个或多个端点的相关Cluster发送命令(例如给桥接器上的on/off cluster 发送 on命令),桥接器完成协议间的转换后,将相关命令发送给具体的桥接设备。

举例如下:

现在有一组灯泡,里面既包含matter灯泡,也包含非matter协议的灯泡。

当控制器向这个组发送一个单一的on命令,即表示要打开这一组中的所有的灯,这条消息将被matter灯以及桥接器接收,桥接器进行相关的协议转换后送给相关的桥接设备。

在这里插入图片描述

2.2 从桥接设备接受状态/事件/命令

当桥接设备作为传感器或者开关时,桥接器将这些桥接设备更新的数据(例如Zigbee属性报告)、事件和/或命令进行接收并转换为matter数据结构中的attributes, events and/or commands呈现在相应桥接设备的端点上。

举例如下:

温度传感器通过非Matter接口向桥接器发送状态报告,桥接器接收到更新的数据后以此来更新相关桥接设备端点上Temperature Measurement cluster中的Measured Value attribute的属性值。

Matter生态系统中对该属性感兴趣的节点可以读取更新后的Measured Value attribute属性值,并可以订阅该属性。这与原Matter设备之间的订阅交互时一样的。

如果桥接设备作为开关使用,当用户按下开关按钮,开关桥接设备通过非matter接口向桥接器发送消息,桥接器根据收到的信息更新相关桥接设备端点上的Switch cluster中的InitialPress event事件。

matter生态系统中对该事件感兴趣的节点可以订阅该事件并进行设置,就像订阅matter设备的过程一样。

在这里插入图片描述

【参考目录】

  • CSA-Matter协议官方文档

(注:任何相关问题,欢迎在文末技术交流QQ群中交流讨论。)


在这里插入图片描述

 

持续更新中,欢迎关注!

 

【所有相关 IDESDK例程源码均可从群文件 免费获取免安装解压即用
源码文档软件硬件技术交流技术支持入口文末

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/111111.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

论文阅读《FSCE: Few-Shot Object Detection via Contrastive Proposal Encoding》

论文地址:https://arxiv.org/pdf/2103.05950.pdf 代码地址:https://github.com/megvii-research/FSCE 对比学习https://zhuanlan.zhihu.com/p/346686467 目录1、存在的问题2、算法简介3、算法细节3.1、new-baseline3.2、对比建议编码3.3、对比建议编码的…

(第二章)OpGL超级宝典学习:创建我们第一个OpenGL程序,绘制一个点和三角形

目录前言创建简单的应用创建脚本渲染底色渲染底色plus使用着色器(shader)什么是着色器(shader)GLSLOpenGL的着色阶段编写着色器顶点着色器片段着色器shader对象的创建执行程序的创建删除无用的shader顶点数组对象VAO清理VAO和Prog…

跨孔CT交叉梯度联合反演算法

跨孔CT交叉梯度联合反演算法 利用交叉梯度函数的结构约束作用实现多种跨孔CT的联合反演。 文章目录跨孔CT交叉梯度联合反演算法1、跨孔CT原理2、跨孔CT正演算法2.1 多模块快速推进算法2.2 最短路径法弯曲射线追踪2.3 胖射线追踪2.4 直射线追踪3、跨孔CT正演模型4、交叉梯度联合…

Matlab渐变色生成/编辑器专业版—ColorMapPro

渐变配色在科研绘图时十分常用,比如三维柱状图、特征渲染散点图、热图、曲面图、等高线填充图等等,都需要使用渐变配色。 虽说现成的渐变配色有很多,比如,在TheColor配色工具的渐变颜色库中便集成了近千种的渐变色: 然…

Lambda Python 创建和使用 Layer

目标 由于 Python 代码中需要用到第三方的库, 在 Lambda 中可以通过创建自定义层(Layer)的方式来将这些依赖提供给 Lambda 运行环境. 下面演示创建一个包含第三方库 requests 的层, 以及如何在 Lambda 中调用 准备 zip 文件 首先在本地电脑上将相关依赖下载到名为 python 的…

32.多输入多输出通道

通道数是一个重要的超参数,通常是会仔细设计的。 在之前,我们仅展示了单个输入和单个输出通道的简化例子。 这使得我们可以将输入、卷积核和输出看作二维张量。 当我们添加通道时,我们的输入和隐藏的表示都变成了三维张量。例如&#xff0c…

OpenPCDet详细安装指南+单/多GPU训练演示

OpenPCDet详细安装指南单/多GPU训练演示前言个人环境一览安装环境安装的各版本1. 创建conda虚拟环境2. 安装PyTorch3. 安装spconv4. 安装PCDet5. 训练单GPU训练多GPU训练前言 本人总共花了两个晚上一个下午安装,中间因为各种版本错误、版本不兼容报各种奇奇怪怪的错…

Windows 下使用 Docker + MySQL 安装 Wiki.js

Windows 下使用 Docker MySQL 安装 Wiki.jsIntroductionChapter 1 配置数据库Part 1 数据库安装Part 2 创建 Wiki 相关配置并修改权限Chapter 2 配置 Wiki.jsPart 1 安装Part 2 配置 WikiIntroduction Wiki 是一种在网络上开放且可供多人协同创作的系统,比较著名的…

【触摸屏功能测试】昆仑通态MCGS——测试通过HJ212_TCPIP驱动4G功能发送212报文

1、触摸屏功能测试 型号:TPC7022Ni 测试内容: 实现4G触摸屏,通过自带的4G卡向平台发送HJ212报文 2、HJ212_TCPIP 驱动说明 2.1、驱动介绍 本驱动构件用于MCGS软件,通过污染物在线监控(监测)系统数据传输标准协议向下位机数采仪发送各类指…

MCU-51:静态数码管显示

目录一、数码管介绍2.1 介绍2.2 数码管引脚定义2.3 原理图二、要用到的C语言知识2.1 数组2.2 子函数三、数码管显示3.1 单个数码管显示3.2 通过定位函数实现数码管显示四、动态数码管显示一、数码管介绍 2.1 介绍 LED数码管:数码管是一种简单、廉价的显示器&#…

Word表格常见设置汇总

Word表格常见设置汇总 总结一些Word中常用的关于表格的设置问题。 文章目录1.居中设置2.隔页显示表格首行设置3.边框边线粗细及显示设置4.表格斜线设置5.单元格合并与拆分设置1.居中设置 全选要居中显示部分→布局→选择居中类型。 2.隔页显示表格首行设置 选择表格→表格属性→…

idea插件之自动生成时序图(Sequence Diagram)

前言 小伙们,你们有没有发现,身边经常有这样一些人,看着平时没怎么干活,到关键时候需要展示工作成果,会发现这些人也有工作成果,甚至比辛苦在干的人可能还要多一些。按常理推测,这绝对不是一件科…

【小程序】案例 - 本地生活(首页)

1. 首页效果以及实现步骤 新建项目并梳理项目结构 配置导航栏效果 配置 tabBar 效果 实现轮播图效果 实现九宫格效果 实现图片布局 2. 接口地址 获取轮播图数据列表的接口 【GET】 https://www.escook.cn/slides 获取九宫格数据列表的接口 【GET】 https://www.esco…

XXE工具——XXEinjection安装与使用

今天继续给大家介绍渗透测试相关知识,本文主要内容是XXE工具——XXEinjection安装与使用。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调&#xff1…

直播推流神器 Kplayer 手把手教你在B站7*24h全天直播

开始前的准备工作 Linux服务器 (1)KPlayer目前仅支持Linux环境并需要满足x86_64(amd64)与aarch64(arm64)CPU架构的硬件环境上运行,我们已经将相关依赖库静态链接至主程序中,这意味着你不需要额外的安装任何的第三方库来支持KPlayer的运行。 在后续的迭代…

【数据预处理】基于Pandas的数据预处理技术【前七个任务】

文章目录一.需求分析二.需求解决2.1 本次实验以california_housing加州房价数据集为例,下载数据集2.2 查看数据集的描述、特征及目标数据名称、数据条数、特征数量2.3 将数据读入pandas的DataFrame并转存到csv文件2.4 查看数据集各个特征的类型以及是否有空值2.5 对…

五年经验的前端社招被问:CPU 和 GPU 有什么区别?

CPU 和 GPU 的设计目标和整体架构的区别分析,并在全文最后使用通俗的例子做比喻帮助理解。 首先来看 CPU 和 GPU 的百科解释: CPU(Central ProcessingUnit,中央处理器):功能主要是解释计算机指令以及处理计…

【工作流Activiti7】2、Activiti7 与 Spring Boot 及 Spring Security 整合

1. 前言 其实,选择用Activiti7没别的原因,就是因为穷。但凡是有钱,谁还用开源版的啊,当然是用商业版啦。国外的工作流引擎没有考虑中国的实际情况,很多像回退、委派、撤销等等功能都没有,所以最省事的还是…

若依前后端分离框架去掉首页 登录后跳转至动态路由的第一个路由

若依前后端分离框架去掉首页 登录后跳转至动态路由的第一个路由若依框架VUE前端界面,登录后默认跳转至动态路由第一路由(第一个子菜单)一、登录后跳转第一路由界面二、设置路由的首页路径,方便后续的获取三、点击若依的logo跳转的…

字符串函数(4)--strtok函数和strerror函数

1.strtok函数 — 分割字符串函数 2.strerror函数 — 错误报告函数 1.strstok函数的用法 char* strtok(char* str, const char* delimiters);直接看函数的声明: 参数1:要切割的地址,参数2:切割时的标记物 注意:strt…