首页 > 其他分享 >蓝牙mesh组网实践(在mesh工程中添加BLE功能)

蓝牙mesh组网实践(在mesh工程中添加BLE功能)

时间:2023-03-31 15:48:41浏览次数:49  
标签:功能 MAC mesh BLE 添加 节点 组网

目录

CH582这款芯片是能够同时跑mesh+BLE的,在我司提供的透传模型“一般节点”或者叫“普通节点”的代码adv_vendor中,也可以添加BLE功能,方便用户随时连接BLE。

在adv_vendor工程中添加BLE的操作步骤如下:

如图配置预编译宏。

BLE_MAC:用于配置BLE广播所用的MAC地址为代码中自定义的MAC,位于app_main.c的前几行。如果BLE-MAC不配置,使用芯片内置的MAC地址,也可以进行BLE广播,但不建议,因为mesh的未配网信标广播也会用到芯片内置的MAC地址,要尽量避免使用同一个MAC。

BLE_MEMHEAP_SIZE:用于给BLE协议栈预留RAM空间。这里使用BLE->LIB文件夹中的LIBCH58xBLE.a文件中的BLE协议栈,按建议是预留6K的RAM。如果该值过小,会导致BLE广播难以被发现或者BLE连接后出异常。

从peripheral工程将profile文件夹、peripheral源/头文件拷贝到adv_vendor工程文件夹中。

添加头文件包含,在APP_INIT初始化函数中加上下图中的两行BLE相关初始化。

之后就能使用BLE功能了,具体的BLE相关配置可以研究研究peripheral例程。

如果需要添加低功耗节点功能,需要再按如下步骤多几步修改。

使能mesh低功耗节点功能,关闭转发功能(最好关掉,不关的话LPN长期休眠,也执行转发)。

增加HAL_SLEEP宏,删除HAL_KEY宏,注释掉按键检测功能以及多余的循环TMOS事件。

 

固定所有引脚的电平。本测试中绝大多数引脚悬空,故将GPIO电平都固定在上拉高电平。

关闭10s一次的安全广播,disable掉就行,IV同步功能会由低功耗节点帮助完成。

 

标签:功能,MAC,mesh,BLE,添加,节点,组网
From: https://www.cnblogs.com/JayWellsBlog/p/17276144.html

相关文章

  • ansible 常用模块 service
    模块说明Manageservices参数说明ParameterCommentsargumentsaliases:argsstring命令行上提供了其他参数。将远程主机与systemd一起使用时,此设置将被忽略。enabled boolean服务是否应在启动时启动。至少需要state和enabled中的......
  • assamble
    汇编语言到机器语言(二进制)操作码和操作数   ......
  • ansible 常用模块 archive
    模块说明该unarchive模块解压缩存档。它不会解压缩不包含存档的压缩文件。默认情况下,它会在解包之前将源文件从本地系统复制到目标。设置remote_src=yes为解压缩目标上已存在的存档。在目标主机上需要zipinfo和gtar/unzip命令。需要目标主机上的zstd命令来展开.tar......
  • ansible 常用模块 user
    模块说明管理用户帐户和用户属性。此模块用于useradd创建、usermod修改和userdel删除帐户。参数ParameterCommentsappend boolean如果true,将用户添加到中指定的组groups。如果false,用户将只被添加到在指定的组中groups,将他们从所有其他组中删......
  • ansible 常用模块 group
    参数参数选项/默认值描述gidinterger 要为组设置的可选GID。localbooleanfalse ←(默认)true强制在实现它的平台上使用“local”命令替代项。这在要操作本地组时使用集中式身份验证的环境中非常有用。(例如,它使用代替lgroupaddgroupadd)。namestr......
  • Float 或者 Double 除以零不会抛出 java.lang.ArithmeticExceptionL:/by zero 异常
    1.Java的浮点运算是基于IEEE-754标准来的。IEEE-754standardJava'sFloating-PointOperations2.Java语言规范https://docs.oracle.com/javase/specs/jls/se7/html/jls-4.html#jls-4.2.31.0/0=+Infinity-1.0/0=-Infinity0/0=NaN......
  • 快来玩AI画图!StableDiffusion模型搭建与使用入门~
    前言最近AI很火......
  • Robert Scoble炮轰Google:我希望Google+ pages从未出现过
    编者注:本文作者为科技博客Scoble博主RobertScoble。昨天他刚刚炮轰微软做平板没有前途,今天他又对准了Google开炮,抨击Google新推出的Google+Pages。我的读者都知道,我是Google+的头号粉丝。不过昨天Google+推出的品牌主页(BrandPages)让我感觉很不爽,我希望这东西从未出现过。为什么?......
  • iptables 命令学习
    iptables命令学习摘要Linux早起版本使用netfilter进行数据包过滤.最新的版本开始改用ebpf的方式进行内核编程式的包过滤.netfilter可以理解为内核态的一个处理机制iptables是在用户态进行管理netfilter配置的工具.也就可以理解为:iptables是管理netfilter的一个......
  • 85000只Pebble智能手表销售一空 融资额已破千万美元
    如果你认为采用电子纸屏幕的Pebble智能手表在打破Kickstarter融资纪录后会出现放缓的迹象,那就大错特错了,因为它现在的融资额已突破1000万美元,并且放出预定的85000只手表几天之内就销售一空了。Kickstarter项目往往都会设置一个阶梯级的资助方式,每种资助方式都会有一定的名额,对于任......