我正在使用BLE信标进行室内地理定位。 众所周知,RSSI值永远不准确,但我仍在尝试增强我的应用程序。 那么,我想知道的是 Android如何计算RSSI ?多久一次?
我发现了this article,但我不确定它是否是使用过的......以及它的准确程度。
答案 0 :(得分:3)
首先,Android不会计算RSSI,它会从BLE芯片组接收值。每次接收(广告)分组时,芯片组提供信号强度的估计作为RSSI值。您获取价值的频率取决于。
如果您扫描提供RSSI的广告包,则设备的广告时间间隔是主要因素。可能就是这种情况,因为信标通常只是广播公司。
如果您连接到设备,则使用方法readRemoteRssi()
。您调用此方法的频率基本上决定了RSSI读数的更新速度,但也涉及设备连接参数。
例如,连接间隔指定中央和外围设备之间的数据交换间隔,然后返回空闲状态以节省电量。此设置的值可能介于7.5毫秒和4秒之间。