首页 > 解决方案 > 蓝牙应该如何选择合适的phy层?

问题描述

我将提出一些与蓝牙 IP 相关的解决方案。我在主机层中提出我的解决方案。

  1. 我的问题是如何为我的解决方案选择最好的 phy?在我的方法中,我需要长怒、低功耗和大数据包传输。

  2. phy 提供的主要功能是什么?我所知道的是 phy 会影响范围、吞吐量和功率。是全部还是还有什么我不认识的?

  3. 我的设备很小,可以使用纽扣电池。我没有音频传​​输。我应该选择 EDR PHY、BR PHY、LE 2M PHY、LE 1M PHY 还是 LE Coded PHY?

  4. 是否可以根据 BL 链路质量使用不同的 PHY 来实现特定的应用需求?有一篇题为“BLE 5 的新 PHY 模式的性能和权衡”的论文展示了如何根据 BL 链路质量选择最佳 phy。

  5. phy对以下有影响吗?如果是这样,应该考虑 phy 的什么特性?

    a) 每个连接事件支持的数据包

    b) 支持的最大 ATT MTU 大小

    c) 最大支持的链路层数据包大小

标签: bluetoothbluetooth-lowenergybluetooth-gatt

解决方案


如果我们谈论 BLE,从无线电的角度来看,三种不同的 PHY 非常相似。您需要知道的是,当收音机打开时,它们通常消耗基本相同的电流(不是能量)(有一些小的差异)。不同之处在于,无线电需要以更短的比特率开启更长的时间(因此总共消耗更多的能量),而更高的比特率需要更短的时间。与较低的比特率相比,较高的比特率会导致更差的交付成功率。因此,一切都只是范围、速度和能源使用之间的权衡。

请注意,BLE 无线电通常一次只能执行一个无线电操作,因此通过 LE 数据包长度扩展,编码 PHY 数据包的最大长度可能需要 17 毫秒,这可能会降低固件安排其他活动的能力,例如扫描或处理另一个连接。在链路层上,两个端点可以协商最大时间和最大数据包大小,所以是的,您最终可能会遇到最大数据包长度取决于所使用的 PHY 的情况(但链路层会将其分段,因此不会对主机方来说不是任何问题)。您还可以意识到,与其他 PHY 相比,在一定时间内,使用 2M PHY 可以容纳更多的数据包,例如,一个连接事件必须结束时由固件决定最后期限。

另请记住,要使用 Coded PHY 建立连接,您需要使用新的“扩展广告”,它与不支持 Coded PHY 的设备或支持 Coded PHY 但未设置扫描的设备不向后兼容使用编码的 PHY。

建立连接后,您可以随时更改 PHY。例如,如果您监控 RSSI 并检测到信号质量的变化,您可以更改 PHY。

ATT MTU 由主机层决定,与链路层完全分离。虽然,当然,程序员可能出于某种原因决定在使用 Coded PHY 时使用更短的 MTU,但我还没有听说有人这样做。

不要忘记,您还可以更改无线电的 TX 功率以增加您发送的数据包将达到的范围(和电流消耗)。您还可以选择具有更好RX灵敏度的芯片,以便在接收数据包时获得更好的范围。或者使用天线放大器。


推荐阅读