【问题标题】:Bluetooth-Low-Energy RSSI changes periodically on Android devicesAndroid 设备上的低功耗蓝牙 RSSI 会定期更改
【发布时间】:2016-01-06 03:13:06
【问题描述】:

我注意到在 Android 上接收到的低功耗蓝牙的信号强度是周期性变化的。 下图表示一个 BLE 信标在两分钟内的 RSSI 值。接收 Android 和信标都是静止的,距离为 1 米。我确保有尽可能低的干扰。 Android 是 Nexus 5,但我在其他 Android 设备上也遇到了同样的现象,它们都在 API 21 上运行。我还不能在 iOS 上测试它。

RSSI Graph

您可以看到每 15 秒重复一次 RSSI 有 3 个主要级别,如低 -> 中 -> 高 -> 低 -> 中 -> 高等。

我的猜测是安卓端的原因,不知道是硬件还是软件的原因。

为什么 RSSI 会随时间循环?谁能解释一下?

【问题讨论】:

  • 这是在什么设备上,距离多远?我在 Nexus 5 上制作了类似的图,但没有看到这样的模式。
  • 这是一个 nexus 5。但对于 Nexus 9 和 Nexus 播放器,它也表现出类似的行为。距离为 1 米,信标是 easibeacon Pro。传感器信标也是如此。不得不提的是,这是未经任何过滤的原始数据。
  • 还有一件事:您在另一个答案中写道,信标会根据周围的 Wi-Fi 网络改变其频率。我假设他们会自动执行此操作,而不考虑其他网络,因为他们可能无法扫描周围的网络频率。但这只是我的猜测。在我们的办公室里,有多个不同频道的大量 Wi-Fi 信号。也许在你的地方情况并非如此——或者你有更昂贵的信标,可以根据他们的需要调整频率,而我的不能……?我将再次使用昂贵的 SensorTag 对其进行测试并报告。
  • 所以我也用德州仪器公司的 SensorTag 对其进行了测试,它表现出类似的行为。我注意到的是,信标方向(水平与垂直)对曲线的“幅度”产生了巨大的影响。

标签: android bluetooth-lowenergy rssi


【解决方案1】:

根据Android AOSP - Definition of scan interval and scan window in android source code,任何扫描模式下的扫描间隔都是5000ms。

我假设您的图表是通过使用连续扫描的应用程序生成的 - 即 5000 毫秒的扫描窗口,基本上是连续的。

扫描仪将在每个扫描间隔后在通道 37、38、39 之间旋转,这解释了您观察到的差异。通道 37、38、39 在 BLE 频谱中不连续 - 37 位于 2402Mz,而 39 位于 2480Mz。波长的差异意味着每个通道的多路径(反射干扰)衰减将不同http://www.cl.cam.ac.uk/~rmf25/papers/BLE.pdf - 你说设备是静态的,所以只要没有其他东西在移动,干扰也将是静态的。

在 iOS 上,扫描间隔(前景)isreportedly 40ms 这意味着您不应该体验这种精确的效果。

【讨论】:

    【解决方案2】:

    在阅读了很多关于该主题的内容后,我可能已经得出了答案。

    蓝牙低功耗信标使用三个不同的广告频道,这是它们对跳频的适应,以避免干扰其他 2.4GHz 信号。根据我的测量结果,这比普通蓝牙 (1600/s) 慢得多。

    更多: http://www.argenox.com/bluetooth-low-energy-ble-v4-0-development/library/a-ble-advertising-primer/

    接收到的信号强度明显取决于频率,所以如果频率改变到另一个频道,RSSI是不同的。如何处理现在是一个不同的问题。

    更新: 跟进这个问题后,我必须更新我的言论:

    每5s左右的三个级别很可能不是直接由于beacons慢跳频,而是android设备在频道上单独扫描并在这样的时间间隔后切换到下一个。

    克服这种行为的一种方法是循环启动和停止扫描过程,以便扫描持续时间明显少于 5 秒。开始扫描时,设备似乎总是在同一频道上开始扫描,并且在切换到不同频道之前重新开始扫描。随着重新启动,模式不再可检测 - 缺点是信道是“固定的”并且可能会在该频率上受到干扰。 感谢 Airsource Ltd 让我回到这个问题。

    【讨论】:

    • 广告不会按照您描述的方式进行跳频。广告在所有三个频道上连续传输。除非固件设置非常奇怪,否则它们肯定不会每 5 秒跳一次。然而,Android 设备改变频道的速率是未知的。可以通过让两台设备在不同的渠道上使用不同的数据进行广告来确定...
    • @Airsource Ltd 在处理这个问题几周后,我想出了一个类似的推论,就像你说的那样。我将编辑答案,以便其他人可以从中得到一些东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-04
    • 2016-09-06
    • 1970-01-01
    • 2012-11-22
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多