bluetooth-lowenergy - 单个 BLE 模块可以连接到网格并具有点对点连接吗?
问题描述
我想知道是否可以同时将 BLE 模块用于网状网络和点对点连接。
理由:
我正在设计的嵌入式 linux (EL) 产品需要能够连接到心率监测器(运动级,非医疗级)等 BLE 外围设备,并且该产品需要与同类产品进行通信。
我还需要一种非常低功耗的方式将所有 EL 设备的数据发送到互联网。理想情况下,只有一种产品提供互联网连接。
我对其他解决方案或为什么这可能不是一个好方法的原因持开放态度,即使它是可能的。
这是我想要实现的粗略框图: 框图没有显示 HR 连接到每个 EL 设备,但这也是可能的。
Green = Embedded Linux Devices
Red = Heart Rate Monitors
Blue = An internet connection to the cloud
Yellow = connections between Embedded Devices
选项 1 - WiFi
我考虑的第一个选项是 EL 设备之间的 wifi 连接,但是这将比 BLE 消耗更多的功率。
选项 2 - BLE 网状网络
当且仅当可以同时进行点对点连接时,使用 BLE 网格似乎是最好的解决方案。
解决方案
是的,此行为在BLE Mesh Profile规范中的第 2.3.11 章中指定。您正在寻找的是代理节点:
代理功能——在 GATT 和广告承载之间接收和重新传输网状消息的能力。
另请查看Ultimate Mesh 教程,其中还描述了代理节点:
为了允许从不支持网格的 BLE 设备与网格网络进行通信,可以使用称为代理节点的特殊类型的节点。代理节点充当中介并利用 GATT 操作来允许网状网络之外的其他节点与网络进行接口和交互。
在这种情况下使用的协议称为代理协议,旨在与支持连接的设备(使用 GATT)一起使用。
这当然取决于硬件和软件。并非每个硬件或软件堆栈都支持 BLE 网状网络功能。
蓝牙网状网络的维基百科文章列出了当前可用的支持 BLE 网状网络的软件堆栈。
推荐阅读
- r - 使用 str_to_title 更改 col 名称时出现问题
- node.js - 无法使用 node.js AWS Lambda 函数使用“ftp”包连接到 ftp 服务器
- excel - 将多个 Excel 文件中的数据复制到一个主工作簿中。但是,应使用 powershell 脚本以明智的方式添加数据
- c - C:警告:不兼容的指针类型将“int **”传递给“int *”类型的参数
- typescript - 注册一个将应用程序连接到猫鼬的函数
- python - Numpy 不交换元素
- reactjs - 未捕获的错误:无效的挂钩调用。如何修复此错误?
- reactjs - 全球安装 eslint 有什么缺点吗?
- json - 如何为 JSON 正文编写测试序列?
- r - R中的pgmm函数(plm包)问题