目录

CH582的官方EVT在22年7月更新后,修改了手机配网代码以支持wch mesh手机app。使用该app可以保存手动配网信息,设置订阅地址分组,OTA升级,极大方便了用户管理节点。

老版本的EVT中也有对手机配网的支持,但是只有一条指令,即向节点配置net key、节点主元素地址,并没有涉及IV值。新版本的例程,使用wch meh手机app配网,有两条指令,在配置net key、节点主元素地址前加了一条配置IV值相关的指令,能够给新添加节点配置网络中现在使用的IV值,前提是手机需要先连接到mesh网络中自动获取一下最新IV值。两条指令的操作码在app.c中都可以找到,也可以参考《沁恒MESH APP管理配网应用手册》PDF文件。如果一个网络已经正常跑了一年,再向其中添加一个节点,由于老版本的代码IV值默认设置为0,新添加的节点是无法与网络中现有节点通信的;新版本的代码配合wch mesh能够配置最新IV值,以解决这个问题。

整个网络中的IV_index是需要同步的,否则无法通信。IV值不同步的节点,本该被踢出网络,但是底层中没有做这样的操作,结果只是无法与正常节点通信。网络中每个节点都有一个序列号SEQ,节点每发一则消息,会将SEQ自加1。如果某个节点的SEQ超过一定数值,会触发IV更新机制,这个节点会发出一条IV即将更新的广播,其他节点收到后会记录IV即将更新的状态,在IV更新时将自己的SEQ清零。IV值短则1h长则96h后更新一次,具体看发包频率高的节点到底发了多少包。

手机配网的例程adv_vendor_self_provision_with_peripheral由于增加了OTA功能,编译获得hex文件后,需要与其他三个hex文件合成,否则无法使用。其他三个文件不常改动,可以都放在一个文件夹内,用合并工具合成bin文件的时候方便找文件。

在沁恒官网搜索关键字“mesh”,可以找到合并工具WCH_AssembingFileTool和wch mesh手机app↓

搜索 mesh - 南京沁恒微电子股份有限公司 (wch.cn)

合并工具的使用很简单,勾上框选,选择文件,点击合并文件即可。4个hex的文件顺序任意。合成后的bin文件用ISP工具烧录,烧录不报错即可。

注:最新版的ISP工具整合了合并的功能,可以跳过使用AssemblingFileTool这个工具合并的步骤,直接用ISP工具下载4个hex文件。

最新ISP工具中,下面选4个hex同时下载就行。

接下来看看如何在wch mesh手机app中新增节点

①Network页中点击增加节点

②点击周围等待配网的设备。已配网设备这里搜索不到。

③输入16个字节的网络密钥、地址、节点名称。节点名称不会被配置到芯片程序中,网络密钥和节点地址会。

④点击“配置节点”,配置无误的话会自动返回主页,显示新增节点。

新增后的默认状态是离线。查询节点的在线状态,需要连接到网络中,然后点击刷新状态。查询在线状态只需要手机通过BLE连接随机一个网络中的节点,app会借由这个节点发送mesh消息轮询节点是否在线(同理节点配置、OTA等功能,会经由网络转发,不需要直连待管理节点)。轮询过程中,超时未收到回包,则判断这个节点离线。低功耗节点在轮询发包时不一定能够刚好向朋友节点POLL到查询包,且该app是单线程的,没有后台实时查询回包,低功耗节点回包时可能已经轮询结束,故可能会显示低功耗节点离线,但不一定表示低功耗节点已经脱离网络。app的demo在官网资料压缩包中有,有开发能力的用户可以改进一下。

wch mesh还支持订阅与发布功能的管理

①点击下面的“Group”按钮,切换到分组管理页面。

②点击“增加Group”。新增分组无需连接到网络中。

③在弹出的页面中设置新建的分组。注意分组地址为0xC000~0xFEFF。组名不会被配置到节点芯片中,组地址会。

④点击“确定”后会出现新增的分组。显示目前分组下没有节点设备。

⑤将节点配置到分组中,需要回到Network页面,点击列表中的节点。

⑥点击右上角三个点,点击“添加Group”。

⑦点击“确定”添加到指定分组后,提示“订阅成功”后,可以在Group页面看到分组下多了一个设备。

至此就完成了节点的“订阅”工作。若要发布消息到相应地址,可在Group页面点击分组,在接下来的页面中发布消息。需要删除Group可以点击右上角的三个点。

蓝牙mesh组网实践(手机配网例程配合wch mesh手机app的使用)的更多相关文章

  1. IoT时代:Wi-Fi“配网”技术剖析总结

    导读 近年来,物联网市场竞争激烈,从物联网平台厂商,设备生产商,到服务提供商,都在涌入这片红海.预计到2020年,全球联网设备数量将达到260亿个,年复合增长率达到20%:全球联网设备带来的数据将达到 ...

  2. 【转载】wifi一键配网smartconfig原理及应用

    物联网给我们又提供了一种窃取WiFi密码的好方式:让智能设备主动断线. 同时也提供一种让智能设备连接到恶意WiFi的方式:设备一键配置功能时疯狂广播恶意WiFi的信息. 转自:http://blog. ...

  3. WiFi-ESP8266入门http(3-4)网页一键配网(1若为普通wifi直连 2若为西电网页认证自动网页post请求连接)+网页按钮灯控+MQTT通信

    网页一键配网(1若为普通wifi直连  2若为西电网页认证自动网页post请求连接)+网页按钮灯控+MQTT通信 工程连接:https://github.com/Dongvdong/ESP8266_H ...

  4. WIFI智能配网 - SmartConfig

    要开始IoT项目的第一步是什么?当然不是硬件,而是硬件与硬件的连接!即使有各种各样的通信协议没有好的连接方式绝对不行.那外设上没有的屏幕,没有键盘怎末输入密码怎末选择网络?对,这就是WIFI模块最重要 ...

  5. ESP8266开发之旅 网络篇⑧ SmartConfig——一键配网

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  6. ESP8266开发之旅 网络篇⑭ web配网

    1. 前言     目前,市面上流行多种配网方式: WIFI模块的智能配网(SmartConfig以及微信AirKiss配网) SmartConfig 配网方式 请参考博主之前的博文 ESP8266开 ...

  7. 深入学习 esp8266 wifimanager源码解析(打造专属自己的web配网)

    QQ技术互动交流群:ESP8266&32 物联网开发 群号622368884,不喜勿喷 单片机菜鸟博哥CSDN 1.前言 废话少说,本篇博文的目的就是深入学习 WifiManager 这个gi ...

  8. ESA2GJK1DH1K微信小程序篇: 测试微信小程序APUConfig给WI-Fi模块配网并绑定设备,并通过MQTT控制设备

    前言(源码使用介绍在最后) 一,微信小程序篇小程序下载(该源码为这节测试源代码) 二.有多少人一直在期盼着小程序可以实现SmartConfig或者Airkiss的功能? 来吧!我的这种方式包您满意. ...

  9. 5-(微信小程序篇)关于WiFi模块配网以后利用小程序绑定设备,绑定方式说明

    https://www.cnblogs.com/yangfengwu/p/11625189.html 众所周知:使用微信Airkiss 只能给设备配网,并不能够获取设备的MAC地址信息,但是我在 ht ...

  10. 12-网页,网站,微信公众号基础入门(编写后台PHP程序,实现Airkiss配网)

    https://www.cnblogs.com/yangfengwu/p/11067590.html 首先说一下,这两个地方需要配置一样 网站根目录建个文件夹 airkiss的文件夹 里面放上 ind ...

随机推荐

  1. 最大公约数gcd和最小公倍数lcm

    迭代版本 int gcd(int a, int b) { while (b != 0) { int r = a % b; a = b; b = r; } return a; } int lcm(int ...

  2. ArcGIS实现打点、线路图、色块、自定义弹窗

    闲聊: 马上就要过年了,不知道大家过年都放几天假,小颖公司就只放8天假,就这还有一天是集体调休扣年假,就很··············还不如不放,不过庆幸最近这两周项目也做完了也没啥事,不然就静不下心 ...

  3. Ubuntu 安装播放器

    安装 VLC sudo snap install vlc snap 下载慢的看这里https://www.cnblogs.com/Ahtelek/p/ubuntu-snap.html

  4. Function接口-默认方法:andThen

    Function接口 java.util.function.Function<T,R〉接口用来根据一个类型的数据得到另一个类型的数据,前者称为前置条件,后者称为后置条件. 抽象方法:apply ...

  5. Java入门与进阶 P4.1+P4.2

    表达积累的结果应该初始化为1 for循环 for循环像一个计数循环:设定一个计数器,初始化它,然后再计数器到达某值之前,重复执行循环体,而每执行一轮循环,计数器值以一定步骤进行调整,比如加 i 或者减 ...

  6. Quartz与Topshelf结合实现window定时服务

    一,新建控制台应用程序 二,选中项目,右键 - 管理 NuGet 程序包,添加四个: Quartz Quartz.Plugins Topshelf log4net 三,创建项目文件 三个配置文件:必须 ...

  7. P4_创建第一个小程序项目

    设置外观和代理 创建小程序项目 点击"加号"按钮 填写项目信息 项目创建完成 在模拟器上查看项目效果 在真机上预览项目效果 主界面的 5 个组成部分

  8. Mac 创建Python3虚拟环境

    Mac 创建Python3虚拟环境 1.安装virtualenv pip3 install virtualenv 安装virtualenvwrapper pip3 install virtualenv ...

  9. 任何人均可上手的数据库与API搭建平台

    编写API可能对于很多后端开发人员来说,并不是什么难事儿,但如果您主要从事前端功能,那么可能还是有一些门槛. 那么有没有工具可以帮助我们降低编写API的学习门槛和复杂度呢? 今天就来给大家推荐一个不错 ...

  10. 3D数字孪生场景编辑器介绍

    1.背景 数字孪生的建设流程涉及建模.美术.程序.仿真等多种人才的协同作业,人力要求高,实施成本高,建设周期长.如何让小型团队甚至一个人就可以完成数字孪生的开发,是数字孪生工具链要解决的重要问题.目前 ...