- 取代连接便携式和固定电子设备的电缆。
- 提供稳健、节能且经济高效的解决方案。
- 提升解决方案及其应用的灵活性。
BR/EDR 和低功耗无线电选项支持设备发现、连接建立和连接机制。无线电的最佳选择取决于解决方案的用例或应用。
Qualcomm® Linux® 为以下开发套件提供蓝牙解决方案支持。
| 套件 | 硬件片上系统(SoC) | 蓝牙芯片组 | 蓝牙协议栈 |
|---|---|---|---|
| QCS6490 |
| BlueZ |
| QCS5430 |
| BlueZ |
| IQ-9075 |
| BlueZ |
| IQ-8275 |
| BlueZ |
| IQ-615 |
| BlueZ |
| IQ-x7181 |
| BlueZ |
| IQ-x5121 |
| BlueZ |

图:Qualcomm 连接芯片组框图
蓝牙规范
WCN6750、WCN6856、WCN7850 和 QCA6698AQ 连接芯片组符合蓝牙核心规范 v5.2 或 v5.3。这些芯片组具有以下控制器特性和能力:- 蓝牙低功耗数据速率高达 2 Mbps
- 长距离模式,在 500 Kbps 和 125 Kbps 两种新的更低比特率下具有更好的灵敏度
- 通过使用广播扩展,广播能力提升 8 倍
- 改进的信道选择算法(CSA #2),可提升与其他蓝牙及非蓝牙流量的信道协调和共存效率
BlueZ 协议栈
BlueZ 是一个支持核心蓝牙层和协议的 Linux 蓝牙协议栈。BlueZ 的特性如下:- 符合蓝牙核心规范 v5.4
- 支持多个蓝牙设备
- 为所有层实现套接字接口
- 支持多线程数据处理
蓝牙配置文件与角色
蓝牙配置文件(profile)定义了建立蓝牙连接所需的规范、要求和设备角色。配置文件还决定了设备之间使用的通信协议。 BlueZ 协议栈为连接芯片组支持以下蓝牙配置文件和角色。| 配置文件 | 角色 | 版本 | 芯片组支持情况 | ||
|---|---|---|---|---|---|
| WCN6750 / WCN6856 | WCN7850 | QCA6698AQ | |||
| 通用访问配置文件(GAP) | 中心设备和外围设备 | ✓ | ✓ | ✓ | |
| 串行端口配置文件(SPP) | 客户端和服务器 | v1.2 | ✓ | ✓ | ✓ |
| 基于 GATT 的人机接口设备(HID)配置文件(HOGP) | 主机 | v1 | ✓ | ✓ | ✓ |
| 通用属性配置文件(GATT) | 中心设备和外围设备 | ✓ | ✓ | ✓ | |
| 高级音频分发配置文件(A2DP) | 源(Source) | 非分离式 v1.3 | ✓ | ✕ | ✓ |
| 接收端(Sink) | 非分离式 v1.3 | ✓ | ✕ | ✓ | |
| 音频/视频远程控制配置文件(AVRCP) | 目标(Target) | v1.5 | ✓ | ✕ | ✓ |
| 控制器(Controller) | v1.5 | ✓ | ✕ | ✓ | |
| 免提配置文件(HFP) | 音频网关 | 非分离式 v1.7 | ✓ | ✕ | ✕ |
| 客户端 | 非分离式 v1.7 | ✓ | ✕ | ✕ | |
| 对象推送配置文件(OPP) | 客户端和服务器 | v1.2 | ✓ | ✓ | ✓ |
| 文件传输协议(FTP) | 客户端和服务器 | v1.2 | ✓ | ✓ | ✓ |
| 电话簿访问配置文件(PBAP) | 客户端和服务器 | v1.1 | ✓ | ✓ | ✓ |
| 消息访问配置文件(MAP) | 客户端和服务器 | v1.2 | ✓ | ✓ | ✓ |
支持蓝牙配置文件并发。
通用访问配置文件
蓝牙低功耗 GAP 是现有 BR/EDR GAP 的扩展。它处理设备的以下基本操作:- 发现设备
- 建立连接
- 绑定多个设备
- 建立私密连接
- 解析私有地址
- 发现蓝牙设备的通用过程
- 连接蓝牙设备的链路管理事项
- 与安全级别相关的过程
- 用户界面级参数的通用格式,例如命名约定
串行端口配置文件
SPP 通过虚拟串行端口实现设备之间的无线通信。它支持客户端和服务器角色。 SPP 定义以下要素:- 蓝牙设备使用射频通信(RFCOMM)在两个对等设备之间建立仿真串行电缆连接的要求。
- 向应用程序提供的服务条款。
- 蓝牙设备之间互操作性的特性和过程。
通用属性配置文件
GATT 是一个服务框架,它使用属性协议(ATT)来发现服务,并读取和写入对等设备上的特征值。它支持客户端和服务器角色。 GATT 执行以下功能:- 通过应用配置文件与应用程序交互。 应用配置文件定义了属性集合以及设备间通信所用属性所需的任何权限。
- 指定两个蓝牙低功耗设备如何使用服务或声明、特征和描述符来交换数据。 它不定义属性使用规则。上层应用程序通过使用这些概念来实现功能。
- 将服务、特征及相关数据存储在一个基本查找表中,并为每个条目分配 16 位 ID。
基于 GATT 的人机接口设备配置文件
HOGP 定义了蓝牙低功耗无线通信设备如何使用 GATT 在蓝牙低功耗协议栈上支持 HID 服务。仅支持并验证了主机(Host)角色;HOGP 客户端角色不受支持。
高级音频分发配置文件
A2DP 定义了通过蓝牙连接将高质量音频从一个设备传输或流式传输到另一个设备的要求。例如,将音乐从手机、笔记本电脑或台式机流式传输到无线耳机,以及将音频流式传输到助听器、人工耳蜗或车载中控台。 A2DP 支持以下角色。免提配置文件
HFP 定义了音频网关设备如何连接到免提设备,以实现远程控制和音频连接等功能。 HFP 为设备定义并分配以下配置文件角色。对象推送配置文件
OPP 定义了两个蓝牙设备如何交换对象,例如名片、图像、壁纸、铃声或视频。它允许蓝牙设备:- 从另一个蓝牙设备拉取对象。
- 向另一个蓝牙设备推送对象。
- 与另一个蓝牙设备交换对象。
文件传输协议
FTP 定义了两个蓝牙设备之间交换文件的要求。FTP 支持客户端和服务器角色。它允许蓝牙设备:- 浏览另一个蓝牙设备的文件和文件夹。
- 与另一个蓝牙设备交换文件和文件夹。
- 在另一个蓝牙设备上创建或删除文件和文件夹。
电话簿访问配置文件
PBAP 用于在远程设备和本地设备之间交换电话簿对象。它基于客户端-服务器交互模型,客户端设备从服务器设备获取电话簿对象。在 BlueZ 协议栈中,PBAP 支持以下角色:- 电话簿服务器设备(PSE):包含源电话簿对象。
- 电话簿客户端设备(PCE):从 PSE 检索电话簿对象。
PBAP 支持以下功能:
- 从远程设备下载联系人和通话历史。
- 浏览远程设备上的联系人。
- 选择电话簿对象。
消息访问配置文件
MAP 定义了设备用于交换消息对象的特性和过程。它基于客户端-服务器交互模型,由客户端发起事务。消息对象的类型包括电子邮件(Email)和短信服务(SMS)。 MAP 将消息服务器设备的消息处理能力与客户端设备的用户界面能力相结合,以实现消息的通知、浏览、阅读、删除、生成和发送。在 BlueZ 协议栈中,MAP 支持以下设备角色:- 消息服务器设备(MSE):提供消息存储库引擎。
- 消息客户端设备(MCE):使用 MSE 的消息存储库引擎实现 MAP 功能。
后续步骤
- 要开始验证 BlueZ 协议栈的功能,请参阅 验证 BlueZ 协议栈功能。
- 要了解有关蓝牙架构的更多信息,请参阅 蓝牙软件架构。

