- 博客(40)
- 资源 (31)
- 收藏
- 关注

原创 蓝牙协议 Bluetooth Profile —— GAVDP 中文翻译版
**Generic Audio/Video Distribution Profile**GAVDP_SPEC_V13
2020-07-27 17:12:34
3853

原创 蓝牙协议 Bluetooth Profile —— A2DP 中文翻译版
Advanced Audio DistributionBluetooth@概要文件规范修订版: v1.3.2修订日期:2019-01-21小组准备:音频,电话,和汽车工作组文摘:此配置文件定义了支持高质量音频分发所需的蓝牙设备的需求。需求通过定义音频分发使用模型中蓝牙设备之间的互操作性所需的特性和过程来表达。...
2020-07-22 16:26:06
3167
原创 源码分析简介
二、蓝牙扫描入口分析 1、JNI层调用开始扫描函数:(jni/com_android_bluetooth_btservice_adaptservice.cpp)中startDiscoveryNative() 上面函数又调用协议栈(btif/src)中bluetooth.c文件中的start_discovery();(开始扫描函数接口,在这层中函数实现) 2、(jni/com_android_bluetooth_btservice_adaptservice.cpp) cl...
2021-12-21 14:04:33
886
原创 system/bt目录内容解析
Bluedroid 的代码结构分析system/bt 的主要文件结构及相应功能介绍如下。main目录底下bte_main.cc该功能涉及BTE核心栈的初始化和卸载。bte_main_in_hw_init:负责芯片硬件的初始化bte_main_boot_entry:调用 GKI_init, bte_init.ccBTE_InitStack:初始化 BTE 控制块,如 RFCOMM、DUN、SPP、HSP2 和 HFP 等。核心 stack 必须在创建 BTU task(任务)前调..
2021-12-10 17:49:00
4148
原创 安卓蓝牙问题一般分析步骤
BT问题解决步骤确认问题:需要分清模块(Audio,BT,Power等)声音类问题的大部分是Audio模块的;功耗类问题,优先要求功耗的负责人先进行分析;本地复现:(必现或高概率问题一定要本地复现下)确认复现步骤,排除测试步骤问题(误操作或测试用例不对);对比验证:(必现或高概率问题,最好本地对比验证下)更换对比机,同类型三方apk,车载设备,连接设备;Check Log:需要check测试提供的有效性分析问题以APLog和HCILog为主,log时间点和问题复现需要对应,log
2021-12-10 14:46:26
3890
原创 BT问题调试 -- HFP(AT指令)
HFP基本知识HFP的两个角色:AG和HF;HFP AG角色发起连接请求 HFP HF角色发起连接请求 针对HFP的注意事项必须先有SLC的建立过程,该过程可以由HF/AG的任何一方发起; AT+COPS用来查询运营商网络名称,AG的回应是+COPS:xxx; AT+CIND=?,AG的回应可以看到如下讯息:service(0~1);call(0~1);callsetup(0~3);callheld(0~2);signal(0~5);roam(0~1);battchg(0~1);cal
2021-11-25 21:14:01
3900
原创 BlueDroid 代码框架(曹潇让)
BTIF:1.Co:call-out(bta的调出函数)2.Src:Bluetooth.c: 蓝牙HAL实现btif_av.c: 蓝牙av实现btif_config.c: 存储在本地的BT适配器和远程设备属性(xml)btif_core.c: 包含HAL和BTE接口之间的核心功能函数btif_dm.c:...
2021-11-22 19:10:34
1601
原创 代码提交
前提:提交代码必须保证本地代码与服务器代码状态一直,同时保证本地代码干净提交代码1.新建并切换分支git checkout -b要修改代码时一定要新建并切换分支,在分支上工作。这样不会影响到你的主代码。你可以创建两个分支,一个作为你的base分支 。一个作为工作分支。base分支上 repo sync -c .这是在base分支上同步最新code,然后git checkout -b work 新建并切换分支work,现在你的work分支是在你的base分支代码基础上,是最新的codegi
2020-12-29 21:59:07
771
原创 ADB打开蓝牙,给蓝牙wifi 芯片上下电
【打开和关闭蓝牙BT】 adb root adb shell svc bluetooth enable adb shell svc bluetooth disable【UI指令指令】关闭:adb shell settings put global bluetooth_on 0打开:adb shell settings put global bluetooth_on 1查询:adb shell settings get global bluetooth_on【获取Mac地址】adb s
2020-12-29 20:45:05
771
原创 A2DP connect 代码流程
xref:/frameworks/base/core/java/android/bluetooth/BluetoothA2dp.java通过Binder 通信机制,调用到packages/apps/Bluetooth/src/com.android.bluetooth.a2dp/A2dpService.java下一个内部私有类.接着调用A2dpServive里面得connect()方法A2dpService的connect方法会发一个StateMachine.sendMessage(A2dpSt
2020-09-01 16:40:23
760
原创 HFP A2DP,通话过程中打开蓝牙,A2DP连接失败
操作步骤:1.测试机事先与车载配对2.向辅助机打电话3.在通话过程中,打开蓝牙,让测试机自动连接车载。问题原因:在该特殊设备上,通话过程中连接bluetooth后会马上发出sco建立,建立Command有可能会卡住A2DP的Command处理。修复方法:针对此车载做delay sco建立延时请求。...
2020-08-31 17:58:10
4599
原创 A2DP:蓝牙耳机回连失败(播放音乐过程中,打开之前已配对的蓝牙耳机进行回连,耳机与测试机的媒体音频连接失败)
问题描述:播放音乐过程中,打开之前已配对的蓝牙耳机进行回连,耳机与测试机的媒体音频连接失败。
2020-08-31 16:13:07
6211
原创 HFP:不活跃的车载设备在打电话时,不能挂断电话
Android P:Only active device can hung up call .非 active device 不能挂断电话。step1:车载先连接 手机step2:蓝牙耳机再连接手机step3:辅助机电话呼叫测试机现象:车载接听和挂断电话按钮触摸无效,蓝牙耳机正常。原因:...
2020-08-31 11:43:58
708
原创 A2DP ,将设备加入MTKA2dpSetStandByTime黑名单复测,修复导航杂音,卡音问题
项目场景:step1: 手机连接车载,手机打开导航,导航音频从车载侧传出。问题描述:音质不好,尾音有杂音,卡顿现象。 原因分析:导航语音太频繁的 suspend 和 start 的时候就会卡顿,MTK将改了google的 a2dpStandByTime的黑名单方案,将Google的3000ms改为500ms,所以在重复暂停和播放的过程中,上一句没有播放完的语音buffer会被缓存或被清空,导致本句最后一个字或者下一句首个字会杂音。黑名单相关代码:system/bt/btif/sr
2020-08-28 17:20:41
996
原创 GAP,Timeout问题:打开蓝牙开关,连接一个之前连接过的设备(该设备不在Inquiry的范围内),尝试连接,时间过长。
打开蓝牙开关,连接一个之前连接过的设备(该设备不在Inquiry的范围内),尝试连接,时间过长。操作步骤:a. 打开蓝牙,连接一个耳机设备b. 关闭蓝牙,关闭耳机c. 再打开蓝牙,自动连接耳机(设备已关闭),Timeout时间过长问题原因:MTK底层FW设计的PageTimeout时间是18s8.96s X 2 ,inquiry and page 共存多个Profile(HFP,A2DP,HID)尝试连接,Timeout时间积累,导致Timeout时间太长。修改方法1:packages
2020-08-27 11:25:16
930
原创 GAP,BT device name=248byte 重命名蓝牙设备为为最长字符串长度,另一台与其配对,可用设备蓝牙名称末尾显示特殊符号方块
修改MTK BT device name=248byte时的传输问题
2020-08-25 16:53:32
1983
原创 A2DP :蓝牙耳机和有线耳机听同时连接,音频从有线耳机出来,拔掉有线耳机,音频不能自动切换到蓝牙耳机
网页播放音乐从有线耳机转到蓝牙耳机失败测试步骤:1.设备连接蓝牙耳机2.在网页播放音乐,音乐正常从蓝牙耳机传出3.插入有线耳机,音乐从有线耳机传出4.拔出有线耳机,网页音乐关闭5.播放音乐,音乐从设备传出,蓝牙耳机没有声音6.关闭蓝牙,再重新打开蓝牙,音乐才从蓝牙耳机传出预期结果:第5步音乐可以正常从蓝牙耳机传出实际结果:音乐从设备传出,蓝牙耳机没有声音分析思路这个Android Q上的默认行为,google在Android Q上加入了插入有线耳机后active device的切换
2020-08-18 09:35:03
3234
原创 GAP,蓝牙发送文件失败后,提示的Toast时间过长。
测试机与辅助机配对蓝牙成功后,关闭辅助机蓝牙开关,测试机给辅助机通过蓝牙分享一张图片,提示"蓝牙共享,未发送文件"间隔时间过长,25秒左右测试机与辅助机配对蓝牙成功后,关闭辅助机蓝牙开关,测试机给辅助机通过蓝牙分享一张图片,提示"蓝牙共享,未发送文件"间隔时间应当5秒左右测试步骤:1.测试机与辅助机配对蓝牙成功2.进入设置->蓝牙,选择连接蓝牙偏好设置,选择蓝牙,关闭蓝牙开关3.测试机给辅助机通过蓝牙分享一张图片4.提示"蓝牙共享,未发送文件"间隔时间过长解决方案root cause:
2020-08-13 16:55:18
676
原创 GAP,蓝牙客制化修改,开启可见性:MTK平台打开Bluetooth可见性的设置
**MTK平台打开蓝牙可见性的设置**对端设备只打开Settings界面的蓝牙图标,测试机Scan不到对端设备。只有当对端设备在“设置——蓝牙——与新设备配对”界面时,测试机才能Scan到对端设备。问题: 1. 为什么Settings界面的打开蓝牙图标,测试机不能Scan到对端设备?2. 怎么才能做到Settings界面的打开蓝牙图标,测试机就能Scan到对端设备?解: 1.Android默认的行为是:只有在setting->bluetooth界面,才会开启蓝牙的可见性;只在 sta
2020-07-29 16:33:35
1139
原创 蓝牙协议规范下载地址 Bluetooth Profile Download url
蓝协 协议 下载 官网 网址https://www.bluetooth.com/specifications/archived-specifications/
2020-07-27 09:40:51
1364
1
原创 GAP,Lenovo M8,Q版本对P版本进行配对连接时,弹出的“配对对话框”。 在对端P版本设备上点击Cancel取消配对,Q版本的“配对对话框”没有消失。
Lenovo M8,Q版本对P版本进行配对连接时,弹出的“配对对话框”。 在对端P版本设备上点击Cancel取消配对,Q版本的“配对对话框”没有消失。请问在P上点击取消的时候,Q上的配对对话框如何 “同步”消失?在P上点击cancel后Q上的弹框没有立即消失,是因为Q设备tx了lmp_simple_pairing_number后就收到对方的lmp_accept,这个时候就会向host要数字比较的结果,期间一直在等P设备发LMP_Dhkey_check或者LMP_numberic_comparison
2020-07-14 10:24:08
287
原创 A2DP Profile ,Bluetooth A2DP 卡音,杂音问题的一般处理方法
在A2DP解Bug之前,需do something是使用user load+ 关闭所有的log测试吗?开Wi-FI了吗?单个耳机出现?必现吗?卡因严重吗?一首歌,几次?卡因的时间点,卡一下,还是连续卡?有特殊的操作手法吗?或者场景?空旷的环境,屏蔽室测试是否ok?对比机相同的环境,相同的耳机,相同的时间怎样?硬件测试ok吗?FW版本什么时候更新的?最新版本什么时候,差距大吗?A2DP 影响因素1.确保没有遮挡物(覆盖物会影响数据的空中传输,导致数据包丢失并产生卡顿)2.有没
2020-07-13 11:09:16
5046
3
原创 低功耗蓝牙,BLE 蓝牙时钟同步 方法探讨
公司有个新项目,项目挺新颖的。但是网上没有任何BLE(低功耗蓝牙时间同步的案例),或者说这方面还没有需求,那么大家跟我来一起看一看吧。 需求:利用蓝牙+声音做室内定位系统。 大概原理:蓝牙,发射广播的速度是3*10^8 m/s。蓝牙作为主机A发射的时候,从机B设备默认是瞬间收到的。 声音在空气中传播的速度是340 m/s. 利用这个速度差...
2019-02-20 16:34:23
4682
12
01蓝牙相关图片02蓝牙各种问题总结03蓝牙源码分析04蓝牙bug总结05培训ppt
2021-12-02
5G.zip5G.zip5G.zip5G.zip5G.zip
2021-11-24
BT文档(Profile+案例).zip
2021-11-15
CPAS_signed_Viewer.rar
2020-11-23
Customer_training_Bluedroid_A2DP_CODE (7487900017).pdf
2020-11-20
MTK M8 8766 BT devices name2.diff
2020-08-26
MTK M8 8766 BT devices name1.diff
2020-08-25
Bluetooth概要.pptx
2020-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人