Bluetooth GAP介绍
目录
GAP Profile: Generic Access Profile ,该Profile保证不同的Bluetooth产品可以互相发现对方并建立连接
GAP定义了蓝牙设备如何发现和建立与其他设备的安全/不安全连接。
它处理一些一般模式的业务(如询问、命名和搜索)和一些安全性问题(如担保) ,同时还处理一些有关连接的业务(如链路建立、信道和连接建立) 。
GAP规定的是一些一般性的运行任务。因此,它具有强制性,并作为所有其它蓝牙应用规范的基础
1 GAP协议栈
GAP有如下四个目的
- Profile Role
- 可发现模式和过程
- 连接模式和过程
- 安全模式和过程
2 Profile Role
在BLE下,GAP Role有四种
- Broadcaster : 发送advertising events的设备(有Transmitter, 可能有Receiver)
- Observer : 接收advertising events的设备(可能有Transmitter, 有Receiver)
- Peripheral : 物理链路上接受连接的设备, 在LL层Connection State为Slave(有Transmitter和Receiver)
- Central : 物理链路上发起连接的设备, 在LL层Connection State为Master(有Transmitter和Receiver)
3 用户接口
用户可配置的参数如下
- Bluetooth Device Address : BD_ADDR
- Bluetooth Device Name : the user-friendly name
- Bluetooth Passkey : Bluetooth PIN
- Class of Device : 设备发现阶段用于指示设备类别和支持的设备类别
4 模式
发现模式(Discoverablity Modes)
- Non-discoverable Mode
- Discoverable Mode
- Limited discoverable Mode
- General discoverable Mode
连接模式(Connectability Modes)
- Non-connectable Mode
- Connectable Mode
配对模式(Bondable Modes)
- Non-bondable Mode
- Bondable Mode
5 安全
5.1 认证(Authentication)
认证过程,描述了两个蓝牙设备进行LMP认证和LMP配对的一般过程。过程如下:
5.2 安全模式
安全模式描述了Channel连接建立过程中的涉及的Secure问题
安全模式大体上可分为两种Legacy Security Modes(1、2、3)和Security Mode 4 ,
Legacy Security Modes用于Controller/Host不支持SSP(Secure Simple Pairing)
注意: 设备可能同时支持Security Mode 2(兼容不支持SSP设备)和Security Mode 4
详细有如下四种
- Security Mode 1 : Non-secure
- Security Mode 2 : Service level enforced security
- Security Mode 3 : Link level enforced security
- Security Mode 4 : Service level enforced security
6 Idle Mode Procedures
描述了发起方Inquiry和Discovery的过程
- General Inquiry
- Limited Inquiry
- Name Discovery
- Device Discovery
- Bonding
7 Establishment Procedures
进行下面过程之前需要Discovery过程提供远端设备如下信息
基本信息
- DB_ADDR、Device Access Code
- System Clock
- Page Scan Mode
附加信息
- The Class of device
- The Device name
- The supported Service Classes
有如下三种
- Link Establishment
- Channel Establishment
- Connection Establishment
8 BLE操作模式和过程
在LE物理层通道上可能同时存在多个模式和过程
- Broadcast mode and observation procedure
- Discovery modes and procedures
- Connection modes and procedures
- Bonding modes and procedures
====================== 华丽的分割线 =========================
笔者能力有限,对于GAP目前只能了解这么多
规范中有非常完整的描述
见Core System Package[Host volume] -Part C(Generic Access Profile)
Bluetooth GAP介绍的更多相关文章
- Bluetooth GATT介绍
目录 1. 介绍 2 内容 2.1 Configured Broadcast 2.2 GATT Profile Hierarchy 3 Service Interoperability Require ...
- Bluetooth ATT介绍
目录 1 介绍 2 详细内容 2.1 Attribute Type 2.2 Attribute Handle 2.3 Attribute Handle Grouping 2.4 Attribute V ...
- Bluetooth LMP介绍
目录 1. 介绍 2. 数据包格式(Packet Format) 3. Procedure Rules 4. 通用回应消息(General Response Messages) 5. 设备特性(Dev ...
- Bluetooth Baseband介绍
目录 1. 概述 1.1 Clock(时钟) 1.2 寻址方式 2. 物理信道(Physical Channels) 3. 物理链路(Physical Links) 4. 逻辑传输层(Logical ...
- Bluetooth HFP介绍
目录 1. 介绍 1.1 目的 1.2 使用场景 1.3 依赖关系 1.4 协议栈 1.5 角色 2. 应用层 3. 空白章节 4. 互操作性要求 4.1 介绍 4.2 Service Level C ...
- Bluetooth RFCOMM介绍
目录 1. 介绍 2. 服务概述 2.1 RS-232控制信号 2.2 Null Modem Emulation 2.3 多串口仿真 3. 服务接口描述 4. RFCOMM帧类型 5. RFCOMM帧 ...
- Bluetooth HCI介绍
目录 1. HCI功能 2. HCI Packet 1. HCI Command 2. HCI Event 3. HCI Data 3. HCI传输层 HCI, 主机控制接口(Host Control ...
- Bluetooth L2CAP介绍
目录 1. 通用操作 1. L2CAP Channel 2. 设备间操作 3. 层间操作 4. 操作模式 2. 数据包格式(Data Packet Format) 1. B-Frame 2. G-Fr ...
- Bluetooth SDP介绍
目录 1. 概念 2. 服务记录(Service Record) 3. 服务属性(Service Attribute) 4. 服务类(Service Class) 5. 服务查找 5.1 UUID 5 ...
随机推荐
- win7下loadrunner创建mysql数据库参数化问题解决
问题现象: 安装mysql数据源驱动后,lr创建mysql驱动程序列表没有安装的驱动程序: 安装完mysql ODBC数据源后 2.在控制面板-数据源(ODBC) 3.创建mysql数据源: 4.从l ...
- js:语言精髓笔记7----原型继承
面向对象有三个基本特性:封装,继承,多态:如果都满足的话称为面向对象语言:而部分满足则称为基于对象语言: 数据类型实现模型描述: JavaScript对象模型: 构造过程:函数->构造器 构造器 ...
- 精灵动画Animation对话框组成Idle动画的各精灵
精灵动画Animation对话框组成Idle动画的各精灵 1.3 精灵动画 场景中已经添加了精灵,现在是时候让让它动起来了.读者也许已经从精灵图集中,各精灵的命名中看出来了,这个精灵一共有两种动画状 ...
- LightOJ1360 Skyscraper(DP)
题目大概是,一个数轴上n个线段,每个线段都有起始坐标.长度和权值,问从中取出没有公共交点的线段的最大权和. 取k次是个经典的最小费用最大流问题,不过这题建容量网络有20W个点,离散化最多也要6W个点, ...
- Unity3D shader脚本
Unity中的shader脚本,是用叫做shaderlab的脚本语言来写.这个unity中的shader不只是DX中HLSL写的顶点和像素shader,而应该说是对应着DX中的Effect脚本,定义了 ...
- ural 1155. Troubleduons
1155. Troubleduons Time limit: 0.5 secondMemory limit: 64 MB Archangel of the Science is reporting:“ ...
- Javascript中call的使用
Javascript中call的使用自己感觉蛮纠结的,根据文档很好理解,其实很难确定你是否真正的理解. call 方法应用于:Function 对象调用一个对象的一个方法,以另一个对象替换当前对象.c ...
- php 上传图片
学习地址:http://www.imooc.com/video/2473 <?php header("content-type:text/html;charset=utf-8" ...
- HDU 1007 Quoit Design(二分+浮点数精度控制)
Quoit Design Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- NBOJv2 1022 短信篮球(种类并查集)
Problem 1022: 短信篮球 Time Limits: 1000 MS Memory Limits: 65536 KB 64-bit interger IO format: %lld ...