blob: 4ae19a4af023e5794c2c6a9f7ea8de626a21e689 [file] [log] [blame]
.. _bluetooth_api:
Bluetooth API
#############
.. contents::
:depth: 1
:local:
:backlinks: top
This is the full set of available Bluetooth APIs. It's important to note
that the set that will in practice be available for the application
depends on the exact Kconfig options that have been chosen, since most
of the Bluetooth functionality is build-time selectable. E.g. any
connection-related APIs require :option:`CONFIG_BT_CONN` and any
BR/EDR (Bluetooth Classic) APIs require :option:`CONFIG_BT_BREDR`.
Generic Access Profile (GAP)
****************************
.. doxygengroup:: bt_gap
:project: Zephyr
Connection Management
*********************
.. doxygengroup:: bt_conn
:project: Zephyr
Generic Attribute Profile (GATT)
********************************
.. doxygengroup:: bt_gatt
:project: Zephyr
Mesh Profile
************
.. doxygengroup:: bt_mesh
:project: Zephyr
Universal Unique Identifiers (UUIDs)
************************************
.. doxygengroup:: bt_uuid
:project: Zephyr
Logical Link Control and Adaptation Protocol (L2CAP)
****************************************************
.. doxygengroup:: bt_l2cap
:project: Zephyr
Serial Port Emulation (RFCOMM)
******************************
.. doxygengroup:: bt_rfcomm
:project: Zephyr
Data Buffers
************
.. doxygengroup:: bt_buf
:project: Zephyr
Persistent Storage
******************
.. doxygengroup:: bt_storage
:project: Zephyr
HCI Drivers
***********
.. doxygengroup:: bt_hci_driver
:project: Zephyr
HCI RAW channel
***************
HCI RAW channel API is intended to expose HCI interface to the remote entity.
The local Bluetooth controller gets owned by the remote entity and host
Bluetooth stack is not used. RAW API provides direct access to packets which
are sent and received by the Bluetooth HCI driver.
.. doxygengroup:: hci_raw
:project: Zephyr