本文汇集了关于蓝牙 5.0 几个常见问题的答案,以帮助开发人员更好地了解蓝牙 5.0 的一些新特性。
对于蓝牙 4.1 、4.2 和 5.0 中添加的所有功能,它们在 BLE 连接期间都是可以协商选择的。这一点确保了蓝牙 5.0 设备能够可靠地连接到旧版蓝牙 4.x 设备,并与其进行交互。除了向后兼容性之外,蓝牙 4.1 和 4.2 中的可选功能适用于蓝牙 5.0 .因此,除了 2 Mbps 功能之外,蓝牙 5.0 设备还可支持蓝牙 4.2 的数据长度扩展功能。TI BLE5-Stack 结合了蓝牙 4.1 和 4.2 协议栈现有的所有功能,包括增强的隐私性和安全连接配对。
您只需在应用程序中调用一个新的 API 来请求 BLE 连接使用 2 Mbps PHY 就可以了,这个 API 是:HCI_LE_SetDefaultPhyCmd()
。调用该 API 会操作控制器(链路层)启动所谓的PHY更新过程。
如下图所示,该图显示了对等设备进行协商然后变更链路速度的步骤。如果连接中的两个设备都支持并且都想在 2 Mbps PHY 下传输数据,那么它们之间的连接会切换到 2Mbps 的链路速度,与默认的 1 Mbps 链路速度相比,速度会快一倍。如果对等设备不支持 2 Mbps 功能或者不希望启用,则连接将保持 BLE 默认的 1 Mbps链路速度。用于数据交换的所有 API(例如GATT)在蓝牙 5.0 中是保持不变的。
TI 在 BLE5-Stack SW 用户指南中提供了一个 LE 2M PHY 指南,其中包含有关如何调用此新 API 的所有详细信息。你可以在这里查看。
TI 在 BLE 吞吐量测试中增加了对蓝牙 5.0 高速和长距离模式的支持。该示例在两个 CC2640R2 LaunchPads 上运行,用户可以通过 LaunchPad 上的两个按键在支持的 PHY 之间切换,同时在串口调试工具上记录有效载荷吞吐量和 RSSI 。
您可能有听说 2Mbps 的连接比 1 Mbps 的连接具有“较短的连接范围”。确实与在默认 1 Mbps 模式下运行的 PHY 相比,任何以 2Mbps 模式工作的 PHY(无线电)的灵敏度都将降低 5dB 。虽然这可能听起来像是性能上的巨大损失,但是由于 CC2640R2F 的无线电架构本身进行了改进,使其具有了一流的射频性能,完全能够保证蓝牙高性能模式在个人连接/室内操作环境中的正常运行使用。这就意味在与默认 LE 1 Mbps 下的蓝牙 4.0 设备距离相当的情况下,高速模式下的蓝牙 5.0 设备可以有更快的传输速度。
蓝牙 5.0 中还有另一个经常被忽视的功能:信道选择算法 2(CSA2),它改进了 BLE 的跳频算法。这个功能可以确保每个连接事件与先前的连接事件相比发生在最小频率偏移,从而减少在共享的 2.4 GHz 频谱中受其他设备的“突发”干扰。减少因为干扰导致的丢包重发,能够降低整体功耗以及提高有效吞吐量。还有一点需要注意, “Slot Availability Mask” 功能仅适用于经典蓝牙设备,CC2640R2F 不支持。
除了支持的 2 Mbps高速模式之外, BLE5-Stack 还支持用于在相同发射功率下实现更长连接距离的 LE 编码 PHY 。更长的连接范围是通过使用前向纠错(FEC)来提高接收机灵敏度来实现的。关于编码 PHY 背后的科学知识,以及如何在不增加传输功率的情况下改进链路预算,你可以查看文档 CC2640R2F/BLE5.0 距离测试。
要启用 SDK 中 LE 编码 PHY 的功能,需要启用协议栈的 build_config.opt
文件中的功能。连接首先以默认的 1Mbps 链路速度建立(与蓝牙4.x相同),然后可以通过 PHY 更新过程切换到 LE 编码 PHY 。在 GitHub 上的吞吐量示例中也展示了 LE 编码 PHY 的使用。评估 LE 编码 PHY 能够帮助您测量设备在远距离配置下的实际性能。
需要注意的是在使用蓝牙 5.0 SDK 中的 LE 编码 PHY 配置时,无法使用蓝牙 SIG 认证设备。TI 计划在稍后提供 BLE5-Stack 的更新,以支持蓝牙 5.0 LE 编码 PHY 认证所需的其他功能,如广告扩展等。
蓝牙组网是蓝牙 SIG 宣布即将推出的功能,但还不是蓝牙 5.0 规范的一部分,尚未被 SIG 采纳。大家可以随时关注 Mesh 的动向。
文章所有代码、工具、文档开源。加入我们QQ群 591679055获取更多支持,共同研究CC2640R2F&BLE5.0。