# 蓝牙 API

[English]

- Bluetooth® Common
  - Bluetooth Define
  - Bluetooth Main
  - Bluetooth Device
- Bluetooth® Low Energy (Bluetooth LE)
  - Bluetooth Low Energy GAP
  - Bluetooth Low Energy GATT Define
  - Bluetooth Low Energy GATT Server
  - Bluetooth Low Energy GATT Client
  - Bluetooth Low Energy BluFi
- 控制器 （Controller）& HCI
  - 应用例程
  - API 参考
  - 乐鑫自定义 HCI 命令
- ESP-BLE-MESH
  - Application Examples and Demos
  - API Reference
  - ESP-BLE-MESH Definitions
  - ESP-BLE-MESH Core API Reference
  - ESP-BLE-MESH Models API Reference
  - ESP-BLE-MESH (v1.1) Core API Reference
- NimBLE-based Host APIs
  - Overview
  - Architecture
  - Threading Model
  - Programming Sequence
  - API Reference

ESP-IDF 目前支持两个主机堆栈。基于 Bluedroid 的堆栈（默认）支持传统蓝牙和低功耗蓝牙 (Bluetooth® LE)，而基于 Apache NimBLE 的堆栈仅支持低功耗蓝牙。用户可参考如下信息进行选择：

- 对于同时涉及传统蓝牙和低功耗蓝牙的用例，应该选用 Bluedroid。

- 对于仅涉及低功耗蓝牙的用例，建议选用 NimBLE。在代码占用和运行时，NimBLE 对内存的要求较低，因此适用于此类场景。

蓝牙 API 的示例代码存放于 ESP-IDF 示例项目的 bluetooth/bluedroid 目录下。

下面的示例给出了详细介绍：

- GATT 客户端示例

- GATT 服务端服务表格示例

- GATT 服务端示例

- GATT 客户端安全性示例

- GATT 服务端安全性示例

- GATT 客户端多连接示例

提供有关此文档的反馈