Bluetooth® Device APIs

Overview

Bluetooth device reference APIs.

API Reference

Header File

  • components/bt/host/bluedroid/api/include/api/esp_bt_device.h

  • This header file can be included with:

    #include "esp_bt_device.h"
    
  • This header file is a part of the API provided by the bt component. To declare that your component depends on bt, add the following to your CMakeLists.txt:

    REQUIRES bt
    

    or

    PRIV_REQUIRES bt
    

Functions

const uint8_t *esp_bt_dev_get_address(void)

Get bluetooth device address. Must use after "esp_bluedroid_enable".

Returns

bluetooth device address (six bytes), or NULL if bluetooth stack is not enabled

esp_err_t esp_bt_dev_set_device_name(const char *name)

Set bluetooth device name. This function should be called after esp_bluedroid_enable() completes successfully.

A BR/EDR/LE device type shall have a single Bluetooth device name which shall be identical irrespective of the physical channel used to perform the name discovery procedure.

Parameters

name -- [in] : device name to be set

Returns

  • ESP_OK : Succeed

  • ESP_ERR_INVALID_ARG : if name is NULL pointer or empty, or string length out of limit

  • ESP_ERR_INVALID_STATE : if bluetooth stack is not yet enabled

  • ESP_FAIL : others

esp_err_t esp_bt_dev_coex_status_config(esp_bt_dev_coex_type_t type, esp_bt_dev_coex_op_t op, uint8_t status)

Config bluetooth device coexis status. This function should be called after esp_bluedroid_enable() completes successfully.

Parameters
  • type -- [in] : coexist type to operate on

  • op -- [in] : clear or set coexist status

  • status -- [in] : coexist status to be configured

Returns

  • ESP_OK : Succeed

  • ESP_ERR_INVALID_ARG : if name is NULL pointer or empty, or string length out of limit

  • ESP_ERR_INVALID_STATE : if bluetooth stack is not yet enabled

  • ESP_FAIL : others

esp_err_t esp_bt_config_file_path_update(const char *file_path)

This function is used to update the path name of bluetooth bond keys saved in the NVS module and need to be called before esp_bluedroid_init().

Parameters

file_path -- [in] the name of config file path, the length of file_path should be less than NVS_NS_NAME_MAX_SIZE

Returns

  • ESP_OK: success

  • other: failed

Macros

ESP_BT_DEV_COEX_BLE_ST_MESH_CONFIG
ESP_BT_DEV_COEX_BLE_ST_MESH_TRAFFIC
ESP_BT_DEV_COEX_BLE_ST_MESH_STANDBY
ESP_BT_DEV_COEX_BT_ST_A2DP_STREAMING
ESP_BT_DEV_COEX_BT_ST_A2DP_PAUSED
ESP_BT_DEV_COEX_OP_CLEAR
ESP_BT_DEV_COEX_OP_SET

Type Definitions

typedef uint8_t esp_bt_dev_coex_op_t

Enumerations

enum esp_bt_dev_coex_type_t

Bluetooth device coex type.

Values:

enumerator ESP_BT_DEV_COEX_TYPE_BLE
enumerator ESP_BT_DEV_COEX_TYPE_BT