开发者问题收集

Web 蓝牙可以在 BLE 网状网络中提供节点吗?

2019-05-24
838

我有一个 Web 应用,需要与 BLE 网格中的大约 48 个 BLE 设备进行通信。

我发现 Web 蓝牙可以与一个蓝牙设备配合使用,但找不到是否有办法配置 BLE 网格,然后使用 Web 蓝牙向网格中的节点发送消息。

如果这很重要,我将其放在这里是为了提供信息,即 Web 应用是一个用 Typescript 编写的 Angular 应用。对于 Web 蓝牙,我使用此库 https://github.com/manekinekko/angular-web-bluetooth

2个回答

我怀疑“智能网格”技术不是蓝牙 SIG(及其 33,000 名成员)的标准蓝牙网格,因此要小心。我可能错了,但我在合格的网状产品列表中没有看到该公司的任何产品: https://www.bluetooth.com/bluetooth-technology/topology-options/le-mesh/mesh-qualified/

寻找此类问题答案的地方位于网状配置文件 1.0 规范中:

https://www.bluetooth.com/specifications/mesh-specifications/

面向开发人员的网状简介是入门的较短阅读材料: https://www.bluetooth.com/bluetooth-resources/?types=paper&categories=&tags=mesh&keyword=

对于实践经验,SIG 提供了几个带有编码项目的“学习指南”:

https://www.bluetooth.com/bluetooth-resources/?tags=mesh&keyword&types=study-guide

简而言之,配置可以通过包括 GATT(称为 PB-GATT)在内的两个“承载器”执行。由于 Web Bluetooth 支持面向连接的 GATT,我相信您应该能够使用 Web Bluetooth 通过 GATT 实现配置。您将无法从未配置的节点访问 ServiceData 广告包中的设备 UUID,但这对您来说可能不是问题……但取决于详细要求。

希望这有帮助。

附加:要“发送消息”,您需要使用代理节点和代理协议。这允许通过连接使用 GATT 将网状消息发送到您的网状网络/从网状网络发送回网状消息。在 bluetooth.com 上有一个实际使用 Web Bluetooth 的实践学习指南: https://www.bluetooth.com/bluetooth-resources/?tags=mesh&keyword&types=study-guide

另外...您可以在这里看到我演示 Web Bluetooth 控制一个小型(64 个节点)蓝牙网状网络: https://youtu.be/1rxgY1EnmJw?t=1173

martin_bluetooth_sig
2019-05-31

https://github.com/aircable/SmartMesh “蓝牙 SmartMesh 控制器可让您通过 iPhone、Android 或 Chrome 与智能网格进行交互。”

通过 Michael Lawton 引用此讨论主题的评论: https://developer.qualcomm.com/forum/qdn-forums/hardware/bluetooth-connectivity-iot/csr101x-product-family/csrmesh-development-k-59

我尚未验证这一点。

我明白了它正在使用: const MESH_SERVICE_UUID = 0xFEF1

这不是 org.bluetooth.service.mesh_provisioning 0x1827

下一步可能会尝试使用带有 org.bluetooth.service.mesh_provisioning 服务的 Web 蓝牙。

Vincent Scheib
2019-05-30