TWS耳机信息:Enco Air2

手机信息:onePlus8  ColorOS V12.1

其他准备工作:手机进入开发者模式,打开本地日志开关。可参考上一篇文章 https://www.cnblogs.com/YangARTuan/p/15699960.html

  • 1、蓝牙建ACL链接

  • 2、鉴权加密

2-1、HCI_IO_Capability_Request

基本io能力交互,此处不作详细扩展,有兴趣可以翻看core spec

2-2、HCI_User_Confirmation_Request

tws耳机进配对模式后发靠近发现广播,手机收到广播会弹框显示“连接”或“取消”,手机回复User Confirmation Request Reply则表示手机端点击了“连接”按钮;若手机回复

User Confirmation Request Negative Reply,则表示手机端点击“取消”连接按钮

2-3、HCI_Link_Key_Request

linkkey翻译为链路秘钥,可保证蓝牙传输的安全性;此外更多的是用于解空口日志分析具体蓝牙问题

  • 3、建profile过程

3-1、AVCTP/AVRCP

AVCTP(Audio/Video Control Transport Protocol):媒体播控协议,常用的指令:avrcp paused、avrcp play;由于avrcp基于avctp profile,所以avctp建好也说明avrcp建好了

3-2、A2DP

AVDTP(Audio/Video Distribution Transport Protocol):音频/视频分发传输协议,手机端音乐、视频等媒体业务都是走该协议

3-3、HFP

HFP(Hands-free Profile):用于通话的协议,用于esco/sco业务、AT指令

  • acl断开

TWS耳机蓝牙建连过程_HCI版本的更多相关文章

  1. 蓝牙TWS耳机IBRT的原理初分析

    最近在倒腾TWS对耳的一些东西,看到一些源码,发现一个新概念,IBRT没有搞清楚,抱着吾将上下而求索的态度,详细看了一些代码,查了一些资料,还是发现了不少有价值的信息的.至少,我突然感觉自己懂了一些什 ...

  2. Centos 下oracle 11g 安装部署及手动建库过程

    Oracle 11g 手动建库,在虚拟环境中,不使用DBCA工具进行创建数据库 1.Linux环境的基本配置 2.ip  10.11.30.60 3.Oracle 11g安装过程 ---------- ...

  3. FarBox的建站过程

    FarBox的建站过程 本文转自:http://mosir.org/html/y2012/How-to-build-your-website-by-farbox.html 作者: mosir 时间:  ...

  4. SEO 建站过程复盘

    今天在A5看到一篇关于一个牛站的复盘,整个建站过程值得借鉴. https://www.admin5.com/article/20200218/943930.shtml

  5. MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称

    MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称   INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA. ...

  6. ROS 八叉树地图构建 - 使用 octomap_server 建图过程总结!

    构建语义地图时,最开始用的是 octomap_server,后面换成了 semantic_slam: octomap_generator,不过还是整理下之前的学习笔记. 一.增量构建八叉树地图步骤 为 ...

  7. oneplus8手机蓝牙连接tws耳机无法双击退出语音助手

    通过蓝牙协议栈我们知道,蓝牙耳机可以通过发送AT指令唤醒或者退出语音助手 唤醒语音助手: AT+BVRA=1 退出语音助手: AT+BVRA=0 但是实际操作中发现双击可以唤醒但再次双击却无法退出语音 ...

  8. window下Jekyll建站过程

    > 前言 最近决定要写一个博客,先后注册了博客园和CSND的博客,但是他们的界面主题都不是很符合自己的要求,还没有足够个性化的发挥空间,遂决定自己建一个博客. 网上找了一下教程,感觉都不太详细, ...

  9. Python+Flask+MysqL的web技术建站过程

    1.个人学期总结 时间过得飞快,转眼间2017年就要过去.这一年,我学习JSP和Python,哪一门都像一样新的东西,之前从来没有学习过. 这里我就用我学习过的Python和大家分享一下,我是怎么从一 ...

随机推荐

  1. python在管道中执行命令

    简介 在实际开发中,可能在执行命令过程中,需要在命令的管道中输入相应命令后继续执行,因此需要在执行命令后在命令的管道中输入相应指令 方法一 直接使用communicate向管道传入所需指令,注意如果是 ...

  2. Linux系列之进程管理

    前言 进程是正在运行的程序,Linux系统通常有数百个进程同时运行.本文就来介绍下Linux是如何进行进程管理的. 我们可以看到: 查看进程(Viewing processes) 查找进程(Findi ...

  3. fiddler抓包手机请求(转)

    http://ju.outofmemory.cn/entry/22854 从事前端开发的同学一定对Fiddler不陌生,它是一个非常强大的http(s)协议分析工具,如果你不知道它是什么,可以自行go ...

  4. ROS机械臂 Movelt 学习笔记4 | Move Group 接口 Python

    Python 的使用总是比 C++ 简单许多,Move Group 的 Python 接口更为便捷,也为使用者提供了很多用于操纵机器人和机械臂的函数,能够和 C++ 接口实现相同的功能: 设置机械臂的 ...

  5. ASP.Net Core异步编程

    ASP.Net Core异步编程 概念 什么是异步编程? 异步编程是可以让程序并行运行的一种手段,其可以让程序中的一个工作单元与主应用程序线程分开独立运行,并且在工作单元运行结束后,会通知主应用程序线 ...

  6. html弹出二选一窗口,然后根据点击执行对应的js方法

    html弹出二选一窗口,然后根据点击执行对应的js方法 layer.confirm("我是弹出来的字", {btn:['确认','取消']}, function(){ ...方法1 ...

  7. JZM 的印象笔记 (卷积,分块)

    题面 题目背景 大名鼎鼎的 OI 天花板选手 JZM 对自己的好伙伴--印象笔记有些生疏了 题目描述 作为一名 OI 选手,他的笔记中的字母只包含数字0和1. JZM 在印象笔记中找到了一行 N N ...

  8. C#基础_VS常用快捷键

    Shift+End,Shift+Home,跳转到当前代码的行尾和行首. 1.窗口快捷键 记忆诀窍: 凡跟窗口挂上钩的快捷键必有一个W(Windows): Ctrl+W,W:  浏览器窗口 (浏览橱窗用 ...

  9. 【c#语言简单算法】1-角谷猜想

    角谷猜想 算法目的 一个正整数x,如果是奇数就乘以3再加1,如果是偶数就析出偶数因数2ⁿ,这样经过若干个次数,最终回到1. 这里计算0-100的所有计算过程 代码实现 for (int n = 1; ...

  10. vim编辑器使用详解

    Linux之vim编辑器使用 vim三种模式:命令模式,插入模式,退出模式 移动光标操作 左移动一个字符: 按 h 键 右移动一个字符:按 l 键 下移动一行:按 j 键 上移动一行:按 k 键 移动 ...