应用笔记|使用 BlueNRG-LP SoC 方案无法扫描到扩展广播包

描述

 

关键字:BlueNRG-LP, 传统广播,扩展广播

 

 

 

目录预览

 

 

 

1 引言2 问题描述3 问题分析与定位4 问题解决5 小结

 

 

 

1. 引言

BlueNRG-LP 是意法半导体第三代低功耗蓝牙单芯片解决方案,兼容低功耗蓝牙 5.2版本。相较于之前的 BlueNRG-1/2 版本,意法半导体对其低功耗蓝牙协议栈进行了升级和优化,引入了 Radio Task 的概念,客户在研发过程中,应切实关注其应用中使用到的Radio Task 数量并在程序中做相应的配置,才能避免相关问题的发生。

 

 

 

2. 问题描述

 

客户使用两块 BlueNRG-LP 评估板,搭建一主一从测试平台,从设备同时发送传统广播包和扩展广播包,主设备能通过事件 “hci_le_meta_event ”下的子事件“hci_le_extended_advertising_report_event”获取到传统广播数据包,但是始终无法同时扫描到扩展广播包。

 

 

 

3. 问题分析与定位

 

第一步测试: 

使用相同的 BlueNRG-LP 评估板(STEVAL-IDB011V1)搭建一主一从测试平台,单从验证上述客户问题的角度,本测试无需动用 IDE 工具,可直接烧录 SDK 中预编译好的可执行示例文件。 

 

从设备端烧录 SDK 程序:STBlueNRG-LP DK

1.x.yFirmwareBLE_ExamplesBLE_BeaconSTEVAL-IDB011V1BLE_Beacon_ExtendedAdv.hex, 该程序能同时支持传统广播和扩展广播的发送。 

 

主设备端烧录 SDK 程序:STBlueNRG-LP DK 1.x.yFirmwareBLE_ExamplesDTMSTEVAL-IDB011V1 DTM_UART.hex,该程序可以和意法半导体提供的 PC 端测试工具 BlueNRG GUI 配合使用,通过该 GUI 工具将该评估板配置成主设备并扫描从设备发出的广播包。可从 GUI 工具界面直接扫描到广播包数据和广播包类型。

 

第一步测试结果,如图 1 所示,可以同时扫描到传统广播和扩展广播。说明 BlueNRGLP 同时支持扫描传统广播和扩展广播是没有问题的。

单片机

 

比较分析与客户平台的区别,从设备烧录的一样的程序,主设备端客户使用的基于 SDK 中BLE_SerialPort 参考示例更改的代码,可初步断定该问题处在客户平台主设备端程序上。

 

第二步测试: 

主设备端重新烧录 SDK 程序:BlueNRG-LP DK

1.x.yFirmwareBLE_ExamplesBLE_SerialPortSTEVAL-IDB011V1BLE_SerialPort_Client.hex, 经过调试,发现也无法同时扫描到扩展广播和传统广播,问题现象和客户描述一致。

 

通过 BlueNRG-LP 编程手册(PM0269) 章节 4 中所述,发现客户问题应该和代码中配置的 Radio Task 数量太小有关,即下图 2 中的宏 NUM_LINKS,当前配置值为 1,即只支持一个 Radio Task。所以无法同时支持扫描传统广播和扩展广播。

单片机

 

 

 

4. 问题解决

 

建议客户将 BLE Serialport_Client 项目的配置头文件 “Serialport_config.h ”中的宏NUM_LINKS 中做如下图 3 中所示的更改,加大 NUM_LINKS 配置值,该宏配置的是BlueNRG LP 在该项目中能支持的最大 Radio Task 的数量。客户需要同时扫描到扩展广播和传统广播,还要求建立连接,所以至少需要支持 3 个 Radio Task。该配置值按要求更改后,重新编译主设备端程序并下载测试,问题解决。

单片机

 

 

4. 小结

 

从 BlueNRG-LP 开始,意法半导体 BlueNRG 系列芯片的协议栈升级到 v3.x 版本,在BLE 不同的应用场景中,如多链接,连接并扫描,连接并广播,连接并扫描和广播等,都需要考虑所在应用中需要支持的 Radio Task 的数量,即宏 NUM_LINKS 的配置值。该值的计算方法在 BlueNRG-LP/LPS 的编程手册中有描述,遇到类似问题时,可建议客户参考相关文档的对应章节。下图 4 中表格为对应 BLE 功能所需的支持的 Radio Task 数量对照表,截取自文档 PM0269。

单片机

 

 

完整内容请点击“阅读原文”下载原文档。

 

单片机

长按扫码关注公众号 

 

更多资讯,尽在STM32

 

点击“阅读原文”,可下载原文档


原文标题:应用笔记|使用 BlueNRG-LP SoC 方案无法扫描到扩展广播包

文章出处:【微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分