目录

在22年7月版本的CH583EVT更新之后,582芯片的adv_vendor_self_provision_with_peripheral例程,适配了wch mesh手机app,支持了OTA,成为功能最全的一个例程。但是默认例程适合常供电的节点,改为wch mesh配网的低功耗节点,需要做一些修改。

①配置宏定义,使能低功耗节点功能和HAL_SLEEP,关闭转发功能。节点功能可以在app_mesh_config.h 中配置。HAL_SLEEP可以在右键点击工程名->Properties中配置,不建议直接修改公共文件config.h中的宏。改朋友节点好改,朋友节点是常供电节点,直接将朋友节点功能的宏置1即可,但是开启朋友节点功能会增加ram的开销。

②IO口全配置成上拉,固定一下电平,不要留不确定的引脚状态。可以在一开始就配置,后面要用比如说串口,再用串口的引脚的GPIO配置覆盖一下就行。

③BLE广播在配网完成后关闭。如果后面还需要BLE通信,可以自定义指令,需要的时候走mesh消息开启BLE广播。在代码中有两处需要关闭BLE广播,一处是第一次配网过程完成后,另一处是flash中保存有配网信息,恢复配网信息之后。下面是笔者加的处理。注意:如果还需要用到BLE的话,还需要添加接口或是指令再开广播。

④关掉按键循环,留一个TMOS任务。默认例程中按键循环100ms一次,不关的话会将功耗拉到500uA的水平。睡眠的话至少要留一个TMOS任务由RTC唤醒,最长定时为23.5h。默认例程中有一个2min一次的RF校准任务,帮助校准RTC的值。可以延长比如说5分钟校准一次,通信不出问题就行。 

⑤配好网,连上朋友节点。配网过程是由未配网节点发起的,类似的,朋友关系的建立也是由低功耗节点发起的,如果这两件事情不做,低功耗节点“寝食难安”,即使休眠了也会不断唤醒去作这两件事。

⑥关掉BLE_MESH_BEACON_ENABLED。使能后,每10s一次安全广播用于IV值更新。低功耗节点可以由朋友节点支持IV值更新,可以关掉。上面的relay enabled默认就好,节点功能宏定义中关掉转发功能就行。

接下来是实测情况。板子上LDO没有去掉,如果去掉LDO,直接用测功耗工具的3.3v供电,功耗会再降低5到6uA。保留了默认例程中2min一次的RTC校准任务,这个时间可以延长,只要RTC正常能跑就行。低功耗节点每隔一段时间向朋友节点POLL请求消息,实际没有POLL到消息包。

一段时间内什么都没做,平均功耗在11.5uA左右

低功耗节点每隔1s向朋友节点POLL请求一次消息,平均功耗在160uA左右

低功耗节点每隔2s向朋友节点POLL请求一次消息,平均功耗在80uA左右

低功耗节点每隔3s向朋友节点POLL请求一次消息,平均功耗在60uA左右

低功耗节点每隔5s向朋友节点POLL请求一次消息,平均功耗在40uA左右

低功耗节点每隔10s向朋友节点POLL请求一次消息,平均功耗20+uA

低功耗节点每隔1min向朋友节点POLL请求一次消息,平均功耗10+uA

蓝牙mesh组网实践(手机配网例程改低功耗)的更多相关文章

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

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

  2. [蓝牙前沿应用] 照明即平台 —— 通过蓝牙增强服务提高照明投资回报率(蓝牙MESH、定位AoA、AoD)

      1.照明即平台(LAAP) 随着照明设施向LED转型,他们也在利用类似于蓝牙MESH的技术,创建一个可连接的照明平台,作为他们建筑的中枢神经系统.这些系统除了提供先进的照明控制,还建立了一个增强版 ...

  3. SIG蓝牙mesh笔记2_mesh组成

    目录 SIG 蓝牙 mesh 组成 mesh网络概述 网络和子网 设备和节点 devices & nodes 入网 mesh中的几个概念 智能插座例子 SIG 蓝牙 mesh 组成 mesh网 ...

  4. 常见无线组网分析(NB-IOT组网和Mesh组网)

      NB-IOT LoRa Zigbee WIFI 蓝牙 组网方式 基于现有蜂窝组网 基于LoRa网关 基于Zigbee网关 基于无线路由器 居于蓝牙Mesh的网关 网络部署方式 节点 节点 + 网关 ...

  5. SIG蓝牙mesh笔记5_Provisionging

    目录 Bluetooth Mesh Provisioning Provisioning bearer layer Generic Provisioning PDU Bluetooth Mesh Pro ...

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

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

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

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

  8. WIFI智能配网 - SmartConfig

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

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

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

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

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

随机推荐

  1. 突如其来的"中断异常",我(Java)该如何处理?

    # **一.何为异常?** ## 1.生活中的实例 生活中存在许多不正常: 上班路上自行车掉链子 上厕所手机掉马桶 下班回家钥匙丢失 ....... 2.程序中的实例 我们的代码中也许存在许多纰漏,导 ...

  2. pycham debug 专辑

    遇到大量代码的项目时怎么迅猛的调代码今天将交给大家几个方法 配置环境: 环境的统一是一切的基础,因为不同的版本不同步之间会造成很多各式各样的报错 然后选择现有环境进行配置 上面的路径进行默认环境变量的 ...

  3. order by 语句怎么优化?

    说明 当前演示的数据库版本5.7 一.一个简单使用示例 先创建一张订单表 CREATE TABLE `order_info` ( `id` int NOT NULL AUTO_INCREMENT CO ...

  4. 路由分发、名称空间、视图层之必会的三板斧、JsonResponse对象、request获取文件、FBV与CBV、模板层语法传值

    路由分发.名称空间.视图层之必会的三板斧.JsonResponse对象.request获取文件.FBV与CBV.模板层语法传值 一.昨日内容回顾 二.路由分发 1.djiango的每个应用都有主见的t ...

  5. wangeditor富文本编辑和vue3

    官网: wangEditor  https://www.wangeditor.com/v5/ 为啥用这个富文本编辑器(我觉得官网写自己优势已经非常好了没有啥可补充的了) 文档特别的全和友好 安装 ya ...

  6. Navicat修改mysql表的字符集和排序规则

    突然想起前一阵子,在做javaweb后端debug的时候遇到的这个问题.由于在Dao层测试的时候没有尝试过中文的测试例,所以在Service写好后一直不报错但是无法插入数据库. 找了好久才发现是Mys ...

  7. 基于ROS的串口底层写法

    serial_device.cpp #include "serial_device.h" namespace roborts_sdk { SerialDevice::SerialD ...

  8. 零基础解读ChatGPT:对人类未来工作是威胁还是帮助?

    摘要:火到现在的ChatGPT到底是什么?它背后有哪些技术?对于我们的工作和生活会有啥影响?快来一起了解吧~ 本文分享自华为云社区<零基础解读ChatGPT:对人类未来工作是威胁还是帮助?> ...

  9. [专题总结]Gridea快速免费搭建个人博客

    介绍 或许你很想把你所知道的问题写出来,或许你文思泉涌,想给大家分享.我相信,你一定能写好博客,只要坚持,就可以了. 或许大家会不理解,为什么不用大平台的博客呢?或许你稍微了解就会知道,现在的博客平台 ...

  10. Android:遍历视图

    <LinearLayout android:id="@+id/ques2_layout" android:layout_width="match_parent&qu ...