蓝牙规范 Core v5.2 GAP 文档解读1-3章 角色和UI

GAP

GENERIC ACCESS PROFILE  通用访问协议

本协议定义了蓝牙设备发现(空闲模式过程)和连接到蓝牙设备的链接管理方面(连接模式过程)相关的通用过程。还定义了与使用不同安全级别相关的过程。此外,本协议还包括UI级别可访问参数的通用格式要求。

1 前言

设备类型:

设备类型

描述

BR/EDR

支持“基本速率”核心配置的设备,即经典蓝牙设备

LE only

支持“低功耗”核心配置的设备,即低功耗蓝牙设备

BR/EDR/LE

BR/EDR和LE两种都支持的设备

 

不同设备类型对应的章节:

设备类型

章节

BR/EDR

1-8, 12, 15-18

LE only

1-3, 9-12, 15-18

BR/EDR/LE

1-18

 

和要求相关的符号:

  • “M”表示强制支持(必须使用的功能)
  • “O”表示可选支持(可以使用的功能)
  • “C”表示有条件的支持(如果支持某个其他功能,那么这个功能也必须支持)
  • “E”表示在角色中被排除的功能(不准在角色中使用的功能)
  • “N/A”表示不适用(在给定的环境中不可能使用此功能)。

 

2 概述

GAP与更低层级的关系:

蓝牙规范 Core v5.2 GAP 文档解读1-3章 角色和UI_第1张图片

 

BR/EDR角色:

  • A方——发起方,寻呼的设备,启动设备发现,启动物理链路的建立,在现有链接上启动事务。
  • B方——接收方,被呼叫的设备。

 

LE角色:

  • 广播者——发送广播事件、定期广播事件、BIS事件,必须有发射机,可能有接收机。
  • 观察者——接收广播事件、定期广播事件、BIS事件,必须有接收机,可能有发射机。
  • 外围设备——接受LE激活的物理链路的建立,在链接层连接状态中为slave角色,必须有发射机和接收机。
  • 中心设备——发起LE激活的物理链路的建立,在链接层连接状态中为master角色,必须有发射机和接收机。

BIS:Broadcast Isochronous Stream等时广播流 

如果控制器支持,一个设备可以并行操作多个GAP角色。主机根据控制器支持的链接层状态和状态组合决定使用哪个过程、哪个模式。

 

3 UI方面

UI级别蓝牙术语和参数:

参数 定义 UI术语 表示 补充说明
基带、链接层 UI
蓝牙设备地址(BD_ADDR) 设备发现时从远程设备获取 Bluetooth Device Address 48-bit 12位16进制 例:000C3E3A4B69或00:0C:3E:3A:4B:69  
蓝牙设备名称 支持BR/EDR的设备:发出LMP(链接管理协议)名字请求后,获得LMP名字响应
只支持LE的设备:从Device Name特征中获得
BR/EDR/LE都支持的设备:无论名字如何获取,名称要一致
Bluetooth Device Name 最多248 bytes UTF-8 encoded 自定义  
蓝牙万能钥匙(蓝牙PIN) 1、两个蓝牙设备配对建立链接时用来相互认证
2、配对过程中用来生成启动链接密钥
PIN可以通过UI输入,也可以存在设备上
Bluetooth Passkey 6位整数
0x00000000-0x000F423F 
000000-999999 用于SSP(安全简单配对)和SM(安全管理)
PINBB
可能128 bits (16 bytes)
UTF-8 encoded
PINUI
可以最多16个字符
用于传统配对(蓝牙PIN)
设备类别 设备发现过程中通过BR/EDR物理传输获得,只有BR/EDR设备和BR/EDR/LE设备使用物理传输时可以使用 Bluetooth Device Class(major/minor)
Bluetooth Service Type
两者混合在一起时:
Bluetooth Device Type
Device class参考:
https://www.bluetooth.com/specifications/assigned-numbers/baseband/
自定义 设备类别与服务没有一对一的关系。Major device class和minor device class可以用于在服务发现前得知设备最有可能支持的服务。可能指导用户在支持同一服务的多个设备间进行选择。
外观特征 映射为一个图标或字符串,设备发现过程中的设备物理表示 图标/字符串(译为用户语言) 16-bit 自定义  
广播编码 发送加密的BIS时数据的加密,接受BIS时数据的解密 Bluetooth Privacy Code 128-bit
UTF-8 encoded
不少于4 bytes,UTF-8不多于16 bytes,较高安全级别应使用16 bytes  

 

配对:

BR/EDR物理链路上的配对定义在LMP级别(即LMP配对)。

LE物理链路上的配对定义在SM中。

一种情况是用户启动绑定过程,为了在两个蓝牙设备之间创建绑定(也可能是创建安全关系) 而输入密钥,这时,用户被称为执行“绑定(输入密码)”。

另一种情况是设备之前没有共享一个公共链接密钥,用户在建立过程中需要输入密钥,这时,用户被称为“使用密钥进行认证”。

你可能感兴趣的:(蓝牙规范 Core v5.2 GAP 文档解读1-3章 角色和UI)