【LE Audio】CSIS精讲[6]: BR/EDR侧SDP互操作 从协议配置到兼容实现 发布时间:2026/7/23 22:57:54 在CSIS的整体协议体系中大家的关注重点往往在LE蓝牙侧的协调集识别、安全工具箱和服务特征实现但CSIS并非仅适配LE传输也对BR/EDR传输做了完整的互操作性定义。对于BR/EDR传输的CSIS设备来说SDP就像是设备的服务前台登记系统而SDP Record则是CSIS服务的标准化登记卡只有按规范填写登记卡其他BR/EDR设备才能快速发现、识别并访问CSIS服务这也是跨厂商BR/EDR设备间CSIS互操作的基础。目录一、SDP在CSIS BR/EDR传输中的核心定位二、CSIS SDP Record的核心配置规范必选与条件必选的分层设计2.1 必选字段BR/EDR侧CSIS发现的基础配置2.2 条件必选字段EATT适配的扩展配置2.3 CSIS SDP Record的核心配置表三、CSIS SDP互操作的设计逻辑兼容、复用、轻量化四、CSIS SDP互操作的工程实现要点五、CSIS SDP互操作与LE侧服务发现的对比六、测试不同于LE蓝牙通过广播数据GATT实现服务发现BR/EDR蓝牙的服务发现核心依赖SDP协议所有上层服务要在BR/EDR侧被识别都必须在SDP服务器中注册符合规范的SDP记录。CSIS的SDP互操作性章节就是为CSIS服务制定了在BR/EDR侧的SDP记录格式、字段要求和实现规则同时兼顾了基础ATT和增强EATT的适配做到了轻量化与扩展性的平衡。本文会从SDP在CSIS中的核心定位出发拆解SDP记录的各项配置要求、设计逻辑以及工程实现的关键要点让大家吃透BR/EDR侧CSIS的服务发现底层逻辑。一、SDP在CSIS BR/EDR传输中的核心定位要理解CSIS的SDP互操作性首先要明确SDP协议和BR/EDR传输的关联以及CSIS对双传输层的设计思路。SDP即服务发现协议是BR/EDR蓝牙的核心协议之一作用是让BR/EDR设备查询另一台设备上提供的服务类型、服务的访问方式、协议栈信息等。简单来说在BR/EDR蓝牙中设备不会主动广播服务细节而是通过SDP的查询-响应模式完成服务发现这与LE蓝牙的主动广播模式形成鲜明对比。CSIS的核心设计目标是实现多设备的协调集识别协议本身无传输层绑定既支持LE蓝牙的低功耗场景也支持BR/EDR蓝牙的传统高带宽场景比如传统的无线音箱集群、BR/EDR制式的助听器等。对于LE侧的CSIS服务发现依赖RSI广播数据GATT特征读取而对于BR/EDR侧的CSISSDP是服务发现的唯一入口——设备必须先通过SDP查询到CSIS的SDP记录获取访问该服务的协议栈信息才能进一步通过ATT/GATT访问CSIS的核心特征SIRK、Lock等。换句话说BR/EDR侧的CSIS访问流程是SDP服务发现→协议栈建立→GATT特征访问SDP在其中承担了引路牌的作用而CSIS的SDP互操作性规范就是给这张引路牌制定了统一的制作标准确保所有厂商的BR/EDR设备都能看懂这张牌。同时CSIS的SDP设计也遵循协议栈复用原则SDP记录仅定义BR/EDR侧的服务发现和底层协议栈信息实际的CSIS核心特征操作依然复用GATT/ATT协议与LE侧保持一致。这一设计让厂商无需为BR/EDR侧单独开发CSIS特征的实现逻辑大幅降低了跨传输层的开发成本也是CSIS协议兼容性设计的重要体现。二、CSIS SDP Record的核心配置规范必选与条件必选的分层设计CSIS的SDP互操作性核心是SDP Record的标准化定义协议对SDP记录的各项字段做了明确的必选M、条件必选C.1划分未标注的字段均为排除X不允许厂商自定义。所有字段的设计都围绕让BR/EDR设备能快速识别CSIS服务并建立访问链路展开整体分为三大模块服务类型标识、协议栈描述、浏览分组其中协议栈描述又分基础版和增强版EATT适配。协议中明确CSIS的SDP Record适用于所有在BR/EDR侧暴露的CSIS服务以下是对SDP Record各核心字段的详细拆解同时还原协议的配置要求2.1 必选字段BR/EDR侧CSIS发现的基础配置必选字段是所有BR/EDR侧CSIS设备都必须实现的配置是SDP服务发现的基础缺少任意一项都会导致其他设备无法识别CSIS服务共包含三部分1. Service Class ID List该字段的核心作用是标识服务的类型告诉SDP查询方“这是一台提供CSIS服务的设备”。协议要求该字段为必选且其中的第一个服务类UUID必须为CSIS的官方UUID这是CSIS服务的核心标识也是SDP查询的关键匹配项。简单来说这个字段就是CSIS服务在SDP系统中的身份证号是查询的核心依据。2. Protocol Descriptor List该字段是SDP记录的核心作用是定义访问CSIS服务的底层协议栈协议要求必须按L2CAP→ATT的分层顺序配置同时为L2CAP指定固定的PSM协议/服务多路复用器值为ATT。L2CAP是BR/EDR蓝牙的核心数据链路层协议ATT则是属性协议CSIS的核心特征都基于ATT/GATT实现因此该字段实际是告诉查询方要访问CSIS服务需先建立L2CAP连接再基于ATT协议进行GATT特征操作。PSMATT的配置则是为L2CAP层指定了ATT协议的多路复用标识保证数据能正确路由到ATT模块。3. BrowseGroupList该字段的作用是将CSIS服务归到标准化的浏览分组协议要求必选包含PublicBrowseRoot公共浏览根其他浏览UUID可按需添加。这一配置让CSIS服务被归到BR/EDR设备的公共服务分组中查询设备无需指定具体服务UUID仅通过浏览公共分组就能发现CSIS服务提升了服务发现的便捷性也是蓝牙SIG对所有公共服务的标准化要求。2.2 条件必选字段EATT适配的扩展配置条件必选字段的触发条件为C.1当设备支持EATT增强ATT时为必选否则为排除该字段为Additional Protocol Descriptor List本质是EATT版本的Protocol Descriptor List。EATT即增强ATT承载是蓝牙核心规范中对ATT的增强版本基于增强的L2CAP流控模式实现相比基础ATTEATT拥有更高的传输可靠性、更大的传输带宽适合高数据量的CSIS操作场景比如多设备协调集的批量特征读取。当CSIS设备支持EATT时需要通过该字段向查询方暴露EATT的访问方式配置要求与基础Protocol Descriptor List一致按L2CAP→ATT分层唯一的区别是L2CAP的PSM值为EATT用于标识EATT协议的多路复用通道。协议采用条件必选的设计而非直接将EATT配置纳入必选核心是为了兼顾轻量化和扩展性对于低功耗、简单场景的BR/EDR CSIS设备无需实现EATT可省略该字段减少设备的资源占用对于高带宽、复杂场景的设备支持EATT后按规范配置即可保证了与其他EATT设备的互操作性。2.3 CSIS SDP Record的核心配置表为了更清晰的展示配置要求整理协议中的SDP Record核心配置表包含字段、类型、值、实现状态及核心说明直观呈现各字段的配置规则字段名称类型/值实现状态核心说明Service Class ID List包含CSIS官方UUIDM必选CSIS服务的核心标识SDP查询的匹配依据Protocol Descriptor ListL2CAP(PSMATT)→ATTM必选基础ATT的访问协议栈BR/EDR侧CSIS的默认访问方式Additional Protocol Descriptor ListL2CAP(PSMEATT)→ATTC.1条件必选EATT的访问协议栈仅支持EATT时实现BrowseGroupList包含PublicBrowseRootM必选归到公共浏览根提升服务发现便捷性三、CSIS SDP互操作的设计逻辑兼容、复用、轻量化拆解完SDP Record的配置要求能发现CSIS的SDP互操作性设计遵循三大核心逻辑这些逻辑也是蓝牙SIG制定各类服务SDP规范的通用思路同时贴合了CSIS自身的协议定位1. 与蓝牙核心规范深度兼容CSIS的SDP记录所有配置都遵循BR/EDR蓝牙和SDP协议的核心规范比如Protocol Descriptor List的分层顺序、PSM的分配规则、BrowseGroupList的公共根要求等没有自定义的协议扩展这保证了CSIS服务能被所有符合蓝牙核心规范的BR/EDR设备识别是跨厂商互操作的基础。2. 协议栈与特征层复用设计SDP记录仅定义BR/EDR侧的服务发现和底层协议栈实际的CSIS核心特征操作完全复用GATT/ATT协议与LE侧保持一致。这一设计让厂商无需为BR/EDR侧单独开发SIRK、Lock等特征的实现逻辑仅需在SDP服务器中注册符合规范的SDP记录即可大幅降低了开发和维护成本。3. 分层配置实现轻量化与扩展性平衡采用必选条件必选的配置分层将基础ATT访问设为必选满足所有BR/EDR CSIS设备的基础需求将EATT扩展设为条件必选让高端设备可实现增强功能低端设备可省略以节省资源。这种设计让CSIS的SDP实现能适配不同的硬件场景避免了“一刀切”带来的资源浪费或功能受限。4. 标准化标识保证发现的唯一性要求Service Class ID List中必须包含CSIS官方UUID且为第一个服务类UUID这一配置让SDP查询能通过UUID精准匹配CSIS服务避免了与其他蓝牙服务的混淆保证了服务发现的唯一性和准确性。四、CSIS SDP互操作的工程实现要点从工程开发的角度BR/EDR侧CSIS的SDP实现看似简单但细节上的疏漏会直接导致服务发现失败或互操作问题结合协议规范整理了四大核心实现要点也是厂商开发中最容易踩坑的地方1. 严格遵循UUID和PSM的固定值要求CSIS的Service Class UUID、ATT和EATT的PSM值都是蓝牙SIG分配的固定值开发时必须严格使用官方值不能自定义或复用其他值否则会导致SDP查询匹配失败、数据路由错误。同时Service Class ID List中CSIS UUID必须为第一个项这是协议的硬性要求。2. 精准实现条件必选的判断逻辑Additional Protocol Descriptor List的实现与否完全取决于设备是否支持EATT开发时需要在设备启动时做动态判断若支持EATT则注册该字段若不支持则不注册且不能保留空字段或无效值避免SDP查询解析出错。3. 保证SDP记录的及时注册CSIS的SDP记录必须在设备启动完成且CSIS服务初始化后立即注册到设备的SDP服务器中且注册状态保持在线保证其他设备在任何时候查询都能获取到有效的SDP记录。若SDP记录注册延迟或注销会导致服务发现超时或失败。4. BrowseGroupList的基础配置不可省略开发时必须保证BrowseGroupList中包含PublicBrowseRoot这是蓝牙SIG的标准化要求也是设备能通过公共分组浏览发现CSIS服务的基础。即使设备自定义了专属的浏览分组也不能省略PublicBrowseRoot可将其与自定义分组同时配置。5. 与ATT/EATT模块的联动适配SDP记录中配置的ATT/EATT协议栈必须与设备实际的ATT/EATT模块实现联动比如SDP中注册了EATT的PSM值设备的L2CAP模块就必须开启对应的EATT通道且ATT模块支持EATT的增强特性否则会出现“能发现服务但无法建立连接”的问题。五、CSIS SDP互操作与LE侧服务发现的对比CSIS在LE和BR/EDR侧的服务发现方式虽不同但最终都指向GATT/ATT的特征操作为了更清晰的理解两者的差异和统一整理了核心对比表能直观看到双传输层的设计差异维度LE侧CSIS服务发现BR/EDR侧CSIS服务发现核心协议/方式广播数据RSIService DataGATTSDP协议查询-响应GATT发现入口主动广播设备可被动扫描发现被动查询需主动发起SDP请求底层协议栈LE L2CAP→ATTBR/EDR L2CAP→ATT/EATT配置核心广播数据格式、RSI生成规则SDP Record的标准化配置核心特征访问直接通过GATT读取/操作SDP发现后通过GATT读取/操作从对比能看出CSIS的双传输层设计形散而神不散服务发现的方式因传输层不同而调整但核心的特征操作、安全工具箱逻辑完全统一这也是CSIS能成为蓝牙多设备协同核心协议的重要原因。六、测试题目CSIS的SDP Record中必选字段包含哪些各自的核心作用是什么答案CSIS SDP Record的必选字段包含三个核心作用分别为Service Class ID List标识服务类型包含CSIS官方UUID是SDP查询匹配CSIS服务的核心依据Protocol Descriptor List定义基础ATT的访问协议栈配置L2CAP(PSMATT)→ATT告诉查询方访问CSIS的底层协议方式BrowseGroupList将CSIS服务归到PublicBrowseRoot公共浏览根让查询设备可通过公共分组浏览发现CSIS服务。题目CSIS SDP Record中Additional Protocol Descriptor List的实现条件是什么配置要求是什么答案实现条件该字段为条件必选当设备支持EATT增强ATT时为必选不支持则为排除配置要求与基础Protocol Descriptor List分层一致为L2CAP→ATT唯一区别是L2CAP的PSM值为EATT用于标识EATT协议的多路复用通道。题目SDP在BR/EDR侧的CSIS中承担什么核心作用BR/EDR侧CSIS的完整访问流程是什么答案SDP的核心作用是BR/EDR侧CSIS服务发现的唯一入口通过标准化的SDP Record为查询设备提供CSIS服务的类型标识和访问协议栈信息是跨设备互操作的基础完整访问流程SDP服务查询获取CSIS的SDP Record→根据记录建立L2CAP/ATTEATT协议栈→通过GATT/ATT访问CSIS的核心特征SIRK、Lock等。
2026最新指标测评|企业引入AI数字员工,团队如何筛选适配的服务商? 2026/7/23 22:56:54 随着大模型和AI Agent进入企业业务,越来越多公司开始尝试用AI辅助客服、销售、内容运营和经营分析。但进入实际部署阶段后,企业往往会发现:能对话、能生成内容,不等于能理解业务、执行任务并进入现有工作流程。 普通AI工具不了解…
协程与 Android 生命周期:该何时取消、何时保留 2026/7/23 22:56:54 文章目录第 1 章 生命周期为什么约束协程第 2 章 lifecycleScope:短 UI 副作用踩坑第 3 章 viewModelScope 与 Fragment 取 VM踩坑第 4 章 repeatOnLifecycle:后台停止收集踩坑第 5 章 取消链:从 UI 到 Repository第 6 章 SupervisorJob 与并…
机床测头撞了/测针断了,还有救吗?——分等级损伤评估与维修成本指南 2026/7/23 22:56:54 测头撞了/测针断了,还有救吗?——分等级损伤评估与维修成本指南 编号:JCE-DOCG-WBQ260615 版本:V2.1 适用范围:数控机床(CNC加工中心)在线测量测头系统 适用品牌:雷尼绍(…
Kimi K3登顶前端开发榜引美股震荡,月之暗面遇“算力荒”或6个月内港股上市 2026/7/23 23:57:08 Kimi K3登顶前端开发榜引热议,月之暗面却遇“算力荒”,最快6个月内港股上市Kimi K3爆火后,被誉为“AI六小虎”之一的月之暗面遭遇了“算力荒”。7月19日,月之暗面Kimi团队发布公告,因始料未及的算力挑战,决…
图卷积网络在齿轮箱故障诊断中的应用与实践 2026/7/23 23:57:08 1. 项目背景与核心价值齿轮箱作为工业传动系统的核心部件,其健康状态直接影响整机设备的运行安全。传统故障诊断方法主要依赖振动信号分析,但存在两个关键痛点:一是单一传感器数据难以全面反映复杂故障特征;二是人工特征提取严重依…
端粒延长29%?从“以色列35人”到“中国136人”:高压氧抗衰大样本临床研究的数据解读 2026/7/23 23:57:08 当“祖传文献”迎来中国验证2020年,以色列特拉维夫大学Shai Efrati团队在《Aging》发表研究:35名64岁以上老人经60次高压氧治疗,部分免疫细胞端粒长度增加超20%,衰老T细胞减少近37%。这项研究从此成为高压氧抗衰领域的“祖传文献”…
流程引擎BPM设计之:流程二开的三种模式 2026/7/23 23:57:08 .流程引擎BPM设计之:流程二开的三种模式 摘要 驰骋 BPM 主张:流程可以设计出来,业务却不能写进引擎内核。 流程设计完成后,要用脚本与流程引擎交互,在发送成功、发送前、退回、结束等生命周期点嵌入业务逻辑——这一能…
第一阶段-第8天-NumPy入门 2026/7/23 23:57:08 今日目标 安装并熟悉NumPy理解数组与列表的区别掌握基本的NumPy运算理解向量化的好处 学习内容 1. 安装NumPy pip3 install numpy验证安装: import numpy as np print(np.__version__)2. 创建数组 import numpy as np# 从列表创建 a np.array([1, 2, 3, 4, 5]) pri…
三维空间识别技术在危化品库区安全管理中的应用 2026/7/23 23:56:08 1. 项目背景与核心需求在化工园区、石油炼化等涉及危险化学品存储的场所,库区安全管理一直是重中之重。传统监控手段主要依赖二维平面摄像头和人工巡检,存在监控死角多、报警误报率高、响应滞后等问题。特别是在人员异常停留、未授权进入等场景下&#x…
从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 2026/7/23 0:00:16 更多请点击: https://intelliparadigm.com 第一章:从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 当AI副业主理人不再仅满足于单次服务交付,而是主动构建可复用、可裂变、可…
油泥处理设备哪里能买到 2026/7/23 0:00:16 油泥处理设备哪里有?这是许多从事油田、炼化、清罐业务的从业者最关心的问题。根据河南三丰环保设备有限公司的行业经验,选购油泥处理设备的核心在于设备能否适配当地环保法规与原料特性,而非单纯看价格。该公司总经理王钦田先生指出…
AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 2026/7/23 0:01:16 更多请点击: https://codechina.net 第一章:AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 在对2,346篇跨行业AI生成文案的A/B测试数据进行聚类分析后,我们发现࿱…
Unity与Python本地通信:基于Flask的跨语言数据交换实战 2026/7/22 11:54:37 1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…
科研课题设计全流程:从选题到成果落地的实战指南 2026/7/23 18:59:36 1. 课题设计全流程解析:从选题到成果落地的实战指南课题设计是科研工作者、高校师生以及企业研发人员日常工作中的核心环节。一个优秀的课题设计不仅决定了研究的方向和质量,更直接影响最终成果的学术价值和应用前景。作为在科研一线摸爬滚打多年的从业者…
开发者实测:ChatGPT vs Gemini vs DeepL,谁家PDF翻译的格式保留最完整? 2026/7/22 11:54:53 背景 作为开发者,我经常需要翻译技术文档。最近接了个活:帮团队把300页的英文技术手册翻译成中文。试用了几家主流AI翻译引擎,发现翻译质量差别不大,但格式保留能力的差距让人意外。 本文从开发者视角,对 ChatGPT、Gem…
别再手动拼矩阵了!用MATLAB的triu和tril函数,5分钟搞定随机对称矩阵生成 2026/7/22 15:54:16 别再手动拼矩阵了!用MATLAB的triu和tril函数,5分钟搞定随机对称矩阵生成在数值计算和算法测试中,随机对称矩阵的生成是一个常见需求。无论是机器学习中的协方差矩阵模拟,还是结构力学中的刚度矩阵构建,对称矩阵都扮演着…
数据分析师必学MySQL:从零构建电商销售分析实战 2026/7/22 19:00:43 你是不是也遇到过这样的困惑:想学数据分析,看了很多Python、R语言的教程,结果发现第一步就被卡住了——数据从哪里来?怎么存?怎么查?怎么保证数据准确?很多数据分析教程都默认你已经有了一个干净…
HS2-HF Patch:3步实现HoneySelect2完美汉化与MOD整合 2026/7/22 15:49:47 HS2-HF Patch:3步实现HoneySelect2完美汉化与MOD整合 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF Patch是专为HoneySelect2玩家设计的一站…