首页 > 其他分享 >结合ellisys空口分析扩展广播BLE连接配对

结合ellisys空口分析扩展广播BLE连接配对

时间:2024-10-23 19:52:03浏览次数:6  
标签:ADV 耳机 空口 IND 广播 BLE AUX ellisys

背景

BT 5.0开始引入BLE 扩展广播,单个广播可以携带更多的字节数(从legacy的31个字节扩大到251个字节),同时广播的信道也不再拘泥于原来的37,38,39信道,引入辅助信道概念(0-36信道均可),为BLE AUDIO的应用打下了坚实的基础,下面结合手机和耳机的ellisys空口包,来分析BLE AUDIO CIS扩展广播的连接配对过程:

CIS扩展广播

在这里插入图片描述
如上图:绿色框表示耳机在37,38,39三个信道同时发送了ADV_EXT_IND广播,接着在辅助信道(0-36)上出现一个AUX_ADV_IND的广播包,如红色框所示。后面都是如此,先3个ADV_EXT_IND,接着1个AUX_ADV_IND。下面分别看看ADV_EXT_IND和AUX_ADV_IND的内容:

ADV_EXT_IND

在这里插入图片描述如上图,ADV_EXT_IND参数解释如下:

参数详解
PDU TypeADV_EXT_IND广播类型
Adv ModeConnectable / Non Scannable可连接不可扫描模式,就是手机可以连接,但发送scan request不会回复scan response
FlagsAdvDataInfo |AuxPtr标志位,此数据包包含AdvDataInfo 和 AuxPtr字段
Advertising Data ID (DID)0xED7此广播数据的编号
Advertising Set ID (SID)0x0广播集ID
LL Channel9 (data) (RF 10, 2422 Mhz)指明接下来的AUX_ADV_IND在9通道
CA (Clock Accuracy)51 ppm to 500 ppm时钟精度
Offset Units30 us时钟偏移单位
Auxiliary Offset1.290 ms [@1.125 210 000]接下来的AUX_ADV_IND在当前时钟偏移1.29ms
Auxiliary PHYLE 1M使用LE 1M PHY

AUX_ADV_IND

在这里插入图片描述
如上图,AUX_ADV_IND参数解释如下:

参数详解
PDU TypeAUX_ADV_IND广播类型
FlagsBR/EDR Not Supported Yes不支持BR/EDR,也就是不支持经典蓝牙
Resolvable Set IdentifierHash 0xD6ADAFRSI,类似于resolvable random address,通过SIRK解析出此设备的Coordinate Set ID。
Available Sink ContextsUnspecified Media, conversatinonal Game耳机端作为sink支持的应用场景包括未定义,音乐,通话,游戏,指令,语音助手等等
Available Source ContextsUnspecified Conversational Live Ringtone耳机端作为source端支持的应用场景
Tx Power Level127dBm发送功率大小
CategoryEarbud耳机类目
UuidTelephony and Media Audio耳机支持TMAP服务,包括电话终端,单播媒体接收,广播媒体接收
Uuid 1Audio Stream Control耳机支持ASC Service,包括ASE codec config, qos config, stream enable, streaming。
Uuid 2Broadcast Audio Scan耳机支持BAS Service,广播扫描服务
Uuid 3Published Audio Capability耳机支持PAC Service,耳机会公布自己支持多少个端点,每个端点的codec能力,以及支持应用场景
Uuid 4Volume Control耳机支持VC Service,音量控制
Uuid 5Microphone Control耳机支持麦克风控制,控制播放歌曲,上一首,下一首,暂停,跳过等。

扩展广播BLE连接

在这里插入图片描述
如上图所示,手机发起BLE扩展广播连接会在与AUX_ADV_IND同一信道上发送一个类型为AUX_CONNECT_REQ的广播包,耳机回复AUX_CONNECT_RSP,注意在legacy BLE耳机端是不需要回复response,这也是扩展广播连接和legacy广播连接的区别。
关于右边红色框的参数介绍,在我之前的文章有过介绍:https://blog.csdn.net/Jzj1234555/article/details/142498239,这里不再赘述。
在这里插入图片描述
如上图所示,接下来的配对过程会通过如下步骤完成BLE配对工作:

  1. LLCP feature exchange :耳机和手机互相交换支持的feature:

在这里插入图片描述

  1. LLCP Data Length update:用于协商双方最大的接收发送字节数和需要的时间。
    在这里插入图片描述

  2. LLCP LE Channel Reporting Indication:开启信道评估,最小时间间隔1s,最晚2.4s完成一次评估。
    在这里插入图片描述

  3. LLCP Version Exchange: 手机和耳机交互当前支持的蓝牙版本和芯片场家。
    在这里插入图片描述

  4. LLCP Power control:手机和耳机收发数据的功率 在这里插入图片描述

  5. SMP加密:可以参考之前的文章:https://blog.csdn.net/Jzj1234555/article/details/142743229)
    在这里插入图片描述

  6. LLCP Encryption start:完成链路加密,最后进行密钥的分发。
    在这里插入图片描述

标签:ADV,耳机,空口,IND,广播,BLE,AUX,ellisys
From: https://blog.csdn.net/Jzj1234555/article/details/143187312

相关文章

  • Mybatisplus TableInfoHelper:获取entity对应的数据表字段列表
    如题,调用TableInfoHelper#getTableInfo(clazz)这个工具方法可以得到entity类所对应的数据表的字段列表。importcom.baomidou.mybatisplus.core.metadata.TableInfoHelper;importcom.baomidou.mybatisplus.core.metadata.TableFieldInfo;importcom.baomidou.mybatisplus.co......
  • Stable Diffusion 3.5最强模型全家桶来了,三个型号
    就在刚刚,StabilityAI发布了自家最强的模型StableDiffusion3.5,而且是一个全家桶,包含三个版本。链接:https://huggingface.co/stabilityaiStableDiffusion3.5可以满足科研人员、业务爱好者、初创公司和企业的多样化需求,其中包括:StableDiffusion3.5Large:该基础模型......
  • [Ansible实践笔记]自动化运维工具Ansible(一):初探ansible&ansible的点对点模式
    文章目录Ansible介绍核心组件任务执行方式实验前的准备更新拓展安装包仓库在ansible主机上配置ip与主机名的对应关系生成密钥对将公钥发送到被管理端,实现免密登录测试一下是否实现免密登录常用工具ansibleansible—docansible—playbook主要配置文件Ansible模块配置......
  • Jenkins是构建状态为unstable,继续执行后续步骤
    jenkins中shell脚本执行失败,但构建结果仍然显示success的问题_jenkins自动化失败了返回还是成功-CSDN博客jenkin不必要的Executeshell执行失败,导致jenkins都失败的解决-每天1990-博客园(cnblogs.com)jenkins判断构建操作执行成功了还是失败可以通过返回0或1的结果。成......
  • Error: [email protected] has been disabled because it is a versioned formula! It was disab
    报错解释:这个错误信息通常出现在使用Homebrew在macOS系统上安装PHP时。报错表明Homebrew不能安装具体版本的PHP(例如[email protected]),因为这是一个版本化的公式(formula)。Homebrew中的一些软件包允许安装多个版本,并允许你在它们之间切换。这些包被称为版本化公式。如果尝试安装一个具体版本......
  • 超详细的Stable Diffusion(SD)本地部署教程,小白一看就会。
    前言一、StableDiffusion是什么?简单来讲,StableDiffusion(简称SD)是一款AI自动生成图片的软件。我们输入文字,SD就能生成相应的图片,不再像过去那样需要把图片“画”出来或者“拍”出来。有人说,我在学习一个软件之前是不是得先了解它的原理呢?所有的AI设计工具,安装包......
  • el-table新增记录,通过id获行记录的控件焦点
    <el-table:data="formData.list"ref="tabRef"class="my-table"> <el-table-columnlabel="编码"align="center"min-width="150"class="custom-form-item">   <template#default......
  • Future和CompletableFuture的理解
    使用CompletableFuture的方法直接使用CompletableFuture提交任务使用CompletableFuture.runAsync()或CompletableFuture.supplyAsync(),这些方法会使用默认线程池来执行异步任务。适合快速启动简单的异步操作,不需要额外的线程池管理。使用CompletableFuture并指......
  • Error--An incompatible version [1.2.33] of the Apache Tomcat Native library is i
     这个错误表明,当前系统上安装的ApacheTomcatNativelibrary版本不兼容,具体来说:系统安装的TomcatNativelibrary版本是1.2.33,但Tomcat需要至少1.2.34版本。ApacheTomcatNativeLibrary是Tomcat用来加速网络I/O的一个库,特别是在使用APR(ApachePortableRunt......
  • CSC3100 Problem Scale & Subtasks
    RequirementsCode(90%)YoucanwriteyourcodeinJava,Python,C,orC++.Thetimelimitmayvaryamongdifferentlanguages,dependingontheperformanceofthelanguage.Yourcodemustbeacompleteexcutableprograminsteadofonlyafunction.Weg......