蓝牙低功耗

蓝牙低功耗（Bluetooth Low Energy，或称Bluetooth LE、BLE，旧商标Bluetooth Smart）也称蓝牙低能耗、低功耗蓝牙，是蓝牙技术联盟设计和销售的一种个人局域网络技术，旨在用于医疗保健、运动健身、信标、安防、家庭娱乐等领域的新兴应用。相较经典蓝牙，低功耗蓝牙旨在保持同等通信范围的同时显著降低功耗和成本。

包括iOS、Android、Windows Phone和BlackBerry在内的大多数移动操作系统，以及macOS、Linux、Windows 8与Windows 10等在内的桌面操作系统，均已原生支持低功耗蓝牙。蓝牙技术联盟（SIG）预测，到2018年超过90%有蓝牙的智能手机将支持低功耗蓝牙。

## 兼容性

低功耗蓝牙不能向后兼容原有的蓝牙协议（下文称经典蓝牙）。蓝牙4.0 规范允许设备同时支持经典与低功耗蓝牙协议。

低功耗蓝牙与经典蓝牙使用相同的2.4 GHz无线电频率，因此双模设备可以共享同一个天线。低功耗蓝牙使用的调变系统更简单。

## 品牌

<image>

2011年，蓝牙技术联盟（SIG）发表了“蓝牙智能”徽标，体现低功耗设备与蓝牙设备的兼容性。

- 具有“蓝牙智能就绪”（Bluetooth Smart Ready）标识的外设兼容经典蓝牙与低功耗蓝牙的双模。
- 具有“蓝牙智能”（Bluetooth Smart）标识的设备仅支持低功耗蓝牙，可以与“蓝牙智能就绪”或“蓝牙智能”设备通信。

根据2016年5月蓝牙技术联盟的品牌信息，蓝牙技术联盟开始逐步停用“蓝牙智能”和“蓝牙智能就绪”标识，恢复使用“Bluetooth”图案标志和文字标识。标志使用新款蓝色。

## 目标市场

蓝牙技术联盟的低功耗技术瞄准多个市场，特别是智能家庭、健康、运动健身部分。主要的优点包括：

- 低功耗，使用纽扣电池就可运行数月至数年
- 小体积、低成本
- 与现有的大部分手机、平板电脑和计算机兼容

## 历史

2001年，诺基亚确定了当时多个未明确的无线技术方案。该公司着手研发一种基于蓝牙标准的无线技术，目标是在降低功耗和成本的同时最小化与现有蓝牙技术的差别。在2004年诺基亚以“蓝牙低端扩展”（Bluetooth Low End Extension）为名将此技术发表。

得益于罗技等合作伙伴在欧盟FP6的 MIMOSA项目中的合作和意法半导体一贯的推进和支持，该技术在2006年10月以品牌名称Wibree公开发布。2007年6月，诺基亚与蓝牙技术联盟成员协商达成一致，Wibree被纳入未来的蓝牙规范，作为一种超低功耗的蓝牙技术，并名为“蓝牙低功耗”。

将蓝牙低功耗整合到蓝牙核心技术规范的工作完成于2010年的蓝牙4.0版本。首款实现4.0规范的智能手机iPhone 4S发布于2011年10月。其余很多制造商在2012年也发布了“蓝牙智能就绪”的设备。

蓝牙技术联盟于2016年6月16日在伦敦举行的媒体活动上正式推出蓝牙5（Bluetooth 5）。出于一个品牌营销的考量，小数点被取消了，这一决定据称是为了“简化营销、更有效地向用户传达益处”。在技术方面，蓝牙5通过增加发射功率或编码物理层的方式将覆盖距离扩大到了4倍，可选的2倍符号速率特性可以使传输速率加倍，通过增加广播数据的长度使数据广播容量增加到8倍，主要应对需要连接整栋房屋的物联网应用。

蓝牙技术联盟在2017年7月18日正式发布了Mesh Profile和Mesh Model规范。使蓝牙低功耗支持家庭自动化、传感器网络等场景的多对多通信。

## 应用

蓝牙技术联盟沿用经典蓝牙的规范内容，为蓝牙低功耗定义了一些profile，这些profile定义了一个设备在特定应用情景下如何工作。制造商应通过在实现中遵循特定的profile以确保兼容性。一台设备可以使用多个profile。

当前所有低功耗应用profile都基于通用属性规范（GATT）。GATT定义了属性，作为通用的封装数据的单位，并定义了如何通过蓝牙连接传输属性从而达到传输数据的目的。蓝牙4.0能够提供低功耗的较高比特率传输。

2014年，CSR（现属高通一部分）发布了CSR Mesh协议。CSR Mesh中各设备使用蓝牙低功耗进行通信。各设备能够为其他设备转发消息，从而实现网格效应。举例来说，借助网格的通信能力，使用一台智能手机就可以关掉整栋建筑的灯光。蓝牙技术联盟已经成立了智能网格（Smart Mesh）研究组，研究并定义用例，纳入到标准规范中。

### 健康护理规范

“蓝牙低功耗”设备在医疗领域中有许多规范。康体佳健康联盟促进了他们与蓝牙技术联盟的合作。

- BLP（Blood Pressure Profile）— 用于血压测量。
- HTP（Health Thermometer Profile）— 用于医疗温度测量设备。
- GLP（Glucose Profile）— 用于血糖监测。
- CGMP（Continuous Glucose Monitor Profile）

### 运动和健身规范

运动和健身规范包括：

- BCS（Body Composition Service）
- CSCP（Cycling Speed and Cadence Profile）— 用于连接到自行车或健身单车传感器，测量节奏和轮速
- CPP（Cycling Power Profile）
- HRP（心率规范）
- LNP（位置和导航规范）
- RSCP（Running Speed and Cadence Profile）
- WSP（Weight Scale Profile）

### 互联网连接

- IPSP（互联网协议支持规范）

### 通用传感器

- ESP（环境感应规范）
- UDS（用户数据服务）

### HID连接

- HOGP（HID通过GATT规范）使蓝牙低功耗的无线鼠标、键盘或其他设备可获得持久的电池续航时间。

### 接近感应

“Electronic leash”非常适合为“始终开启”的设备尽可能延长电池寿命。iBeacon设备的制造商为其设备实现了相应规范，确保与苹果公司设备的接近感应功能兼容。

有关的应用程序规范包括：

- FMP — “查找我”规范 — 允许使用另一个设备让一个设备发出提醒。
- PXP — 接近度规范 — 允许接近感应器检测接近报告器是否在附近。物理接近度可以使用无线电接收器的RSSI值估算，尽管这不是经过绝对校准的距离。一种典型设计是，设备之间的距离超过设定阈值时发出提醒。

### 提醒和时间规范

- 手机提醒状态规范和提醒通知规范允许客户端设备接收通知，例如另一台设备发来的来电通知。
- 时间规范允许客户端设备设置采用服务器设备的当前时间和时区信息，例如手表与手机之间的网络时间。

### 电池

- 电池服务（Battery Service）报告“电池状态”和设备中单个电池或电池组的电量级别。

### 2019冠状病毒病监视

在疫情期间，大多数地方的接触者追踪手机应用都使用了蓝牙低功耗技术，包括中国大陆的通信大数据行程卡、台湾的社交距离App、新加坡的合力追踪、日本的COCOA等。香港的安心出行也计划添加基于蓝牙的接触者追踪功能。

## 实现

### 芯片组

从2009年年底开始，多家制造商已宣布实现蓝牙低功耗集成电路。实现通常采用软件无线电，以便可以用固件升级实现更新标准。

### 硬件

当今的移动设备通常发布同时支持“经典蓝牙”和“低功耗蓝牙”标准的硬件和软件。蓝牙技术联盟 维护有一个设备列表。

### 操作系统

- iOS 5及更高版本
- Windows Phone 8.1
- Windows 8及更高版本
- Android 4.3及更高版本
- BlackBerry 10
- Linux 3.4及更高版本，通过BlueZ 5.0
- Unison OS 5.2

## 技术细节

### 无线电接口

“蓝牙低功耗”技术采用与“经典蓝牙”技术相同的工作频率（2.400 GHz-2.4835 GHz - ISM频带），但使用另一组信道。不同于经典蓝牙的79 1-MHz信道，蓝牙低功耗使用40 2-MHz信道。在一个信道内，数据使用高斯频移调制传输，类似经典蓝牙的基本速率方案；比特率1Mbit/s，最大发射功率10 mW。进一步细节描述在 蓝牙核心规格V4.0 的Volume 6 - Part A（物理层规范）。

蓝牙低功耗使用跳频扩频抵抗窄带干扰问题。经典蓝牙也使用跳频扩展，但细节有所不同；因此，FCC和ETSI将蓝牙技术分类为一个FHSS方案，蓝牙低功耗被分类为一个数字调制技术或直接序列扩频。

技术标准｜经典蓝牙技术｜蓝牙低功耗技术

距离/范围（理论最大值）｜100m｜>100米（>330英尺）

空中数据速率｜1–3 Mbit/s｜125 kbit/s – 1 Mbit/s – 2 Mbit/s

应用程序吞吐量｜0.7–2.1 Mbit/s｜0.27 Mbit/s

活跃连接｜7｜未定义；取决于实现

安全性｜56/128位，以及应用层用户定义｜使用Counter Mode CBC-MAC的128位AES，以及应用层用户定义

健壮性｜自适应快速跳频扩展，FEC，快速ACK｜自适应跳频扩展，Lazy确认，24位CRC，32位消息完整性检查

潜伏时间（从非连接状态）｜典型100 ms｜6 ms

发送数据的最小总时间（影响续航时间）｜100 ms｜3 ms

语音能力｜是｜否

网络拓扑｜Scatternet｜Scatternet

功耗｜参考值1 W｜0.01至0.5 W（取决于使用情况）

峰值电流消耗｜<30 mA｜<15 mA

服务发现｜是｜是

规范概念｜是｜是

主要用途｜移动电话、游戏、耳机、立体声音频流、智能家居、可穿戴设备、汽车、个人电脑、安防、接近传感、医疗保健、运动健身等。｜移动电话、游戏、耳机、立体声音频流、智能家居、可穿戴设备、汽车、个人电脑、安防、接近传感、医疗保健、运动健身、工业等。

更多技术细节见蓝牙技术联盟官方发布的规范。请注意，功耗不是蓝牙规范的一部分。

### 宣告与发现

蓝牙低功耗设备通过广播宣告（advertising）封包的方式被发现。为减少干扰，这使用3个独立信道（频率）完成。宣告设备在这三个频道中的至少一个上发送封包，发送周期被称为宣告间隔。为减少多次连续冲突的机率，每个宣告时间间隔都会增加一个最长10毫秒的随机延迟。扫描器则在扫描窗口时对信道进行监听，扫描周期性重复。

因此，发现设备的等待时间存在概率性，取决于三个参数（宣告间隔、扫描间隔和扫描窗口）。蓝牙低功耗的发现方案采用了周期性间隔技术，for which upper bounds on the discovery latency can be inferred for most parametrizations. While the discovery latencies of BLE can be approximated by models for purely periodic interval-based protocols, the random delay added to each advertising interval and the three-channel discovery can cause deviations from these predictions, or potentially lead to unbounded latencies for certain parametrizations。

### 软件模型

所有蓝牙低功耗设备使用“通用属性规范”（GATT）。蓝牙低功耗提供该应用程序接口了解到操作系统通常基于GATT概念。GATT具有以下术语：

客户端：一个发出GATT命令和请求的设备，然后接受响应。例如一个计算机或智能手机。

服务器：一个接受GATT命令和请求的设备，然后返回响应。例如一个温度传感器。

特征：在客户端与服务器间传递的数据值，例如当前的电池电压。

服务：有关特征的收集，具有一系列操作来执行特定功能。例如，“体温计”服务包括一个温度测量值，以及测量的时间间隔。

描述符：描述符提供有关特征的其他信息。例如指示一个温度值特征的单位（如摄氏度），以及传感器可以测量的最大值和最小值。描述符是可选的——每个特征可以有任何数量的描述符。

某些服务和特征用于管理目的——例如，“通用访问”服务中的型号名称和序列号可作为标准特征读取。服务还可包含其他服务作为子功能；设备的主要功能被称为主（primary）服务，而附加功能被称为次（secondary）服务。

#### 标识符

服务、特征和描述符被统称为属性（attributes），并以UUID标识。实现者可能会为所用的专有格式挑选一个随机或伪随机UUID，但蓝牙技术联盟已预留一系列UUID（范围xxxxxxxx-0000-1000-8000-00805F9B34FB））供标准属性使用。为提高效率，协议中的标识符以16位或32位值表示，而非完整UUID所需的128位。例如，设备信息（Device Information）服务采用短码0x180A而非0000180A-0000-1000-...。完整列表见 蓝牙分配号码在线文档。

#### GATT操作

GATT协议提供了大量用于客户端的命令以发现有关服务器的信息。这包括：

- 发现所有主要服务的UUID
- 使用指定UUID查找一个服务
- 查找指定主服务的辅助服务
- 发现指定服务的所有特征
- 查找匹配指定UUID的特征
- 读取特定特征的所有描述符

除此之外，也提供读（从服务器传输到客户端）和写（客户端传给服务器）特征值的命令：

- 可以指定特征的UUID或句柄（handle）值（由上面的发现命令返回）来读取值。
- 写操作始终需要以句柄来标识特征，但可选是否需要服务器返回响应。
- 长读（Long read）和长取（Long write）可以在特征的数据长度超过无线链路的最大传输单元（MTU）时使用。

最后，GATT有提供通知（notifications）和指示（indications）。客户端可以请求服务器通知一项特征。服务器可以在其变为可用时将该值发送给客户端。例如，温度传感器的服务器可以在每次测量时通知其客户端。这得以避免客户端轮询服务器，造成服务器的无线电路保持运行。

指示（indication）与通知类似，不同之处是它需要客户端响应已收到该消息。

#### 电池影响

读取（服务器到客户端）和写入（客户端到服务器）特征值的命令也已提供：

<image>

蓝牙低功耗的设计使更低功耗的设备成为了可能。包括CSR、Dialog Semiconductor、Nordic Semiconductor、意法半导体、Cypress Semiconductor和德州仪器在内的数家芯片制造商都推出了其为蓝牙低功耗优化的芯片组。外围设备与中央设备有着不同的功耗要求。据信标软件公司Aislelabs的一项研究显示，诸如接近信标等外围设备通常使用一枚1000毫安时的纽扣电池工作1-2年。

相比之下，连续扫描中央设备的同类信标可能在几小时内就消耗1000毫安时。在Android和iOS设备上，电池续航时间可能存在一些差异，具体取决于扫描类型和附近的蓝牙低功耗设备的数量随着芯片组和软件的不断进步，目前智能手机所使用的蓝牙低功耗带来的功耗已可以忽略不计。

#### 拓展阅读

GATT在 蓝牙4.0核心规格 的Volume 3 - Part G有完整描述。