BQB RF & FCC 认证测试固件问题汇总及源码
📎 原始文档:https://www.kdocs.cn/l/cghMOlJ6a01e BQB RF & FCC 认证测试固件问题汇总及源码
- 问题汇总
- 修改BQB RF或FCC方法
- 默认为BT_NORMAL即是正常蓝牙模式
- 选择为BT_FCC则是FCC定频模式
- 选择为BT_BQB则是BQB RF测试模式 (注:BQB profile用正常BT_NORMAL蓝牙模式测试)
可视化版本:
- 频偏修改 本文档“BQB RF & FCC 认证测试固件tools包源码”频偏修改:
- 大部分芯片频偏修改方法如下: 使用以下函数进行频偏修改,可同时修改edr和ble,调用位置在蓝牙协议栈初始化接口(btstack_init)后,如图:
extern void bt_osc_offset_ext_save(s32 offset);
bt_osc_offset_ext_save(-55);//参数跟bt_osc_offset_set规则一致,特别注意此函数需要全擦才能清除
参数使用说明:如果测试盒测试到未修改频偏前数值是+20 ,那么就填bt_osc_offset_ext_save(20); 如果测试到是-20 那么就填bt_osc_offset_ext_save(-20);
其他系列参考此文档第12点频偏:蓝牙相关.otl
2. AC112N频偏修改方法如下: 新建如下工程或者直接下载提供的demo,自行修改频偏后,编译完,将生成的efuse_flash.bin文件替换到文档提供的FCC测试包,再下载到芯片即可。
demo(仅供生成修改频偏后的efuse_flash.bin文件,非FCC测试代码)
AC112N_demo_用于频偏修改_非认证代码.rar
3. AC709N频偏修改方法如下: 在蓝牙协议栈初始化接口(btstack_init)后调用如下代码修改即可。
void bt_osc_offset_set(s32 offset);
void bt_osc_offset_save();
//注意!!!709N修改频偏只能设置正值,负值设置无效,若频偏为负,需先通过硬件调为正值,再调用该接口修改
bt_osc_offset_set(15);//参数跟bt_osc_offset_set规则一致,特别注意此函数需要全擦才能清除
bt_osc_offset_save();

发射功率修改 可以在配置工具中按下图修改经典发射功率等级,修改保存之后,需重新运行tools\download.bat 的批处理文件进行升级。
实际到程序中,会在下图位置读取配置工具参数后对功率等级进行配置,也可直接修改下图位置bt_max_pwr_set函数参数修改功率。其中第一个参数是edr的功率等级,对应上图配置工具中“经典蓝牙发射功率”,第四个参数是ble的功率等级,对应上图中“低功耗蓝牙发射功率”。
最大功率不够问题 程序有两张功率表,正常程序默认使用高功率表,配置跑BQB 和 FCC模式下会换成低功率表。最高功率不够的情况下可以在此文档“BQB RF & FCC 认证测试固件tools包源码”处拿源码修改下图位置固定功率等级(最高10),固定等级后会换回原本的高功率表。
(注:此处固定功率等级后,发射功率将固定,FCC上位机无法再修改)
701手表芯片固件下载失败报错 701手表芯片FCC&BQB固件下载失败报错如下
整改方法:替换文件br28loader.bin(手表).rar
BLE使能 配置为BQB FCC模式后,在下图位置配置是否使能ble,用户可根据项目需求自行选择是否打开

加key 程序包默认是没有加KEY的,如果IC有烧录了KEY文件,请自行加上对应KEY文件。KEY 文件要添加到tools\download\standard\download.bat 批处理文件中如下图,同时需要将key文件放到对应的路径下,添加完后,要双击运行一下tools\download.bat 的批处理文件。

下载程序时建议使用强制升级工具通过USB线下载
串口波特率为115200,通信脚是USB口的 DP 和DM脚
FCC上位机工具说明
上位机通信软件获取:【金山文档】 FCC工具 https://kdocs.c n/l/cfdMdCVtnqyZ
FCC工具介绍:


固件验证 需先接好串口线并验证样机能跟电脑上位机软件通信,即FCC工具命令能发送成功后,再提供给测试公司。特别提醒进DUT和DTM的测试程序默认都是芯片上电一直再跑,如果样机挂着电池会把样机电池电耗光,因此测试可以通信后要把电池断开,到测试公司再上电,防止电池电耗完。
蓝牙版本修改 参考此文档蓝牙版本部分:BQB profile 测试中常遇到的问题点汇总.doc

增加PA修改 程序中蓝牙初始化完成之后,增加代码如下图,TCFG_RF_PA_TX_PORT和TCFG_RF_PA_RX_PORT 分别是PA的控制引脚TXEN和RXEN,均可自行配置选择任意GPIO。

#ifndef TCFG_RF_PA_TX_PORT
#define TCFG_RF_PA_TX_PORT IO_PORTC_02
#endif
#ifndef TCFG_RF_PA_RX_PORT
#define TCFG_RF_PA_RX_PORT IO_PORTC_03
#endif
#if TCFG_BT_RF_USE_EXT_PA_ENABLE
//设置TX和RX引脚
extern void bt_rf_PA_control_io_remap(u16 tx_io, u16 rx_io);
bt_rf_PA_control_io_remap(TCFG_RF_PA_TX_PORT, TCFG_RF_PA_RX_PORT);
////设置蓝牙接收状态io输出,可以外接pa
bt_set_rxtx_status_enable(1);
#endif
- 常见问题分析:FCC上位机无法通信 1、检测电源,可外接电源测试,不直接用USB供电测试。
2、可在此文档中拿源码,开打印后重新升级确认样机是否有正常跑起来。