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

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

3天内不再提示

如何建立Thread网络并获取DATASET

泰凌微电子 来源:泰凌微电子 作者:泰凌微电子 2022-09-07 09:04 次阅读

之前我们构建了Matter固件和chip-tool,接下来我们需要建立Thread网络并通过BLE配网,这样才能通过chip-tool来控制Matter设备。

1

建立Thread网络并获取DATASET

01

建立Thread网络

树莓派通过网线连接到路由器,在浏览器中输入树莓派的 IP 地址,点击 Form 按钮,默认设置不用更改, 点击 FORM 建立 Thread 网络。

ce6feab0-2e45-11ed-ba43-dac502259ad0.png

02

检查Thread 网络状态

Thread 网络建立后可以在 Status 下查看状态,检查RCP状态为leader。

ced59018-2e45-11ed-ba43-dac502259ad0.png

03

获取DATASET

请以 SSH 方式登录树莓派(预置镜像中的用户名 username:pi,密码 password:raspberry),执行以下命令:

$ sudo ot-ctl dataset active -x

DATASET是类似于以下形式的一串十六进制的字符串,将其保存好。

cf39259c-2e45-11ed-ba43-dac502259ad0.png

*注意:每次形成新的 Thread 网络,上面的 DATASET 将会被重新生成。即使每次生成 Thread 网络所设置的参数相同,其中间的部分...0708fd0b448cf7918bcf051000...也会不同。

2

通过BLE配网

01

在主机上进行配网之前,请检查主机与树莓派之间的网络连接状态。

如果主机与树莓派之间是由带防火墙的路由器做转发,暂时关闭路由器上的防火墙,尤其是其禁止端口监听、端口扫描等功能。

如果使用运营商的光猫作为路由,可能会导致 mDNS 服务无法发现的错误,尝试将主机与树莓派用仅开启 DHCP 服务的其他路由器进行网线直连。

确保主机是独立的 Ubuntu 主机;若使用 Windows 上的 VirtualBox 等虚拟机充当主机,则需要给它提供并配置额外的蓝牙适配器。

02

检查 Matter 固件版本与 chip-tool 的是否相符

编译 Matter 设备的固件和 chip-tool 需要相同的 Zephyr 环境,否则进行配网时会出错。

*注意:若要使用自己构建的 chip-tool 和 Matter 设备的固件,必须保证它们使用了相同的 commit 的 connectedhomeip 工程目录进行构建,以避免出现兼容性问题。建议使用网盘内提供的预置固件。

03

在主机上的 shell 中配置好以下命令:

$ ./chip-tool pairing ble-thread ${NODE_ID} hex:${DATASET} ${PIN_CODE} ${DISCRIMINATOR}

*注意:运行 chip-tool 需退出镜像,并检查 chip-tool 的执行权限。

NODE_ID 可以是 RCP 初始化之后,未使用过的任何非零值,chip-tool 将使用它来操作特定的 Matter 设备。

DATASET 即为树莓派上获取的字符串。

示例:

cf56e910-2e45-11ed-ba43-dac502259ad0.png

04

Matter 设备上电后,红灯闪烁,进入 BLE 广播状态,在主机上的 shell 中输入上面命令并运行,会让 Matter 设备与 RCP 所在的边界路由开始配对并配网。

这个过程会持续一段时间,如果一切顺利,Matter 设备加入 Thread 网络后,你将能够从主机的 shell 中看到类似下面的信息

cf73eb5a-2e45-11ed-ba43-dac502259ad0.png

3

用chip-tool控制lighting-app

在配网成功之后,可以使用 chip-tool 对 Matter 设备进行控制,对于lighting-app来说,主要的几个控制命令如下。

01

开关灯

开灯:

$ ./chip-tool onoff on ${NODE_ID} 1

关灯:

$ ./chip-tool onoff off ${NODE_ID} 1

切换状态:

$ ./chip-tool onoff toggle ${NODE_ID} 1

其中的${NODE_ID}是上一步进行配网时使用的非零值。

02

查看灯的状态

读取开关状态:

$ ./chip-tool onoff read on-off ${NODE_ID} 1

读取亮度状态:

$ ./chip-tool levelcontrol read current-level ${NODE_ID} 1

03

改变灯的亮度

$ ./chip-tool levelcontrol move-to-level 32 0 0 0 ${NODE_ID} 1

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

    关注

    14

    文章

    7519

    浏览量

    88636
  • 路由器
    +关注

    关注

    22

    文章

    3708

    浏览量

    113547
  • Thread
    +关注

    关注

    2

    文章

    83

    浏览量

    25907

原文标题:泰凌微电子 Matter 开发指南(六):配网和 Lighting-App 示例

文章出处:【微信号:telink-semi,微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于Zigbee、Thread和Bluetooth®mesh网络测试比较

    蓝牙网状网络 (Bluetooth mesh)、Thread和Zigbee是目前业界用于打造智能家居及楼宇自
    的头像 发表于 04-24 08:53 1w次阅读

    用什么函数,可以获取NTP网络时间

    XCOM中查看打印出的时间。2)水墨画定时控制系统之Gokit时间获取及其分析:http://club.gizwits.com/thread-8037-1-1.html3)MCU请求网络时间例程
    发表于 08-27 08:25

    TLSclient如何与测试网站建立TLS连接获取加密数据?

    该示例程序提供了一个简单的TLSclient,与测试网站建立TLS连接获取加密数据。
    发表于 03-30 07:41

    如何在RT-Thread中利用标准BSD Socket API来开发网络应用

    本文描述了如何在 RT-Thread 中利用标准 BSD Socket API 来开发网络应用。给出了在正点原子 STM32F4 探索者开发板上运行 NTP(通过网络
    发表于 03-30 06:26

    什么是Thread

    matter网络基础之—Thread什么是 ThreadThread是专门为物联网设计的一种短距离、低功耗、支持IPv6的无线网状网络组网
    发表于 01-19 08:25

    PyTorch中的Dataset和TorchData API是如何工作的

    深度神经网络需要很长时间来训练。训练速度受模型的复杂性、批大小、GPU、训练数据集的大小等因素的影响。在PyTorch中,torch.utils.data.Dataset
    发表于 01-31 16:26

    如何扫描本地网络获取本地网络上的设备列表及其MAC地址?

    如何扫描本地网络获取本地网络上的设备列表及其 MAC 地址?
    发表于 02-24 06:38

    如何获取连接到网络的所有设备的MAC地址?

    你好我的朋友们,我设计了一个网络,其中有 5 个 NodeMCU 连接到一个路由器。其中一个 NodeMCU 将作为网络的主机,其他的是从机。我正在使用 UDP 协议在设备之间建立通信。我的问题是:如何
    发表于 04-28 06:00

    C#教程之Linq操作DataSet

    C#教程之Linq操作DataSet,很好的C#资料,快来学习吧。
    发表于 04-20 15:27 6次下载

    MSP430F2001_dataset

    MSP430 dataset 方便大家对430单片机了解
    发表于 08-22 16:01 15次下载

    Silicon Labs发布Thread 1.1兼容软件加速推动市场采用Thread协议

    Silicon Labs(亦名“芯科科技”)日前发布了成功通过Thread 1.1技术规范兼容性测试的Thread网状网络协议栈。开发人员使用运行在Silicon Labs无线SoC和无线模块上
    发表于 11-10 11:20 872次阅读

    基于ZigBee网络建立虚拟链状网

    控制器建立改良节点,在不破坏ZigBee原有网络特点的基础上,提出实现了可远程、在线建立管理的虚拟链状
    发表于 12-17 10:25 0次下载
    基于ZigBee<b class='flag-5'>网络</b><b class='flag-5'>建立</b>虚拟链状网

    RT-Thread全球技术大会:QE工具移除AI技术壁垒与数据建立

    RT-Thread全球技术大会:QE工具移除AI技术壁垒与数据建立             审核编辑:彭静
    的头像 发表于 05-27 10:36 1479次阅读
    RT-<b class='flag-5'>Thread</b>全球技术大会:QE工具移除AI技术壁垒与数据<b class='flag-5'>建立</b>

    建立Thread网络通过BLE配网

    之前我们构建了Matter固件和chip-tool,接下来我们需要建立Thread网络通过BLE配网,这样才能通过chip-tool来控制Matter设备。
    的头像 发表于 09-07 08:58 2511次阅读

    Thread家用网络架构和Thread商用网络架构的区别

    Thread协议栈支持IPv6地址,能够实现与其它IP网络的低成本桥接,是低功耗/电池供电操作、无线设备间通信的最佳选择。Thread协议栈专为基于IP网络的智能家居和楼宇自动化应用而
    发表于 02-28 11:10 455次阅读