本文对BES的SDK做简单介绍, 以BES2500ZP/YP的SDK作为例子, 其他BES芯片SDK框架其实也大同小异, 适合刚开始接触BES蓝牙芯片的朋友, 读完本文可以对BES的SDK有个初步的基本的认识
IBRT TWS介绍
- IBRT全称为Intelligent Bluetooth retransmission technology 译为智能蓝牙传输技术(类似于苹果Airpods的监听技术, 从耳耳机监听主耳与手机的播放, 来实现与主耳的音频播放一致)
- 主耳与从耳都能从手机接收到音频数据, 都属于A2DP Sink角色, 手机属于A2DP Source角色
- 只有主耳能与手机进行交互, 从耳通过BES私有L2CAP协议(BESAUDIO, 类似BT SPP或BLE的透传的方式来与主耳进行通信), 间接的控制手机
开发环境
软件开发环境
- 目前最新SDK是用WSL的开发环境, 详细见BES WSL开发环境搭建指南
- 旧的SDK, BES2300之前使用的是Windows的开发环境, 可以参考BES Windows开发环境搭建
- DEBUG LOG的获取可以参考BES平台日志调试方法
硬件开发环境
BES官方提供 EVB 黄色底板和芯片小板, 其中黄色的底板可以兼容各个型号的芯片小板, 芯片小板上有差分 LN/LP、RN/RP 输出, 以及 MIC 输入, 目前下载是通过 UART 下载, log 信息也是通过 uart 上传到 PC 端. 切换供电方式时需要改变跳帽
开发工具
主要有: 烧录工具, 语音通话在线调试工具, EQ在线调试工具, DRC在线调试工具, ANC在线调试工具, ANC产线校准工具, BQB定频工具等, 各工具均有详细的使用说明, 这里不再详细介绍
- 蓝牙产线烧录工具
该工具提供生产线的固件烧录工具, 最多可支持 8 路同时烧录, 并且支持蓝牙频偏校准, 支持修改蓝牙名称、蓝牙地址、BLE 名称、BLE 地址等信息, 一般界面如下
- 语音通话调试和dump工具
该工具提供在线通话质量调试, 可支持调试通话回声, 通话上下行噪声抑制, 上下行通话EQ等 - EQ在线调试工具
该工具提供音乐EQ的在线调整, 试听, 最多可支持20段软件IIR EQ调试
下拉菜单选择端口号(具体端口号视实际PC情况而定), 单击connect按钮连接(需要
事先安装USB转串口芯片驱动, 连续播放音乐) - ANC在线调试工具
根据腔体特性调试出符合要求的主动降噪滤波器数据, 将工具目录下的coef文件夹拷
贝到ANC产线校准工具目录下, 供产线工具使用, 主动降噪的数据会由ANC工具单独烧录到flash的特定区域, 不影响蓝牙固件的正常烧录
- ANC产线校准工具
该工具提供产线批量校准ANC滤波器的增益, 原则上每个耳机头的最佳增益值都不一
样, 都需要校准一遍, ANC数据烧录不限制次数
- BQB定频工具
BQB工具目前主要用于三项测试: SIGTEST信令测试, NOSIGTEST非信令测试, VCO TEST单载波测试, 一般配合RF工程师与频谱仪CBT或者网分配合使用, 调试或检测RF的性能指标
SDK基本框架说明
SDK目录结构如下图
apps目录
主要存放上层应用相关的软件
config目录
该文件夹中存放基础差异化配置
target.mk文件中主要是宏定义的开关, 包含 DEBUG 信息开关、差分/单端输出、默认音量大小、音乐 EQ 开关、通话算法的开关等.
tgt_hardware.c和 tgt_hardware.h文件中存放基础配置, 如按键、LED灯、蓝牙默认信息、音量表、EQ 参数、ANC 默认参数等.
- 电量信息配置
默认低电提示电压, 关机电压和充满最大电压的设置
- 音量表
对应手机上每调节一格音量的音量等级
- 默认蓝牙信息
若烧录的时候没有填写工厂区的信息, 则使用如下蓝牙信息
- LED灯配置
配置LED所使用的IO口, LED灯数量, VOLT DOMAINS和IO口默认电平输出, CFG_HW_PWL_NUM代表LED的数量
- 按键的配置
设置按键使用的IO口, 按键按下产生的KEY CODE, VOLT DOMAINS和默认上下拉的配置, CFG_HW_GPIOKEY_NUM代表按键的数量
out目录
编译成功的输出文件会存放在 out 目录下的对应工程文件夹下, 以.bin 的文件形式存放, 工具烧录的时候选中该文件即可
platform目录
该目录下主要存放一些底层驱动文件(硬件驱动, RF驱动等), 正常情况下不需要修改
其他目录
rtos目录 (存放操作系统代码, 代码使用RTX嵌入式操作系统)
scripts目录 (存放链接和编译相关脚本)
services目录 (存放蓝牙协议相关代码)
tests目录 (存放测试相关代码)
utils目录 (存放加密, 校验等工具集)