Ble Beacon Gpio read/write

Ble Beacon Gpio read/write

我不是一个 ble guru,我在一些模块上工作以通过配对和 bla bla 公开一些简单的服务:9 我们的一位客户问我是否可以通过信标服务 运行 来控制 mcu gpio。据我所知,信标标准只是一个灯塔,用于检查接近度(流式传输简单数据包 uuid、信号强度等),而执行此类操作的唯一方法是同时公开新服务 运行 和信标(在实践中发送多种类型的数据包)。我不想配对(信标<->设备应用程序)并且不担心竞争条件,如果多个设备set/reset一个gpio,那不关我的事。

我发现了类似的东西https://community.estimote.com/hc/en-us/articles/217429867-What-is-GPIO-How-to-set-it-up-,你觉得怎么样?

是否有库或 eddystone 的扩展可以做到这一点? github?

上的一些项目

我们更喜欢使用 Nordic ble 模块,但如果您知道基于其他 mcu 的解决方案,欢迎您。

感谢您的帮助

标准信标(iBeacon、Eddystone、AltBeacon)是仅传输设备。它们只是以固定速率发送带有唯一标识符的广告。一些制造商将专有配置接口公开为读写蓝牙 LE GATT 服务。但是 没有执行此操作的标准 GATT 服务,制造商特定的方案专门用于设置信标标识符和其他操作参数。

除了 iOS 和 [=35= 的标准蓝牙 LE SDK 之外,我认为没有特定于信标的库或扩展可以帮助 ].为了使用 Nordic BLE 模块实现此目标 您需要构建自己的自定义系统:

  1. 编写公开新蓝牙 LE GATT 服务的自定义 Nordic 固件(位于信标传输固件旁边)。该服务将公开一个可写的 GATT 属性,该属性将控制 GPIO 引脚。

  2. 编写连接到此 GATT 服务的自定义移动应用程序代码(iOS 上的 CoreBluetooth 和 Android 上的 android.bluetooth),并将 GATT 属性写入到控制引脚。

您必须注意的一件事是,连接到 GATT 服务通常会阻止蓝牙外围设备进行广告(这意味着它不会作为信标传输)。因此,您可能希望快速断开连接,以防止移动设备或其他蓝牙中心停止信标传输。