首页 > 其他分享 >Multi Fabrics/Admin - How to add the second controller to end device.

Multi Fabrics/Admin - How to add the second controller to end device.

时间:2023-12-06 15:34:35浏览次数:49  
标签:Multi end fabric Admin Matter second command mattertool device

Hardware Required

•    Raspberry Pi 4
•    2 x Silabs Thunderboard Sense 2 (TBS2 -- BRD4166A)
•    A Ubuntu Linux development environment or a Virtual Machine used to build the Matter end device firmware.

Connections Required

•    Ethernet or Wi-Fi for RasPi, Linux build machine
•    Micro USB for TBS2/RasPi
•    Micro USB for TBS2/Linux

Overview

Matter devices can participate in multiple ecosystems simultaneously. This feature, called multi-admin, is a much-desired feature in a smart home. 
Multi-admin allows you to join the Matter device to several Matter fabrics and administer it by several different Matter administrators. First, you need to commission the Matter device to the first fabric. Before it is possible to commission a Matter device to a new fabric, the administrator from the first fabric must open the commissioning window for a new administrator from another fabric. This allows other ecosystems to commission the Matter node and make it part of their own Matter Fabric. The next step is commissioning the Matter device to the second fabric and testing.

Screen Shot 2022-12-02 at 10.37.33 AM.png

 

Step 1: Prerequisites

You need to have:
•    The RaspberryPi OTBR.img and RCP must_ be from SMG 0.4.0 for this tutorial
You can get the matterHub image and RCP image for RaspberryPi and BRD4166A in the link:
Matter Software Artifacts
•    Lighting-app example image flashed on TBS2
To build the matter lighting example firmware for TBS2, you can refer to the link: Build and Flash the Matter Accessory Device (MAD) ​​​​​​​

Step 2: Join the device to the first fabric.

To join a MAD device to the matter network, open a console in matterHub, we will commission that device by the following command. Hold the button 0 for 6 seconds to factory reset the end device.

$ mattertool startThread
$ mattertool bleThread

Note: You can get the node-Id by using the command “$ mattertool -h”. It is “LAST_NODE_ID”

Step 3: Open the commissioning window on the paired Matter device

After the end device was commissioned to the first fabric, we need to open the commissioning window to allow the device to join the second fabric. To open the commissioning window on the paired Matter device, use the following command:

$ mattertool pairing open-commissioning-window <node_id> <option> <window_timeout> <iteration> <discriminator>

In this command:
•    <node_id> is the ID of the node taken from the last step.
•    <option> is equal to 1 for Enhanced Commissioning Method and 0 for Basic Commissioning Method
•    <window_timeout> is the time in seconds before the commissioning window closes
•    <iteration> is the number of PBKDF iterations to use to derive the PAKE verifier
•    <discriminator> is the device-specific discriminator determined during commissioning

Note: The <iteration> and <discriminator> values are ignored if the <option> is set to 0.

Example of command:

$ mattertool pairing open-commissioning-window 1 1 300 1000 2365

Note: manual pairing code or QR code is printed in the output console (see picture below), as it will be required by the second Matter admin to commission the Matter device to its fabric.

image2022-11-9_14-45-25.png

Step 4: Commission the Matter device to a new fabric

To commission the Matter device to a new fabric, you need to run another instance of the CHIP Tool or mattertool (another terminal), using the following command:

$ mattertool pairing code <node_id> <payload>  --commissioner-name <commissioner_name>

In this command:
•    <payload> is the QR code payload or a manual pairing code generated by the first commissioner instance when opening the commissioning window
•    <node_id> is the user-defined ID of the node being commissioned. It doesn't need to be the same ID, as for the first fabric.
•    <commissioner_name> is the name of the second fabric. Valid values are "alpha", "beta", "gamma", and integers greater than or equal to 4. The default if not specified is "alpha".


Example of command:

$ mattertool pairing code 36281602573 1 --commissioner-name beta
$ mattertool pairing code 1 MT:6FCJ1C0R15BESZ1E510 --commissioner-name beta
$ mattertool pairing code 1 22428732963 --commissioner-name beta

Step 5: Testing the device

After completing the above steps, the Matter device should be able to receive and answer Matter commands sent by the second fabric. For example, you can use the following command to toggle the OnOff attribute state on a device supporting the OnOff cluster:

$ mattertool onoff toggle <node_id> <endpoint_id> --commissioner-name <commissioner_name>

In this command:
•    <node_id> is the user-defined ID of the commissioned node.
•    <endpoint_id> is the ID of the endpoint with OnOff cluster implemented.
•    <commissioner_name> is the name of the second fabric. Valid values are "alpha", "beta", "gamma", and integers greater than or equal to 4. The default if not specified is "alpha".


Example of command:

$ mattertool onoff toggle 1 1 --commissioner-name beta

    TITLE Multi Fabrics/Admin - How to add the second controller to end device.   URL NAME Multi-Fabrics-Admin-second-controller   芯科官网链接: https://community.silabs.com/s/article/Multi-Fabrics-Admin-second-controller?language=en_US  

标签:Multi,end,fabric,Admin,Matter,second,command,mattertool,device
From: https://www.cnblogs.com/z3286586/p/17879676.html

相关文章

  • 《REBEL Relation Extraction By End-to-end Language generation》阅读笔记
    论文来源 代码地址 相关视频(YouTube) 相关概念:1.Whatisnaturallanguageunderstanding(NLU)?Naturallanguageunderstanding(NLU)isabranchofartificialintelligence(AI)thatusescomputersoftwaretounderstandinputintheformofsentencesusin......
  • Multi-view Information Integration and Propagation for Occluded Person Re-identi
     这篇从多视角这个思路出发,提出多视图信息集成模块,包括定位、量化和集成。给定具有相同身份的多个图像,MVI2P:i)定位特征图中的空间辨别区域以过滤掉噪声信息。ii)量化不同图像的显着性信息的相对重要性。iii)通过执行逐元素加法来集成多视图信息。iv)通过知识蒸馏将多个图像隐......
  • c++ friend关键字 友元
     在C++中,friend关键字用于声明友元函数或友元类1。友元函数或友元类可以访问当前类的私有成员和保护成员,即使它们不是当前类的成员函数或成员类1。友元函数是一个独立的函数,而友元类是一个类可以访问另一个类的私有成员和保护成员1。例如,如果要声明函数为一个类的友元,需要......
  • Generative-Contrastive Graph Learning for Recommendation论文阅读笔记
    Abstract首先介绍了一下GCL的一些缺点,GCL是通过数据增强来构造对比视图,然后通过最大化对比视图之间的互信息来提供自监督信号。但是目前的数据增强技术都有着一定的缺点结构增强随机退出节点或边,容易破坏用户项目的内在本质特征增强对每个节点施加相同的尺度噪声增强,忽略的节......
  • install goldendict-ng-git
    manjaro升级后,goldendict不能启动了,重新安装总是出错,原来是官方的版本不支持qt6了,查阅archlinux文档,获知goldendic-ng-git支持qt6,安装步骤如下,需要的同学可以参看。1.获取PKGBUILD文件,gitclone https://aur.archlinux.org/goldendict-ng-git.git2.安装必须的依赖,可能有......
  • ICPC2022Hangzhou A Modulo Ruins the Legend 题解
    LinkICPC2022HangzhouAModuloRuinstheLegendQuestion求$$\sum\limits_{i=1}^na_i+n\timess+\frac{n(n+1)}{2}\timesd\modm$$的最小值Solution我们把这个式子看成一一个二元不定方程\(ax+by+sum\modm\)的最小值,其中\(a=n,b=\frac{n(n+1)}{2},sum=\sum\limits......
  • matplotlib报错:AttributeError: module 'backend_interagg' has no attribute 'Figure
    使用本地python环境可以成功执行importpandasaspdimportmatplotlib.pyplotasplt#设置字体plt.rcParams['font.sans-serif']=['SimHei']#能正确显示负号plt.rcParams['axes.unicode_minus']=False#设置画布大小plt.figure(figsize=(11,8))#柱状图pat......
  • OpenDevOps 使用任务平台
    一、任务平台演示(不带参数)1)创建不带参数的命令  指定强制主机会强制在该机器执行 2)创建执行用户,在模板添加的执行的命令里面需要选择执行用户3)创建不带参数模板  id需要记录下来,需要授权给相关用户,用户才能对该模板进行操作 4)创建标签树。标签树也就是组的......
  • java获取multipartfile的编码
    Java获取MultipartFile的编码在Java开发中,我们经常需要处理文件上传功能。Spring框架提供了MultipartFile接口来处理文件上传,它是对文件上传的封装,提供了一系列的方法来处理文件的内容、类型、大小等。在某些情况下,我们可能需要获取MultipartFile的编码信息,比如判断上传文件的编......
  • hive升级元数据报错The reference to entity "useSSL" must end with the ';' delimit
    使用Hive自带的schematool工具升级元数据,也就是把最新的元数据重新写入MySQL数据库中。执行以下命令cd/usr/local/hive./bin/schematool-initSchema-dbTypemysql出现Thereferencetoentity"useSSL"mustendwiththe';'delimiter.修改之前配置的hive-site.xml原......