产测相关应用
📎 原始文档:https://www.kdocs.cn/l/cdmnMV4MkFLq 产测相关应用
一、测试盒快速测试
快速测试使用说明
见“JL_1T2蓝牙测试盒使用说明.pdf”文档:

快速测试原理
- 样机通过无线或串口方式连接上测试盒,若测试盒设置的是快速测试模式,则给样机发送进入快速测试的指令。让样机进入快速测试模式。同时断开蓝牙。
- 样机进入快速测试模式:实际上就是把快速测试变量 bt_user_priv_var.fast_test_mode 置1 ,标记属于快速测试状态,用于按键测试(通过标志位判断播放按键音,测试时按按键,用耳朵听DAC的声音,有按键音则代码按键硬件正常,可识别)。并把MIC 采样数据直接通到DAC,用于测试MIC是否正常(测试时,对MIC喊话,用耳朵听DAC的声音,若能听到声音则证明MIC硬件线路正常)。 3、测试结束后,关机,再开机则进入正常使用模式。
AC697X 快速测试样机端代码
当样机连上测试盒时(可通过无线或串口方式连接),如果测试盒设置的是快速测试(拨码3打上)。则样机程序以下函数会被调用到。可以在以下函数添加自己想要测试UI方式、关闭蓝牙可连接、可发现等操作:
以下函数就是将MIC的声音直接输出到DAC处理:
以下位置,就是通过快速测试标识,播放的按键音,用于测试按键是否正常:
配注:默认SDK都好这些基本功能了的,只需要根据实际需求自己再做些测试UI修改等,不修改也是可以直接使用。
快速测试进入低功耗后mic声音不正常的处理办法
添加下面的代码,原理就是在快速测试的时候不允许进入低功耗
static u8 fast_idle_query(void)
{
return !bt_user_priv_var.fast_test_mode;
}
REGISTER_LP_TARGET(fast_lp_target) = {
.name = "fast",
.is_idle = fast_idle_query,
};

二、测试盒配对
三、小牛产测
如需使用小牛产测设备进行PCBA产测,提供一份产测协议,以及一个产测demo
经典蓝牙和TWS产测常见功能.otl
协议文档 【金山文档】 杰理小牛产测资料
杰理小牛产测资料.otl小牛测控耳机端demo 【金山文档】 697N_700N_DMDP_LDOIN_UART_小牛测控_test
697N_700N_DMDP_LDOIN_UART_小牛测控_test.rar
【金山文档 | WPS云文档】 可视化小牛产测demo.rar
可视化小牛产测demo.rar--具体使用见产测通信说明文档.otl
【金山文档】 产测通信说明文档
产测通信说明文档.otl
697的流程,库里面在5v in之后一段时间没收到波形,会调用chargestore_close关闭串口通信,如果这里不做处理会导致后续的串口数据无法收到,因此这个接口需要自行做产测状态判断处理,如果不做修改的话,就需要参考测试盒在通信前拉低一会ldoin脚
串口通信方式选择 修改test.c
#define LDOIN 0 //用LDOIN的单线串口通信,波特率9600
#define USBIO 1 //(推荐)用DM DP通信,波特率115200
#define UART_SOURCE USBIO支持mic输出到dac 的测试 不带任何算法,采样率48K,切换命令:
01 e0 fc 02 99 00 结束测试
01 e0 fc 02 99 01 测试mic0
01 e0 fc 02 99 02 测试mic1
更多修改请查阅demo里面的PDF文档常见问题
697用LDOIN做产测串口,收不到串口数据的处理办法


可视化移植,需要把串口发数缓存的申请方式改为dma_malloc DMDP模式

LDOIN模式

四、测试盒接入MES系统说明文档
MES输出功能
3.10. 测试盒MES LOG输出功能 — JL Project Documentation (zh-jieli.com)
TWS使用左耳地址做公共地址时需要修改如下:
#elif (CONFIG_TWS_COMMON_ADDR_SELECT == CONFIG_TWS_COMMON_ADDR_USED_LEFT)
if (charge_store_info->local_channel == 'L'){
memcpy(common_addr, charge_store_info->tws_mac_addr, 6);
}
else{
bt_get_vm_mac_addr(common_addr);
}
if (sizeof(common_addr) != syscfg_write(CFG_TWS_COMMON_ADDR, common_addr, sizeof(common_addr))) {
w_ret = -3;
}
自定义数据mes透传功能
使用特殊版本测试盒固件(内有使用教程):test_box_v1.3.2.a_20240704.rar
添加如下代码到耳机SDK的测试盒指令处理函数
#define CMD_BOX_GET_MES_LOG_INFO 0x0d //MES数据传输
case CMD_BOX_GET_MES_LOG_INFO:
log_info("CMD_BOX_GET_MES_LOG_INFO");
// 填充三元组信息到发送buf
extern u8 *lic;//自定义数据
extern u16 lic_len;//自定义数据的字节长度
memcpy(send_buf + 2, lic, lic_len);
send_len = lic_len;
// 将buf数据发送给测试盒
chargestore_api_write(send_buf, send_len + 2);
break;
