Web 蓝牙可以在 BLE 网状网络中提供节点吗?
我有一个 Web 应用,需要与 BLE 网格中的大约 48 个 BLE 设备进行通信。
我发现 Web 蓝牙可以与一个蓝牙设备配合使用,但找不到是否有办法配置 BLE 网格,然后使用 Web 蓝牙向网格中的节点发送消息。
如果这很重要,我将其放在这里是为了提供信息,即 Web 应用是一个用 Typescript 编写的 Angular 应用。对于 Web 蓝牙,我使用此库 https://github.com/manekinekko/angular-web-bluetooth 。
我怀疑“智能网格”技术不是蓝牙 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
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 蓝牙。