星期日, 20 12月 2020 11:55

Qualcomm 蓝牙耳机FAQ:QCC514x_304x下载程序以及DEBUG方法

女作者
给本文评分
(0 投票)
本文讲解如何在QCC514x平台上下载最新的earbud程序并debug,代码是从Chipcode上下载的,测试版本为CS 0.0.054.1MDE版本为MDE_WIN_2.4.0.158_ext_win_64Toolkit1.0.1.19_x64,开发板型号为官方的CF376 + QCC3040

准备工作:

安装好必要的工具MDE_WIN_2.4.0.158_ext_win_64Toolkit1.0.1.19_x64

如果用USB debug,可以参考我之前在大大通的博文 《QUALCOMM QCC512x\QCC302x 芯片WIN10系统USB DEBUG操作指导》

Chipcode上下载最新的代码。

解压下载的程序到PC,一般下载压缩包的文件名有点长,比如可能是这样的:

qcc514x-qcc304x-src-1-0_qtil_standard_oem_earbud-764bf0b6541e3b626ce153a5ef14ae*****.tar.gz

直接解压到根目录或者更短的目录,并修改文件夹名,因为windows对文件路径有长度限制,所以尽量让文件夹名称短一些,比如这样的路径:

C:\qtil\qcc514x-qcc304x-src-1-0_qtil_standard_oem_earbud.git

 用MDE打开QCC3040的工程:
             
      

先进行编译:build->build all

等待编译完成。

这里建议有杀毒软件或者电脑管家之类的,先退出吧,不然可能编译时间会异常漫长。反正我开不开杀毒软件,时间上差了一倍。

编译完毕后,修改蓝牙地址为奇地址:
        
        
      

将开发板A连接到电脑,然后deploy all

完成后连接另一块开发板B到电脑,修改蓝牙地址为偶地址,再deploy all
      

将两块板子的USB都断掉,打开电源,会听到“power on”的提示音,将两块板子靠近,会听到“pairing successful”的提示音,说明两块板子组队成功。

拿出手机,能收到名为QCC3040的设备,这里只能看到一个设备了,跟之前的平台有两个设备有点不一样了。点击配对即可。

这个时候可以播放音乐测试一下蓝牙,应该没啥问题。

顺便测试一下单地址切换吧:

QCC3040的TWS连接采用的是mirroring方式:


      

假设当前板子A板是Primary,板子B就是Secondary,现在在播放音乐。

将A板接上充电器,按照之前高通的TWS模式,理论分析此时会进行主从切换,板子B会连接手机接着播放音乐,此过程应该是需要5-6S的时间。

现在在QCC3040的板子上测试,主从切换时间是无缝切换,认为的感应不出来。

给人的感觉是在是太牛了。

测试一下两块板子同时DEBUG:

编辑一个脚本文件,内容如下(请根据实际情况填写路径):

C:\qtil\ADK_Toolkit_1.0.1.19_x64\tools\python27\python.exe C:\qtil\ADK_Toolkit_1.0.1.19_x64\apps\fw\tools\pydbg.py -d trb:scar:164130,trb:scar:164137 -f apps1:F:\Devin_Project\QCC304X-514X\qcc3040\54.1\qcc514x-qcc304x-src-1-0_qtil_standard_oem_earbud.git\earbud\workspace\QCC3040-AA_DEV-BRD-R2-AA\depend_debug_qcc514x_qcc304x\earbud.elf 

在超级终端上输入,即可打开debug窗口:
    

这个时候就可以输入一些命令进行测试了:

    

罗列一些简单的命令,意义直接看命令名称应该就能看出来:

apps1A/apps1B.fw.call.appTestPhyStateOutOfCaseEvent()

apps1A/apps1B.fw.call.appTestPhyStateInCaseEvent()

apps1A/apps1B.fw.call.appTestPhyStateOutOfEarEvent()

apps1A/apps1B.fw.call.appTestPhyStateInEarEvent()

apps1A/apps1B.fw.call.appTestIsPrimary()

apps1A/apps1B.fw.call.appTestSetBatteryVoltage(battery_voltage)

打印两个耳机的实时log的话用以下命令:

system.apps1.live_log()

      

最后补充一下。

QCC514x/QCC304x是高通最新推出的SOC,比之前的QCC512x/QCC302x系列有一些新特性:

增加了RAM sizes

支持Qualcomm TrueWirelessMirroring等新特性

支持BLE audio(规划中)

新的软件架构,具有更好的兼容性

查看 3139