AC112N系列-入门到进阶开发指导
📎 原始文档:https://www.kdocs.cn/l/ch1bdPNUCWEw AC112N系列-入门到进阶开发指导
文档简介
该文档主要描述 AC112N开发相关的使用说明和注意事项,收集并持续更新开发调试过程中的相关疑问和解答,对SDK介绍文档做一个补充说明,为用户进行二次开发提供参考。
AC112N-SDK项目帮助文档在杰理开发者平台(JL DP)'帮助'处进入,如本文档有与后续帮助文档或工具注释说明冲突,以后者为标准。
第1章 入门指南
1.1 杰理开发资料获取介绍
1.1.1 软件SDK开发包获取
杰理可视化工具-JLStudio上直接获取,若无相应权限,请连续代理或者杰理助理,目前,AC112的芯片版本都是使用下图对应的SDK,带FALSH的芯片,开发时请使用AC112N_FLASH进行开发
目前已释放正式版SDK,普通TWS耳机请用正式版或其之后的补丁开发

1.1.2 110版本获取
杰理可视化工具-JLStudio上直接获取,若无相应权限,请连续代理或者杰理助理
烧录测试讲解:
download_debug_run_flash_pa1_2000000.bat,不用来做功能调试,只用来做"异常调试",不能用于生产.
download_debug_run_rom_pa1_2000000.bat,可以用于功能测试验证。
download_efuse只可以烧录一次。
总结:功能测试验证用 run_rom,异常调试用run_flash,生产用download_efuse.
1.1.3 重写蓝牙名
注意要擦一下VM
首次重写蓝牙名:
多次重写蓝牙名,需要把之前的蓝牙名也加到蓝牙名的后面:
1.1.4 原理图、规格书、芯片用户手册获取
SDK上硬件资料获取,或者代理群会发布相关资料
1.1.5 硬件烧录&下载开发工具获取
联系对应代理;
1.1.6 烧录加密KEY文件获取
联系对应代理;
1.1.7 工程样片(芯片)获取
联系对应代理;
1.1.8 量产芯片购买说明
联系对应代理;
1.2 软件开发环境搭建
杰理WINDOWS环境安装及其他事项.otl
同其它系列,有编译链后工具上直接点击编译即可
1.3 硬件开发板/demo板使用介绍
1.3.1 编译
可视化工具点击编译即可,成功的话会输出对应FLASH的信息
1.3.2 烧录
- 同704N芯片一样,强升工具需要开虚拟串口在可以下载进去设备,不同于704的是,空片可以直接虚拟串口升级; 需要注意,调试前还是要用烧写器过一下,确保下烧写配置符合样机情况
B、虚拟串口的配置,将强升工具的拨码,配置成2、7后,插入电脑,电脑会弹出盘符,按文档配置即可
C、将设备接好线,如下图接线方式,目前仅支持下图三种下载方式,FLASH够大也可以用测试盒空中升级
D、点击编译,设备在线的时候即可下载
补充:使用强升工具升级时,请确保接线无误,虚拟串口在线,且强升工具电压拨到5V!
1.4 固件烧录&下载介绍
1.4.1 下载目录&下载文件介绍

1.4.2 固件加密介绍
在如图所示添加对应的key文件即可
第2章 硬件调试
2.1 系列硬件设计指南
2.2 底噪调试
2.3 距离调试
2.4 静电认证测试
1)静电的解释
静电介绍.otl
2)静电测试及整改方法
静电测试及整改方法-20220706.pdf
2.5 常规设备使用说明
第3章 声学相关开发
3.1 在线调音
- 程序配置
B、烧录好对应程序后,电脑连接上蓝牙、找到对应的端口,然后可视化工具点击连接即可
备注:1.0.0的EQ类型不可更改,2.0.0的EQ全精度开放
1.0.0蓝牙音乐EQ类型不可修改,序号1和序号2已经在EQ曲线首尾固定好类型,需要使用点序号使能使用即可
2.0.0支持全精度EQ
备注:若TWS连接后,在线调音失败,请按下图修改
第4章 SDK开发说明
4.1 SDK架构说明
4.1.1程序目录结构

4.1.2公共应用层

4.1.3耳机应用

4.1.4可视化工具和代码的映射关系
备注:112N这里与其它系列有所区别
可视化工具,修改相关配置,并不会影响实际代码占用flash量的大小,而是只修改了efuse_flash.bin部分bit的内容,代码通过get_cfg_xx相关函数获取到对应的配置,进而执行相关的代码,如下是一拖二获取配置的接口
EFUSE接口如下
4.2 软件debug说明
4.2.1 打印开启设置说明
4.2.1.1 打印开启
默认io和波特率如下
4.2.1.2 开启断言打印
补充:如果出现开打印后,出现死机不恢复,需要把这个配置打开
4.2.1.3 开启系统时间打印

4.2.1.4 开启内存打印
mem_stats();//可以加定时器定时打印出来
4.2.1.5 生成反汇编文件

4.2.2 死机问题debug
5.1. 串口调试 — JL Project Documentation
4.2.3 触摸调试
- 程序配置


- 烧录好对应程序后,电脑连接上蓝牙、找到对应的端口,然后打开内置触摸调试工具选择传出端口号,点击连接即可

内置触摸调试工具具体使用方法可参考 touch_debug_manual.pdf
文档打开方法:
选择时,绿色说明是正确的,请认真阅读确认硬件上是否有问题;
点击OK即可打开文档:
4.3常规开发功能介绍
4.3.1 蓝牙名修改
- 带FLASH的可以直接修改蓝牙名,没有限制
- OTP的蓝牙名不允许无限次修改,efuse留30个字节给蓝牙,每次改动蓝牙名(包括首次的蓝牙名),都会占用这块efuse空间,用完即无;

4.3.2 频偏修改
- 带FLASH的可以直接修改,没有限制
- OTP的不允许无限次修改,只允许两次写入

4.3.3 按键修改
需要先选择对应的按键类型,然后再去对应的按键配置修改,如下图是AD按键示例
如果选用了触摸按键,其中,触摸互斥配置项
保持默认配置即可,用户无需关注这部分功能;
蓝牙天线跟触摸可能会存在互相干扰,影响触摸效果,底层预留的配置,一般情况不使用;后续版本更新会添加使用说明。
4.3.4 按键开关机
电源配置这里选择对应的按键开机时间,若为0ms,则上电自动开机,或者按键按下即刻开机,若为对应时长,则按键按下时间达到对应时长后开机,出仓开机不受该配置影响,出仓即刻开机;关机功能在情景配置里,如下图。
4.3.5 LED修改
具体说明看帮助文档和鼠标停留在小圆圈时弹出的说明
灯效闪烁次数及时长FLASH版本可以自定义修改,具体位置如下,led配置参数说明参考pwm_led_hw.h文件里面的模块说明,灯效示例配置可以参考pwm_led_test.c里面的示例

4.3.6通话算法
AC112N目前只支持DNS单mic的降噪算法,不允许改音频节点类型(默认是DNS节点),选算法的时候直接音频配置这里选择即可,如果选择了ANS,音频节点的名称还是DNS,实际跑的也是DNS
不管音频配置那里选择的是ANS还是DNS,对应调试都是点击下图节点的设置进行修改调试
省电容mic推荐配置,需要加大增益请在通话算法中加大!不要改模拟或者数字增益
4.3.7 提示音配置
- OTP的不允许修改提示音,提示音都在ROM中
- 带FLASH的可以直接修改,但提示音名字要跟原文件的名字一致,原因是代码指定了对应的名字,如果要修改提示音名字,对应代码的名字也要跟着修改
备注:改完后,导出提示音,需要添加到download文件中写入,否则用的还是ROM里面的提示音,允许修改或者单个提示音,代码默认先访问FLASH里的,如无回去访问ROM
4.3.8 情景配置开关
公版发布的时候,会自带客户常规使用的一系列情景卡片(默认情景配置是封进rom的,无法修改,也无法新增,直接点会报文件不存在),这些卡片不允许修改,但可以开关,可以根据自己的需求去关掉一部分卡片,然后再自行添加,添加的方式见下一个小节
4.3.9 情景配置自定义事件



补充:OTP的卡片写入的是efuse,有数量上限,上限值大概是20张左右,具体看自己添加的条件数量,卡片的选择的条件越多,越容易超出上限;
4.3.10 充电配置
充电相关,较以往新增了从充点仓拿出播放提示音的功能,有需要开此配置即可
4.3.11 低电配置
关机电压:当电压低于此值的时候,耳机关机
低电电压与关机电压的差值:但电压低于关机电压+差值的时候,耳机低电预警,可以在情景配置里增加相对应得灯效;低电提示音无需添加,默认一分钟会播报一次
4.3.12 防丢和通话变音

目前SDK没有变音和防丢的提示音,有需要该功能的请根据需要自行添加;
4.3.13 软件升级
112N和704一样,目前支持测试盒串口升级,且测试盒程序需要升级到1.3.4版本,联系FAE获取相关固件
FLASH版本可以支持测试盒无线升级,需要较大的VM空间
4.3.14 开放更多的efuse卡片空间
FLASH版本可以修改
4.3.15 电流平衡开关方法
电流平衡默认打开,关闭步骤如下:
增加这行代码 __this->ef_syscfg.bt_efu_bit.bt_reconnect_current_balance = 0;
4.3.16 可视化工具中添加EQ节点
- 找到下图中的文件config.list p.s. 文件位于可视化工具的JLStudio文件夹内,且注意打开的SDK文件夹要和可视化工具一致。

- 打开文件,删除一行代码:

- 可视化工具上按F5刷新,就可以加eq节点了。
- 加完节点后,再把刚刚删掉的第一行代码撤回,可视化工具再按F5刷新,然后导出配置。
- 此时efuse_convert.js已经改成了EQ全精度了,不用再修改。
- 在config.list文件中增加已经添加的EQ节点(复制EscoUlEq的代码段,修改自己的EQ名称即可)

- 保存后,可视化界面F5刷新即可。
- 代码中修改如下:


4.3.17 开放最大时钟频率到160M


4.3.18 音频流增加节点方法
对应当前使用的具体SDK版本以及选择的封装,找到config.lst文件
将"sdkType": "efuseOtp",这行删除,然后在可视化工具按F5刷新界面,就可以自定义添加节点了:
现在举例添加一个MBlimter节点:
由于MB Limiter节点是32bit输入,需要将EQ节点也改成32bit输出:
改好之后,将之前删除的这行"sdkType": "efuseOtp",代码撤回,重新加回来,然后可视化再按F5刷新,就可以顺利导出配置了:

第5章 特殊版本密钥及功能使用
5.1 补丁——t6mqax110bx3
只有FLASH版本的,OTP是没有补丁的
5.2 功能及使用
功能后续也可能挪到正式SDK上,请留意更新,若无特殊功能开发,请用正式版本SDK,更稳定
5.2.1 APP功能
目前只支持原上和杰理之家,走的协议是GATT over BR/EDR,需要先连接上经典蓝牙之后才可以去连接对应的APP
5.2.2 音乐模式
跟其它系列一样,可以插入SD卡播音乐
5.2.3 耳返
通过这些接口可以判断音频流是否开启,以及开关耳返
5.2.4 EQ切换
开启宏使用,eq参数的设置不支持可视化工具直接设置,需要在代码里设置

5.3 app Lite补丁(C版本芯片)
APP功能支持2M芯片版本SDK已推送,该版本同时也支持TF卡,工具上配置关闭打印即可下载进2M版本芯片
特殊补丁密钥:t6mqax110bx3
5.4 APP/SD卡功能开发(E版芯片)
做APP/SD卡功能以后都用AC112N_FLASH_3.0.0来做(E版芯片),其中4.0.0是用了ROM代码,砍掉了重复的flash代码,适合用作2M芯片开发,但是暂时不支持TWS: