我是第一次接触BLE beacons,我有一些想法,我可以找到很多数据格式的例子,但关于扫描请求和响应的信息并不多。
我有一些关于“可扫描信标”的问题,什么是允许的,什么是不允许的。我想让信标在两种模式下运行。
我发现扫描请求是固定的--它们似乎没有包含描述扫描仪所需内容的有效负载。
扫描响应是否已修复?
基本上-没有形成连接
如果我的平板电脑应用程序在信标中看到特定的UUID,我希望它向设备发送一个扫描请求以请求更多信息,我想要发送的响应信息将无法容纳在信标有效负载中。我可以将其分割--但这似乎是一个错误的想法。
有什么建议吗?
问题的第二部分是使信标成为模式,在正常意义上,信标每5秒传输一次。
然后,当应用程序靠近时,它会切换到更频繁的频率,并交错其他类型的信标。near by应用程序将-例如发送一条“我在这里”消息-最终如果人类在一段时间(20秒?)后离开。信标又回到了低速率。
发布于 2018-05-27 03:04:20
扫描请求具有定义的格式,不包括任何自定义负载。它只包含两个字段(都是6字节长):TxAddr和RxAddr。您不能将任何内容与扫描请求PDU一起发送到您的设备。
扫描响应也具有预定义的格式,但可能包括自定义有效载荷(最多32字节)。
发布于 2018-05-27 03:46:31
蓝牙LE信标在很大程度上符合一组标准行为:
没有现成的蓝牙LE信标可以做你想做的事
当然,您也可以构建一个定制的蓝牙LE设备,该设备具有标准的引导功能以及您想要的额外功能。也就是说,您可能必须使用连接(或从移动设备启动的外部广告的BLE扫描)来向您的自定义BLE信标设备发送信号以支持这些功能。这是因为扫描请求包没有数据字段,正如@mike-petrichenko在他的回答中所说的那样。您将需要使用其他东西来命令您的自定义信标。
https://stackoverflow.com/questions/50545518
复制相似问题