首页 > 解决方案 > 单个 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 网格似乎是最好的解决方案。

标签: bluetooth-lowenergyembedded-linuxp2pmesh-network

解决方案


是的,此行为在BLE Mesh Profile规范中的第 2.3.11 章中指定。您正在寻找的是代理节点:

代理功能——在 GATT 和广告承载之间接收和重新传输网状消息的能力。

另请查看Ultimate Mesh 教程,其中还描述了代理节点:

为了允许从不支持网格的 BLE 设备与网格网络进行通信,可以使用称为代理节点的特殊类型的节点。代理节点充当中介并利用 GATT 操作来允许网状网络之外的其他节点与网络进行接口和交互。

在这种情况下使用的协议称为代理协议,旨在与支持连接的设备(使用 GATT)一起使用。

这当然取决于硬件和软件。并非每个硬件或软件堆栈都支持 BLE 网状网络功能。

蓝牙网状网络的维基百科文章列出了当前可用的支持 BLE 网状网络的软件堆栈。


推荐阅读