]> granicus.if.org Git - esp-idf/commitdiff
component/bt : cleanup the function comment as doxygen type
authorTian Hao <tianhao@espressif.com>
Thu, 1 Dec 2016 10:58:54 +0000 (18:58 +0800)
committerTian Hao <tianhao@espressif.com>
Thu, 1 Dec 2016 10:58:54 +0000 (18:58 +0800)
components/bt/bluedroid/api/include/esp_blufi_api.h
components/bt/bluedroid/api/include/esp_bt_defs.h
components/bt/bluedroid/api/include/esp_bt_main.h
components/bt/bluedroid/api/include/esp_gap_ble_api.h
components/bt/bluedroid/api/include/esp_gatt_defs.h
components/bt/bluedroid/api/include/esp_gattc_api.h [changed mode: 0644->0755]
components/bt/bluedroid/api/include/esp_gatts_api.h

index 7954e805e0242d0aefb7fbb1d0ce71162eb01fb8..92b88e0e28de1e97be19cfc251b575cb52d2c1bd 100644 (file)
 #define ESP_BLUFI_EVENT_DEINIT_FINISH       1
 #define ESP_BLUFI_EVENT_RECV_DATA           2
 
+/// BLUFI config status
 typedef enum {
     ESP_BLUFI_CONFIG_OK = 0,
     ESP_BLUFI_CONFIG_FAILED,
 } esp_blufi_config_state_t;
 
+/// BLUFI init status
 typedef enum {
     ESP_BLUFI_INIT_OK = 0,
     ESP_BLUFI_INIT_FAILED = 0,
 } esp_blufi_init_state_t;
 
+/// BLUFI deinit status
 typedef enum {
     ESP_BLUFI_DEINIT_OK = 0,
     ESP_BLUFI_DEINIT_FAILED = 0,
@@ -69,52 +72,52 @@ typedef union {
     } recv_data;                                                                       /*!< Blufi callback param of ESP_BLUFI_EVENT_RECV_DATA */
 } esp_blufi_cb_param_t;
 
-/*******************************************************************************
-**
-** @function        esp_blufi_register_callback
-**
-** @brief           This function is called to receive blufi callback event
-**
-** @param[in]       callback: callback function
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_blufi_register_callback
+ *
+ * @brief           This function is called to receive blufi callback event
+ *
+ * @param[in]       callback: callback function
+ *
+ * @return          ESP_OK - success, other - failed
+ *
+ */
 esp_err_t esp_blufi_register_callback(esp_profile_cb_t callback);
 
-/*******************************************************************************
-**
-** @function        esp_blufi_send_config_state
-**
-** @brief           This function is called to send config state to phone
-**
-** @param[in]       state: blufi config OK or not
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_blufi_send_config_state
+ *
+ * @brief           This function is called to send config state to phone
+ *
+ * @param[in]       state: blufi config OK or not
+ *
+ * @return          ESP_OK - success, other - failed
+ *
+ */
 esp_err_t esp_blufi_send_config_state(esp_blufi_config_state_t state);
 
-/*******************************************************************************
-**
-** @function        esp_blufi_profile_init
-**
-** @brief           This function is called to initialize blufi_profile
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_blufi_profile_init
+ *
+ * @brief           This function is called to initialize blufi_profile
+ *
+ * @return          ESP_OK - success, other - failed
+ *
+ */
 esp_err_t esp_blufi_profile_init(void);
 
-/*******************************************************************************
-**
-** @function        esp_blufi_profile_deinit
-**
-** @brief           This function is called to de-initialize blufi_profile
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/*
+ *
+ * @function        esp_blufi_profile_deinit
+ *
+ * @brief           This function is called to de-initialize blufi_profile
+ *
+ * @return          ESP_OK - success, other - failed
+ *
+ */
 esp_err_t esp_blufi_profile_deinit(void);
 
 
index 6d5c65ebe8c638b61cb8b50084a47d034a8b997f..a19d89e856f22f68bd7074114565f412e39f7bfc 100644 (file)
@@ -18,7 +18,7 @@
 #include <stdint.h>
 #include <stdbool.h>
 
-/* Status Return Value */
+/// Status Return Value
 typedef enum {
     ESP_BT_STATUS_SUCCESS          =  0,          /* Successful operation. */
     ESP_BT_STATUS_FAILURE          =  1,          /* Generic failure. */
@@ -28,12 +28,16 @@ typedef enum {
     ESP_BT_STATUS_WRONG_MODE       =  5,
 } esp_bt_status_t;
 
+/// Default GATT interface id
 #define ESP_DEFAULT_GATT_IF             0xff
 
+/// Default BLE connection param, if the value doesn't be overwritten
 #define ESP_BLE_CONN_PARAM_UNDEF        0xffff      /* use this value when a specific value not to be overwritten */
 
+/// Check the param is valid or not
 #define ESP_BLE_IS_VALID_PARAM(x, min, max)  (((x) >= (min) && (x) <= (max)) || ((x) == ESP_BLE_CONN_PARAM_UNDEF))
 
+/// UUID type
 typedef struct {
 #define ESP_UUID_LEN_16     2
 #define ESP_UUID_LEN_32     4
@@ -46,14 +50,18 @@ typedef struct {
     } uuid;                                                                    /*!< UUID */
 } __attribute__((packed)) esp_bt_uuid_t;
 
+/// Bluetooth device type
 typedef enum {
     ESP_BT_DEVICE_TYPE_BREDR   = 0x01,
     ESP_BT_DEVICE_TYPE_BLE     = 0x02,
     ESP_BT_DEVICE_TYPE_DUMO    = 0x03,
 } esp_bt_dev_type_t;
 
+/// Bluetooth address length
 #define ESP_BD_ADDR_LEN     6
-typedef uint8_t esp_bd_addr_t[ESP_BD_ADDR_LEN];    /*!< Bluetooth device address */ 
+
+/// Bluetooth device address
+typedef uint8_t esp_bd_addr_t[ESP_BD_ADDR_LEN];
 
 /// Own BD address source of the device
 typedef enum {
@@ -71,6 +79,7 @@ typedef enum {
     BD_ADDR_PROVIDED_RECON,
 } esp_bd_addr_type_t;
 
+/// BLE device address type
 typedef enum {
     BLE_ADDR_TYPE_PUBLIC        = 0x00,
     BLE_ADDR_TYPE_RANDOM        = 0x01,
@@ -78,9 +87,16 @@ typedef enum {
     BLE_ADDR_TYPE_RPA_RANDOM    = 0x03,
 } esp_ble_addr_type_t;
 
+/// Minimum of the application id
 #define ESP_APP_ID_MIN  0x0000
+/// Maximum of the application id
 #define ESP_APP_ID_MAX  0x7fff
 
+/**
+ * @brief Each profile callback function type
+ * @param event : Event type
+ * @param param : Point to callback parameter, currently is union type
+ */
 typedef void (* esp_profile_cb_t)(uint32_t event, void *param);
 
 #endif      ///__ESP_BT_DEFS_H__
index dd7ec7116d8edb9f30b62348d450b6610c3e7619..8e83f28e90d17b9044f7080eec9b86c07f3c2d2b 100644 (file)
 #include "btc_main.h"
 #include "esp_err.h"
 
+/**
+ * @function  esp_enable_bluetooth
+ *
+ * @brief     Enable bluetooth, must after esp_init_bluetooth()
+ *
+ * @return    - ESP_OK : Succeed
+ *            - Other  : Failed
+ */
 esp_err_t esp_enable_bluetooth(void);
 
+/**
+ * @function  esp_disable_bluetooth
+ *
+ * @brief     Disable bluetooth, must prior to esp_deinit_bluetooth()
+ *
+ * @return    - ESP_OK : Succeed
+ *            - Other  : Failed
+ */
 esp_err_t esp_disable_bluetooth(void);
 
+/**
+ * @function  esp_init_bluetooth
+ *
+ * @brief     Init and alloc the resource for bluetooth, must be prior to every bluetooth stuff
+ *
+ * @return    - ESP_OK : Succeed
+ *            - Other  : Failed
+ */
 esp_err_t esp_init_bluetooth(void);
 
+/**
+ * @function  esp_deinit_bluetooth
+ *
+ * @brief     Deinit and free the resource for bluetooth, must be after every bluetooth stuff
+ *
+ * @return    - ESP_OK : Succeed
+ *            - Other  : Failed
+ */
 esp_err_t esp_deinit_bluetooth(void);
 
 
index 58f5977ae3d8fa860bd09ed421b767b924b0175e..3643b3f5fd16fbe746bf0a1aa31c483d8ee9f749 100644 (file)
 #include "esp_err.h"
 #include "esp_bt_defs.h"
 
-#define ESP_GAP_BLE_ADV_DATA_SET_COMPLETE_EVT       0
-#define ESP_GAP_BLE_SCAN_RSP_DATA_SET_COMPLETE_EVT  1
-#define ESP_GAP_BLE_SCAN_PARAM_SET_COMPLETE_EVT     2
-#define ESP_GAP_BLE_SCAN_RESULT_EVT                 3
+/// GAP BLE callback event type
+typedef enum {
+       ESP_GAP_BLE_ADV_DATA_SET_COMPLETE_EVT        = 0,               /*!< When advertising data set complete, the event comes */
+       ESP_GAP_BLE_SCAN_RSP_DATA_SET_COMPLETE_EVT ,                    /*!< When scan response data set complete, the event comes */
+       ESP_GAP_BLE_SCAN_PARAM_SET_COMPLETE_EVT,                                /*!< When scan parameters set complete, the event comes */
+       ESP_GAP_BLE_SCAN_RESULT_EVT,                                                    /*!< When one scan result ready, the event comes each time */
+}esp_gap_ble_cb_event_t;
 
+/// Advertising data maximum length
 #define ESP_BLE_ADV_DATA_LEN_MAX        31
 
-/****************** define the adv type macro***************************************/
-#define ESP_BLE_AD_TYPE_FLAG                            0x01
-#define ESP_BLE_AD_TYPE_16SRV_PART                      0x02
-#define ESP_BLE_AD_TYPE_16SRV_CMPL                      0x03
-#define ESP_BLE_AD_TYPE_32SRV_PART                      0x04
-#define ESP_BLE_AD_TYPE_32SRV_CMPL                      0x05
-#define ESP_BLE_AD_TYPE_128SRV_PART                     0x06
-#define ESP_BLE_AD_TYPE_128SRV_CMPL                     0x07
-#define ESP_BLE_AD_TYPE_NAME_SHORT                      0x08
-#define ESP_BLE_AD_TYPE_NAME_CMPL                       0x09
-#define ESP_BLE_AD_TYPE_TX_PWR                          0x0A
-#define ESP_BLE_AD_TYPE_DEV_CLASS                       0x0D
-#define ESP_BLE_AD_TYPE_SM_TK                           0x10
-#define ESP_BLE_AD_TYPE_SM_OOB_FLAG                     0x11
-#define ESP_BLE_AD_TYPE_INT_RANGE                       0x12
-#define ESP_BLE_AD_TYPE_SOL_SRV_UUID                    0x14
-#define ESP_BLE_AD_TYPE_128SOL_SRV_UUID                 0x15
-#define ESP_BLE_AD_TYPE_SERVICE_DATA                    0x16
-#define ESP_BLE_AD_TYPE_PUBLIC_TARGET                   0x17
-#define ESP_BLE_AD_TYPE_RANDOM_TARGET                   0x18
-#define ESP_BLE_AD_TYPE_APPEARANCE                      0x19
-#define ESP_BLE_AD_TYPE_ADV_INT                         0x1A
-#define ESP_BLE_AD_TYPE_32SOL_SRV_UUID                  0x1B
-#define ESP_BLE_AD_TYPE_32SERVICE_DATA                  0x1C
-#define ESP_BLE_AD_TYPE_128SERVICE_DATA                 0x1D
-#define ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE           0xFF
-
-
-typedef uint32_t esp_gap_ble_event_t;
+/// The type of advertising data(not adv_type)
+typedef enum {
+       ESP_BLE_AD_TYPE_FLAG                     = 0x01,
+       ESP_BLE_AD_TYPE_16SRV_PART               = 0x02,
+       ESP_BLE_AD_TYPE_16SRV_CMPL               = 0x03,
+       ESP_BLE_AD_TYPE_32SRV_PART               = 0x04,
+       ESP_BLE_AD_TYPE_32SRV_CMPL               = 0x05,
+       ESP_BLE_AD_TYPE_128SRV_PART              = 0x06,
+       ESP_BLE_AD_TYPE_128SRV_CMPL              = 0x07,
+       ESP_BLE_AD_TYPE_NAME_SHORT               = 0x08,
+       ESP_BLE_AD_TYPE_NAME_CMPL                = 0x09,
+       ESP_BLE_AD_TYPE_TX_PWR                   = 0x0A,
+       ESP_BLE_AD_TYPE_DEV_CLASS                = 0x0D,
+       ESP_BLE_AD_TYPE_SM_TK                    = 0x10,
+       ESP_BLE_AD_TYPE_SM_OOB_FLAG              = 0x11,
+       ESP_BLE_AD_TYPE_INT_RANGE                = 0x12,
+       ESP_BLE_AD_TYPE_SOL_SRV_UUID             = 0x14,
+       ESP_BLE_AD_TYPE_128SOL_SRV_UUID          = 0x15,
+       ESP_BLE_AD_TYPE_SERVICE_DATA             = 0x16,
+       ESP_BLE_AD_TYPE_PUBLIC_TARGET            = 0x17,
+       ESP_BLE_AD_TYPE_RANDOM_TARGET            = 0x18,
+       ESP_BLE_AD_TYPE_APPEARANCE               = 0x19,
+       ESP_BLE_AD_TYPE_ADV_INT                  = 0x1A,
+       ESP_BLE_AD_TYPE_32SOL_SRV_UUID           = 0x1B,
+       ESP_BLE_AD_TYPE_32SERVICE_DATA           = 0x1C,
+       ESP_BLE_AD_TYPE_128SERVICE_DATA          = 0x1D,
+       ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE    = 0xFF,
+} esp_ble_adv_data_type;
 
 /// Advertising mode
 typedef enum {
@@ -189,17 +192,15 @@ typedef struct {
                                                                                                          Time Range: 100 msec to 32 seconds */
 } esp_ble_conn_update_params_t;
 
-typedef void (*esp_gap_ble_cb_t)(esp_gap_ble_event_t event, void *param);
-
+/// Sub Event of ESP_GAP_BLE_SCAN_RESULT_EVT
 typedef enum {
-    /* Search callback events */
-    ESP_GAP_SEARCH_INQ_RES_EVT             = 0,      /* Inquiry result for a peer device. */
-    ESP_GAP_SEARCH_INQ_CMPL_EVT            = 1,      /* Inquiry complete. */
-    ESP_GAP_SEARCH_DISC_RES_EVT            = 2,      /* Discovery result for a peer device. */
-    ESP_GAP_SEARCH_DISC_BLE_RES_EVT        = 3,      /* Discovery result for BLE GATT based service on a peer device. */
-    ESP_GAP_SEARCH_DISC_CMPL_EVT           = 4,      /* Discovery complete. */
-    ESP_GAP_SEARCH_DI_DISC_CMPL_EVT        = 5,      /* Discovery complete. */
-    ESP_GAP_SEARCH_SEARCH_CANCEL_CMPL_EVT  = 6,      /* Search cancelled */
+    ESP_GAP_SEARCH_INQ_RES_EVT             = 0,      /*!< Inquiry result for a peer device. */
+    ESP_GAP_SEARCH_INQ_CMPL_EVT            = 1,      /*!< Inquiry complete. */
+    ESP_GAP_SEARCH_DISC_RES_EVT            = 2,      /*!< Discovery result for a peer device. */
+    ESP_GAP_SEARCH_DISC_BLE_RES_EVT        = 3,      /*!< Discovery result for BLE GATT based service on a peer device. */
+    ESP_GAP_SEARCH_DISC_CMPL_EVT           = 4,      /*!< Discovery complete. */
+    ESP_GAP_SEARCH_DI_DISC_CMPL_EVT        = 5,      /*!< Discovery complete. */
+    ESP_GAP_SEARCH_SEARCH_CANCEL_CMPL_EVT  = 6,      /*!< Search cancelled */
 } esp_gap_search_evt_t;
 
 /**
@@ -239,192 +240,189 @@ typedef union {
     } scan_rst;                                                                                /*!< Event parameter of ESP_GAP_BLE_SCAN_RESULT_EVT */
 } esp_ble_gap_cb_param_t;
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_register_callback
-**
-** @brief           This function is called to occur gap event, such as scan result
-**
-** @param[in]       callback: callback function
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
-
+/**
+ * @function        esp_ble_gap_register_callback
+ *
+ * @brief           This function is called to occur gap event, such as scan result
+ *
+ * @param[in]       callback: callback function
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_register_callback(esp_profile_cb_t callback);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_config_adv_data
-**
-** @brief           This function is called to override the BTA default ADV parameters.
-**
-** @param[in]       adv_data: Pointer to User defined ADV data structure. This
-**                  memory space can not be freed until callback of config_adv_data
-**                  is received.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_config_adv_data
+ *
+ * @brief           This function is called to override the BTA default ADV parameters.
+ *
+ * @param[in]       adv_data: Pointer to User defined ADV data structure. This
+ *                  memory space can not be freed until callback of config_adv_data
+ *                  is received.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_config_adv_data (esp_ble_adv_data_t *adv_data);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_set_scan_params
-**
-** @brief           This function is called to set scan parameters
-**
-** @param[in]       esp_ble_scan_params: Pointer to User defined scan_params data structure. This
-**                  memory space can not be freed until callback of set_scan_params
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_set_scan_params
+ *
+ * @brief           This function is called to set scan parameters
+ *
+ * @param[in]       esp_ble_scan_params: Pointer to User defined scan_params data structure. This
+ *                  memory space can not be freed until callback of set_scan_params
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_set_scan_params(esp_ble_scan_params_t *scan_params);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_start_scanning
-**
-** @brief           This procedure keep the device scanning the peer device which advertising on the air
-**
-** @param[in]       duration: Keeping the scanning time, the unit is second.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_start_scanning
+ *
+ * @brief           This procedure keep the device scanning the peer device which advertising on the air
+ *
+ * @param[in]       duration: Keeping the scanning time, the unit is second.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_start_scanning(uint32_t duration);
 
 
-/*******************************************************************************
-**
-** @function       esp_ble_gap_stop_scanning
-**
-** @brief          This function call to stop the device scanning the peer device which advertising on the air
-** @param          void
-** @return         ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function       esp_ble_gap_stop_scanning
+ *
+ * @brief          This function call to stop the device scanning the peer device which advertising on the air
+ * @param          void
+ * @return         - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_stop_scanning(void);
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_start_advertising
-**
-** @brief           This function is called to start advertising.
-**
-** @param[in]       esp_ble_adv_params_all_t: pointer to User defined adv_params data structure.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_start_advertising
+ *
+ * @brief           This function is called to start advertising.
+ *
+ * @param[in]       esp_ble_adv_params_all_t: pointer to User defined adv_params data structure.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_start_advertising (esp_ble_adv_params_t *adv_params);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_gap_ble_stop_advertising
-**
-** @brief           This function is called to stop advertising.
-**
-** @param           None
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_gap_ble_stop_advertising
+ *
+ * @brief           This function is called to stop advertising.
+ *
+ * @param           None
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_stop_advertising(void);
 
 
 
-/*******************************************************************************
-**
-** @function         esp_ble_update_conn_params
-**
-** @brief           Update connection parameters, can only be used when connection is up.
-**
-** @param[in]       param   -  connection update parameters
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function         esp_ble_update_conn_params
+ *
+ * @brief           Update connection parameters, can only be used when connection is up.
+ *
+ * @param[in]       param   -  connection update parameters
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_update_conn_params(esp_ble_conn_update_params_t *params);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_set_pkt_data_len
-**
-** @brief           This function is to set maximum LE data packet size
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_set_pkt_data_len
+ *
+ * @brief           This function is to set maximum LE data packet size
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_set_pkt_data_len(esp_bd_addr_t remote_device, uint16_t tx_data_length);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_set_rand_addr
-**
-** @brief           This function set the random address for the application
-**
-** @param[in]       rand_addr: the random address which should be setting
-**
-** @return          ESP_OK - success, other - failed
-**
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_set_rand_addr
+ *
+ * @brief           This function set the random address for the application
+ *
+ * @param[in]       rand_addr: the random address which should be setting
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_set_rand_addr(esp_bd_addr_t rand_addr);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_config_local_privacy
-**
-** @brief           Enable/disable privacy on the local device
-**
-** @param[in]       privacy_enable   - enable/disable privacy on remote device.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_config_local_privacy
+ *
+ * @brief           Enable/disable privacy on the local device
+ *
+ * @param[in]       privacy_enable   - enable/disable privacy on remote device.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gap_set_device_name
-**
-** @brief           Set device name to the local device
-**
-** @param[in]       name   -  device name.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_gap_set_device_name
+ *
+ * @brief           Set device name to the local device
+ *
+ * @param[in]       name   -  device name.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gap_set_device_name(const char *name);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_resolve_adv_data
-**
-** @brief          This function is called to get ADV data for a specific type.
-**
-** @param[in]       adv_data - pointer of ADV data which to be resolved
-** @param[in]       type   - finding ADV data type
-** @param[out]      length - return the length of ADV data not including type
-**
-** @return          pointer of ADV data
-**
-*******************************************************************************/
+/**
+ * @function        esp_ble_resolve_adv_data
+ *
+ * @brief          This function is called to get ADV data for a specific type.
+ *
+ * @param[in]       adv_data - pointer of ADV data which to be resolved
+ * @param[in]       type   - finding ADV data type
+ * @param[out]      length - return the length of ADV data not including type
+ *
+ * @return          pointer of ADV data
+ *
+ */
 uint8_t *esp_ble_resolve_adv_data(uint8_t *adv_data, uint8_t type, uint8_t *p_length);
 
 #endif /* __ESP_GAP_BLE_API_H__ */
index c4a16e00e05bb2495c2ac6ba3a4057239fc8cc4e..c9091c428f8b66f2def1ecbeea91d46ae3ae041a 100644 (file)
 
 #include "esp_bt_defs.h"
 
-/* attribute request data from the client */
-#define ESP_GATT_PREP_WRITE_CANCEL   0x00
-#define ESP_GATT_PREP_WRITE_EXEC     0x01
+/// Attribute write data type from the client
+typedef enum {
+       ESP_GATT_PREP_WRITE_CANCEL    = 0x00,           /*!< Prepare write cancel */
+       ESP_GATT_PREP_WRITE_EXEC      = 0x01,           /*!< Prepare write execute */
+} esp_gatt_prep_write_type;
 
 /**
  * @brief GATT success code and error codes
@@ -144,6 +146,7 @@ typedef enum {
     ESP_GATT_CHAR_PROP_BIT_EXT_PROP     =   (1 << 7),       /* 0x80 */
 } esp_gatt_char_prop_t;
 
+/// GATT maximum attribute length
 #define ESP_GATT_MAX_ATTR_LEN   600 //as same as GATT_MAX_ATTR_LEN
 
 /// Gatt attribute value 
@@ -169,6 +172,6 @@ typedef enum {
        ESP_GATT_WRITE_TYPE_RSP,                                                                /*!< Gatt write attribute need remote response */
 } esp_gatt_write_type_t;
 
-typedef uint32_t    esp_gatt_if_t;                                                     /* Gatt interface type, different application on GATT client use different gatt_if */
+typedef uint32_t    esp_gatt_if_t;                                                     /*!< Gatt interface type, different application on GATT client use different gatt_if */
 
 #endif /* __ESP_GATT_DEFS_H__ */
old mode 100644 (file)
new mode 100755 (executable)
index f7328df..710af99
 #include "esp_gatt_defs.h"
 #include "esp_err.h"
 
-/* Client callback function events */
-#define ESP_GATTC_REG_EVT                   0   /* GATT client is registered. */
-#define ESP_GATTC_UNREG_EVT                 1   /* GATT client unregistered event */
-#define ESP_GATTC_OPEN_EVT                  2   /* GATTC open request status  event */
-#define ESP_GATTC_READ_CHAR_EVT             3   /* GATT read characteristic event */
-#define ESP_GATTC_WRITE_CHAR_EVT            4   /* GATT write characteristic or char descriptor event */
-#define ESP_GATTC_CLOSE_EVT                 5   /* GATTC  close request status event */
-#define ESP_GATTC_SEARCH_CMPL_EVT           6   /* GATT discovery complete event */
-#define ESP_GATTC_SEARCH_RES_EVT            7   /* GATT discovery result event */
-#define ESP_GATTC_READ_DESCR_EVT            8   /* GATT read characteristic descriptor event */
-#define ESP_GATTC_WRITE_DESCR_EVT           9   /* GATT write characteristic descriptor event */
-#define ESP_GATTC_NOTIFY_EVT                10  /* GATT attribute notification event */
-#define ESP_GATTC_PREP_WRITE_EVT            11  /* GATT prepare write  event */
-#define ESP_GATTC_EXEC_EVT                  12  /* execute write complete event */
-#define ESP_GATTC_ACL_EVT                   13  /* ACL up event */
-#define ESP_GATTC_CANCEL_OPEN_EVT           14  /* cancel open event */
-#define ESP_GATTC_SRVC_CHG_EVT              15  /* service change event */
-#define ESP_GATTC_ENC_CMPL_CB_EVT           17  /* encryption complete callback event */
-#define ESP_GATTC_CFG_MTU_EVT               18  /* configure MTU complete event */
-#define ESP_GATTC_ADV_DATA_EVT              19  /* ADV data event */
-#define ESP_GATTC_MULT_ADV_ENB_EVT          20  /* Enable Multi ADV event */
-#define ESP_GATTC_MULT_ADV_UPD_EVT          21  /* Update parameter event */
-#define ESP_GATTC_MULT_ADV_DATA_EVT         22  /* Multi ADV data event */
-#define ESP_GATTC_MULT_ADV_DIS_EVT          23  /* Disable Multi ADV event */
-#define ESP_GATTC_CONGEST_EVT               24  /* Congestion event */
-#define ESP_GATTC_BTH_SCAN_ENB_EVT          25  /* Enable batch scan event */
-#define ESP_GATTC_BTH_SCAN_CFG_EVT          26  /* Config storage event */
-#define ESP_GATTC_BTH_SCAN_RD_EVT           27  /* Batch scan reports read event */
-#define ESP_GATTC_BTH_SCAN_THR_EVT          28  /* Batch scan threshold event */
-#define ESP_GATTC_BTH_SCAN_PARAM_EVT        29  /* Batch scan param event */
-#define ESP_GATTC_BTH_SCAN_DIS_EVT          30  /* Disable batch scan event */
-#define ESP_GATTC_SCAN_FLT_CFG_EVT          31  /* Scan filter config event */
-#define ESP_GATTC_SCAN_FLT_PARAM_EVT        32  /* Param filter event */
-#define ESP_GATTC_SCAN_FLT_STATUS_EVT       33  /* Filter status event */
-#define ESP_GATTC_ADV_VSC_EVT               34  /* ADV VSC event */
-
-#define ESP_GATTC_GET_CHAR_EVT                  35  /* get characteristic event */
-#define ESP_GATTC_GET_DESCR_EVT                 36  /* get characteristic descriptor event */
-#define ESP_GATTC_GET_INCL_SRVC_EVT             37  /* get included service event */
-#define ESP_GATTC_REG_FOR_NOTIFY_EVT             38  /* register for notification event */
-#define ESP_GATTC_UNREG_FOR_NOTIFY_EVT             39  /* unregister for notification event */
-
-
+/// GATT Client callback function events
+typedef enum {
+    ESP_GATTC_REG_EVT = 0,                /*!> when GATT client is registered */
+    ESP_GATTC_UNREG_EVT,                  /*!> when GATT client is unregistered */
+    ESP_GATTC_OPEN_EVT,                   /*!> when GATT connection is set up */
+    ESP_GATTC_READ_CHAR_EVT,              /*!> when GATT characteristic is read */
+    ESP_GATTC_WRITE_CHAR_EVT,             /*!> when GATT characteristic write operation completes */
+    ESP_GATTC_CLOSE_EVT,                  /*!> when GATT connection is closed */
+    ESP_GATTC_SEARCH_CMPL_EVT,            /*!> when GATT service discovery is completed */
+    ESP_GATTC_SEARCH_RES_EVT,             /*!> when GATT service discovery result is got */
+    ESP_GATTC_READ_DESCR_EVT,             /*!> when GATT characteristic descriptor read completes */
+    ESP_GATTC_WRITE_DESCR_EVT,            /*!> when GATT characteristic descriptor write completes */
+    ESP_GATTC_NOTIFY_EVT,                 /*!> when GATT notification or indication arrives */
+    ESP_GATTC_PREP_WRITE_EVT,             /*!> when GATT prepare-write operation conpletes */
+    ESP_GATTC_EXEC_EVT,                   /*!> when write execution completes */
+    ESP_GATTC_ACL_EVT,                    /*!> when ACL connection is up */
+    ESP_GATTC_CANCEL_OPEN_EVT,            /*!> when GATT client ongoing connection is cancelled */
+    ESP_GATTC_SRVC_CHG_EVT,               /*!> when "service changed" occurs */
+    ESP_GATTC_ENC_CMPL_CB_EVT,            /*!> when encryption procedure completes */
+    ESP_GATTC_CFG_MTU_EVT,                /*!> when configuration of MTU completes */
+    ESP_GATTC_ADV_DATA_EVT,               /*!> when advertising of data */
+    ESP_GATTC_MULT_ADV_ENB_EVT,           /*!> when multi-advertising is enabled */
+    ESP_GATTC_MULT_ADV_UPD_EVT,           /*!> when multi-advertising parameters are updated */
+    ESP_GATTC_MULT_ADV_DATA_EVT,          /*!> when multi-advertising data arrives */
+    ESP_GATTC_MULT_ADV_DIS_EVT,           /*!> when multi-advertising is disabled */
+    ESP_GATTC_CONGEST_EVT,                /*!> when GATT connection congestion comes */
+    ESP_GATTC_BTH_SCAN_ENB_EVT,           /*!> when batch scan is enabled */
+    ESP_GATTC_BTH_SCAN_CFG_EVT,           /*!> when batch scan storage is configured */
+    ESP_GATTC_BTH_SCAN_RD_EVT,            /*!> when Batch scan read event is reported */
+    ESP_GATTC_BTH_SCAN_THR_EVT,           /*!> when Batch scan threshold is set */
+    ESP_GATTC_BTH_SCAN_PARAM_EVT,         /*!> when Batch scan parameters are set */
+    ESP_GATTC_BTH_SCAN_DIS_EVT,           /*!> when Batch scan is disabled */
+    ESP_GATTC_SCAN_FLT_CFG_EVT,           /*!> when Scan filter configuration completes */
+    ESP_GATTC_SCAN_FLT_PARAM_EVT,         /*!> when Scan filter parameters are set */
+    ESP_GATTC_SCAN_FLT_STATUS_EVT,        /*!> when Scan filter status is reported */
+    ESP_GATTC_ADV_VSC_EVT,                /*!> when ADV VSC event is reported*/
+    ESP_GATTC_GET_CHAR_EVT,               /*!> when characteristic is got from GATT server */
+    ESP_GATTC_GET_DESCR_EVT,              /*!> when charcteristic descriptor is got from GATT server */
+    ESP_GATTC_GET_INCL_SRVC_EVT,          /*!> when included service is got from GATT server */
+    ESP_GATTC_REG_FOR_NOTIFY_EVT,         /*!> when registration for notification of a service completes */
+    ESP_GATTC_UNREG_FOR_NOTIFY_EVT        /*!> when unregistration for notification of a service completes */
+} esp_gattc_cb_event_t;
+
+/// Maximum Transmission Unit used in GATT
 #define ESP_GATT_DEF_BLE_MTU_SIZE   23
+
+/// Maximum Transmission Unit allowed in GATT
 #define ESP_GATT_MAX_MTU_SIZE       517
 
 /**
@@ -242,215 +245,222 @@ typedef union {
 } esp_ble_gattc_cb_param_t;                            /*!< GATT client callback parameter union type */
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_app_register_callback
-**
-** @brief           This function is called to register application callbacks
-**                  with GATTC module.
-**
-** @param[in]       callback : pointer to the application callback function.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_app_register_callback
+ *
+ * @brief           This function is called to register application callbacks
+ *                  with GATTC module.
+ *
+ * @param[in]       callback : pointer to the application callback function.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_register_callback(esp_profile_cb_t callback);
 
 
-
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_app_register
-**
-** @brief           This function is called to register application callbacks
-**                  with GATTC module.
-**
-** @param[in]       app_id : Application Identify (UUID), for different application
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_app_register
+ *
+ * @brief           This function is called to register application callbacks
+ *                  with GATTC module.
+ *
+ * @param[in]       app_id : Application Identify (UUID), for different application
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_app_register(uint16_t app_id);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_app_unregister
-**
-** @brief           This function is called to unregister an application
-**                  from GATTC module.
-**
-** @param[in]       gatt_if : app identifier.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_app_unregister
+ *
+ * @brief           This function is called to unregister an application
+ *                  from GATTC module.
+ *
+ * @param[in]       gatt_if : app identifier.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_app_unregister(esp_gatt_if_t gatt_if);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_conn
-**
-** @brief           Open a direct connection or add a background auto connection
-**
-** @param[in]       gatt_if: application identity.
-** @param[in]       remote_bda: remote device bluetooth device address.
-** @param[in]       is_direct: direct connection or background auto connection
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_conn
+ *
+ * @brief           Open a direct connection or add a background auto connection
+ *
+ * @param[in]       gatt_if: application identity.
+ * @param[in]       remote_bda: remote device bluetooth device address.
+ * @param[in]       is_direct: direct connection or background auto connection
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_open(esp_gatt_if_t gatt_if, esp_bd_addr_t remote_bda, bool is_direct);
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_close
-**
-** @brief           Close a connection to a GATT server.
-**
-** @param[in]       conn_id: connection ID to be closed.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
-esp_err_t esp_ble_gattc_close (uint16_t conn_id);
 
+/**
+ *
+ * @function        esp_ble_gattc_close
+ *
+ * @brief           Close a connection to a GATT server.
+ *
+ * @param[in]       conn_id: connection ID to be closed.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
+esp_err_t esp_ble_gattc_close (uint16_t conn_id);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_config_mtu
-**
-** @brief           Configure the MTU size in the GATT channel. This can be done
-**                  only once per connection.
-**
-** @param[in]       conn_id: connection ID.
-**                  mtu: desired MTU size to use.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_config_mtu
+ *
+ * @brief           Configure the MTU size in the GATT channel. This can be done
+ *                  only once per connection.
+ *
+ * @param[in]       conn_id: connection ID.
+ *                  mtu: desired MTU size to use.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_config_mtu (uint16_t conn_id, uint16_t mtu);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_search_service
-**
-** @brief           This function is called to request a GATT service discovery
-**                  on a GATT server. This function report service search result
-**                  by a callback event, and followed by a service search complete
-**                  event.
-**
-** @param[in]       conn_id: connection ID.
-** @param[in]       filter_uuid: a UUID of the service application is interested in.
-**                  If Null, discover for all services.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_search_service
+ *
+ * @brief           This function is called to request a GATT service discovery
+ *                  on a GATT server. This function report service search result
+ *                  by a callback event, and followed by a service search complete
+ *                  event.
+ *
+ * @param[in]       conn_id: connection ID.
+ * @param[in]       filter_uuid: a UUID of the service application is interested in.
+ *                  If Null, discover for all services.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_search_service(uint16_t conn_id, esp_bt_uuid_t *filter_uuid);
 
 
-/****************************************************************************************************
-**
-** @function        esp_ble_gattc_get_characteristic
-**
-** @brief           This function is called to find the first characteristic of the
-**                  service on the given server.
-**
-** @param[in]       conn_id: connection ID which identify the server.
-**
-** @param[in]       srvc_id: service ID
-**
-** @param[in]       start_char_id:  the start characteristic ID
-**
-** @return          ESP_OK - success, other - failed
-**
-*****************************************************************************************************/
-
+/**
+ *
+ * @function        esp_ble_gattc_get_characteristic
+ *
+ * @brief           This function is called to find the first characteristic of the
+ *                  service on the given server.
+ *
+ * @param[in]       conn_id: connection ID which identify the server.
+ *
+ * @param[in]       srvc_id: service ID
+ *
+ * @param[in]       start_char_id:  the start characteristic ID
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_get_characteristic(uint16_t conn_id,
         esp_gatt_srvc_id_t *srvc_id, esp_gatt_id_t *start_char_id);
 
-/****************************************************************************************************
-**
-** @function        esp_ble_gattc_get_descriptor
-**
-** @brief           This function is called to find the descriptor of the
-**                  service on the given server.
-**
-** @param[in]       conn_id: connection ID which identify the server.
-** @param[in]       srvc_id: the service ID of which the characteristic is belonged to.
-** @param[in]       char_id: Characteristic ID, if NULL find the first available
-**                  characteristic.
-** @param[in]       start_descr_id:  the start descriptor id
-**
-** @return          ESP_OK - success, other - failed
-**
-*****************************************************************************************************/
+
+/**
+ *
+ * @function        esp_ble_gattc_get_descriptor
+ *
+ * @brief           This function is called to find the descriptor of the
+ *                  service on the given server.
+ *
+ * @param[in]       conn_id: connection ID which identify the server.
+ * @param[in]       srvc_id: the service ID of which the characteristic is belonged to.
+ * @param[in]       char_id: Characteristic ID, if NULL find the first available
+ *                  characteristic.
+ * @param[in]       start_descr_id:  the start descriptor id
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_get_descriptor(uint16_t conn_id,
                                        esp_gatt_srvc_id_t *srvc_id, esp_gatt_id_t *char_id,
                                        esp_gatt_id_t *start_descr_id);
 
 
-/****************************************************************************************************
-**
-** @function        esp_ble_gattc_get_include_service
-**
-** @brief           This function is called to find the first characteristic of the
-**                  service on the given server.
-**
-** @param[in]       conn_id: connection ID which identify the server.
-** @param[in]       srvc_id: the service ID of which the characteristic is belonged to.
-** @param[in]       start_incl_srvc_id: the start include service id
-**
-** @return          ESP_OK - success, other - failed
-**
-*****************************************************************************************************/
-
-
+/**
+ *
+ * @function        esp_ble_gattc_get_include_service
+ *
+ * @brief           This function is called to find the first characteristic of the
+ *                  service on the given server.
+ *
+ * @param[in]       conn_id: connection ID which identify the server.
+ * @param[in]       srvc_id: the service ID of which the characteristic is belonged to.
+ * @param[in]       start_incl_srvc_id: the start include service id
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_get_included_service(uint16_t conn_id,
         esp_gatt_srvc_id_t *srvc_id, esp_gatt_srvc_id_t *start_incl_srvc_id);
 
 
-
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_read_char
-**
-** @brief           This function is called to read a service's characteristics of
-**                  the given characteriistic ID
-**
-** @param[in]       conn_id : connection ID.
-** @param[in]       srvc_id : service ID.
-** @param[in]       char_id : characteristic ID to read.
-** @param[in]       auth_req : authenticate request type
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_read_char
+ *
+ * @brief           This function is called to read a service's characteristics of
+ *                  the given characteriistic ID
+ *
+ * @param[in]       conn_id : connection ID.
+ * @param[in]       srvc_id : service ID.
+ * @param[in]       char_id : characteristic ID to read.
+ * @param[in]       auth_req : authenticate request type
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_read_char (uint16_t conn_id,
                                    esp_gatt_srvc_id_t *srvc_id,
                                    esp_gatt_id_t *char_id,
                                    esp_gatt_auth_req_t auth_req);
 
 
-
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_read_char_descr
-**
-** @brief           This function is called to read a characteristics descriptor.
-**
-** @param[in]       conn_id : connection ID.
-** @param[in]       srvc_id : service ID.
-** @param[in]       descr_id : characteristic descriptor ID to read.
-** @param[in]       auth_req : authenticate request type
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_read_char_descr
+ *
+ * @brief           This function is called to read a characteristics descriptor.
+ *
+ * @param[in]       conn_id : connection ID.
+ * @param[in]       srvc_id : service ID.
+ * @param[in]       descr_id : characteristic descriptor ID to read.
+ * @param[in]       auth_req : authenticate request type
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_read_char_descr (uint16_t conn_id,
         esp_gatt_srvc_id_t *srvc_id,
         esp_gatt_id_t  *char_id,
@@ -458,23 +468,25 @@ esp_err_t esp_ble_gattc_read_char_descr (uint16_t conn_id,
         esp_gatt_auth_req_t auth_req);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_write_char
-**
-** @brief           This function is called to write characteristic value.
-**
-** @param[in]       conn_id : connection ID.
-** @param[in]       srvc_id : service ID.
-** @param[in]       char_id : characteristic ID to write.
-** @param[in]       value_len: length of the value to be written.
-** @param[in]       value : the value to be written.
-** @param[in]       write_type : the type of attribute write operation.
-** @param[in]       auth_req : authentication request.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_write_char
+ *
+ * @brief           This function is called to write characteristic value.
+ *
+ * @param[in]       conn_id : connection ID.
+ * @param[in]       srvc_id : service ID.
+ * @param[in]       char_id : characteristic ID to write.
+ * @param[in]       value_len: length of the value to be written.
+ * @param[in]       value : the value to be written.
+ * @param[in]       write_type : the type of attribute write operation.
+ * @param[in]       auth_req : authentication request.
+ *
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_write_char( uint16_t conn_id,
                                     esp_gatt_srvc_id_t *srvc_id,
                                     esp_gatt_id_t *char_id,
@@ -484,25 +496,26 @@ esp_err_t esp_ble_gattc_write_char( uint16_t conn_id,
                                     esp_gatt_auth_req_t auth_req);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_write_char_descr
-**
-** @brief           This function is called to write characteristic descriptor value.
-**
-** @param[in]       conn_id : connection ID
-** @param[in]       srvc_id : service ID.
-** @param[in]       char_id : characteristic ID.
-** @param[in]       descr_id : characteristic descriptor ID to write.
-** @param[in]       value_len: length of the value to be written.
-** @param[in]       value : the value to be written.
-** @param[in]       write_type : the type of attribute write operation.
-** @param[in]       auth_req : authentication request.
-**
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_write_char_descr
+ *
+ * @brief           This function is called to write characteristic descriptor value.
+ *
+ * @param[in]       conn_id : connection ID
+ * @param[in]       srvc_id : service ID.
+ * @param[in]       char_id : characteristic ID.
+ * @param[in]       descr_id : characteristic descriptor ID to write.
+ * @param[in]       value_len: length of the value to be written.
+ * @param[in]       value : the value to be written.
+ * @param[in]       write_type : the type of attribute write operation.
+ * @param[in]       auth_req : authentication request.
+ *
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_write_char_descr (uint16_t conn_id,
         esp_gatt_srvc_id_t *srvc_id,
         esp_gatt_id_t *char_id,
@@ -513,23 +526,23 @@ esp_err_t esp_ble_gattc_write_char_descr (uint16_t conn_id,
         esp_gatt_auth_req_t auth_req);
 
 
-
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_prepare_write
-**
-** @brief           This function is called to prepare write a characteristic value.
-**
-** @param[in]       conn_id : connection ID.
-** @param[in]       char_id : GATT characteristic ID of the service.
-** @param[in]       offset : offset of the write value.
-** @param[in]       value_len: length of the value to be written.
-** @param[in]       value : the value to be written.
-** @param[in]       auth_req : authentication request.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_prepare_write
+ *
+ * @brief           This function is called to prepare write a characteristic value.
+ *
+ * @param[in]       conn_id : connection ID.
+ * @param[in]       char_id : GATT characteristic ID of the service.
+ * @param[in]       offset : offset of the write value.
+ * @param[in]       value_len: length of the value to be written.
+ * @param[in]       value : the value to be written.
+ * @param[in]       auth_req : authentication request.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_prepare_write(uint16_t conn_id,
                                       esp_gatt_srvc_id_t *srvc_id,
                                       esp_gatt_id_t *char_id,
@@ -538,56 +551,60 @@ esp_err_t esp_ble_gattc_prepare_write(uint16_t conn_id,
                                       uint8_t *value,
                                       esp_gatt_auth_req_t auth_req);
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_execute_write
-**
-** @brief           This function is called to execute write a prepare write sequence.
-**
-** @param[in]       conn_id : connection ID.
-** @param[in]       is_execute : execute or cancel.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_execute_write
+ *
+ * @brief           This function is called to execute write a prepare write sequence.
+ *
+ * @param[in]       conn_id : connection ID.
+ * @param[in]       is_execute : execute or cancel.
+ *
+ * @return          - ESP_OK: success
+ *                  - other: failed
+ *
+ */
 esp_err_t esp_ble_gattc_execute_write (uint16_t conn_id, bool is_execute);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_register_for_notify
-**
-** @brief           This function is called to register for notification of a service.
-**
-** @param[in]       gatt_if : gatt interface id.
-** @param[in]       bda : target GATT server.
-** @param[in]       srvc_id : pointer to GATT service ID.
-** @param[in]       char_id : pointer to GATT characteristic ID.
-**
-** @return          OK if registration succeed, otherwise failed.
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_register_for_notify
+ *
+ * @brief           This function is called to register for notification of a service.
+ *
+ * @param[in]       gatt_if : gatt interface id.
+ * @param[in]       bda : target GATT server.
+ * @param[in]       srvc_id : pointer to GATT service ID.
+ * @param[in]       char_id : pointer to GATT characteristic ID.
+ *
+ *
+ * @return          - ESP_OK: registration succeeds
+ *                  - other: failed
+ *
+ */
 esp_gatt_status_t esp_ble_gattc_register_for_notify (esp_gatt_if_t gatt_if,
         esp_bd_addr_t server_bda,
         esp_gatt_srvc_id_t *srvc_id,
         esp_gatt_id_t *char_id);
 
 
-
-/*******************************************************************************
-**
-** @function        esp_ble_gattc_unregister_ntf
-**
-** @brief           This function is called to de-register for notification of a service.
-**
-** @param[in]       gatt_if : gatt interface id.
-** @param[in]       bda : target GATT server.
-** @param[in]       srvc_id : pointer to GATT service ID.
-** @param[in]       char_id : pointer to GATT characteristic ID.
-**
-** @return          OK if unregister succeed, otherwise failed.
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gattc_unregister_ntf
+ *
+ * @brief           This function is called to de-register for notification of a service.
+ *
+ * @param[in]       gatt_if : gatt interface id.
+ * @param[in]       bda : target GATT server.
+ * @param[in]       srvc_id : pointer to GATT service ID.
+ * @param[in]       char_id : pointer to GATT characteristic ID.
+ *
+ *
+ * @return          - ESP_OK: unregister succeeds
+ *                  - other: failed
+ *
+ */
 esp_gatt_status_t esp_ble_gattc_unregister_for_notify (esp_gatt_if_t gatt_if,
         esp_bd_addr_t server_bda,
         esp_gatt_srvc_id_t *srvc_id,
index 157c25c5d52b1256d0deabc996ff486b5e28d16f..1492df96a2612061e9c55c1483324832960ef631 100644 (file)
 #include "bta_gatt_api.h"
 #include "esp_err.h"
 
-/* GATT Server Data Structure */
-/* Server callback function events */
-#define ESP_GATTS_REG_EVT                 0
-#define ESP_GATTS_READ_EVT                1
-#define ESP_GATTS_WRITE_EVT               2
-#define ESP_GATTS_EXEC_WRITE_EVT          3
-#define ESP_GATTS_MTU_EVT                 4
-#define ESP_GATTS_CONF_EVT                5
-#define ESP_GATTS_UNREG_EVT               6
-#define ESP_GATTS_CREATE_EVT              7
-#define ESP_GATTS_ADD_INCL_SRVC_EVT       8
-#define ESP_GATTS_ADD_CHAR_EVT            9
-#define ESP_GATTS_ADD_CHAR_DESCR_EVT      10
-#define ESP_GATTS_DELETE_EVT             11
-#define ESP_GATTS_START_EVT               12
-#define ESP_GATTS_STOP_EVT                13
-#define ESP_GATTS_CONNECT_EVT             14
-#define ESP_GATTS_DISCONNECT_EVT          15
-#define ESP_GATTS_OPEN_EVT                16
-#define ESP_GATTS_CANCEL_OPEN_EVT         17
-#define ESP_GATTS_CLOSE_EVT               18
-#define ESP_GATTS_LISTEN_EVT              19
-#define ESP_GATTS_CONGEST_EVT             20
-/* following is extra event */
-#define ESP_GATTS_RESPONSE_EVT            21
+/// GATT Server callback function events
+typedef enum {
+       ESP_GATTS_REG_EVT                = 0,           /*!< When register application id, the event comes */
+       ESP_GATTS_READ_EVT               = 1,           /*!< When gatt client request read operation, the event comes */
+       ESP_GATTS_WRITE_EVT              = 2,           /*!< When gatt client request write operation, the event comes */
+       ESP_GATTS_EXEC_WRITE_EVT         = 3,           /*!< When gatt client request execute write, the event comes */
+       ESP_GATTS_MTU_EVT                = 4,           /*!< When set mtu complete, the event comes */
+       ESP_GATTS_CONF_EVT               = 5,           /*!< When receive confirm, the event comes */
+       ESP_GATTS_UNREG_EVT              = 6,           /*!< When unregister application id, the event comes */
+       ESP_GATTS_CREATE_EVT             = 7,           /*!< When create service complete, the event comes */
+       ESP_GATTS_ADD_INCL_SRVC_EVT      = 8,           /*!< When add included service complete, the event comes */
+       ESP_GATTS_ADD_CHAR_EVT           = 9,           /*!< When add characteristic complete, the event comes */
+       ESP_GATTS_ADD_CHAR_DESCR_EVT     = 10,          /*!< When add descriptor complete, the event comes */
+       ESP_GATTS_DELETE_EVT             = 11,          /*!< When delete service complete, the event comes */
+       ESP_GATTS_START_EVT              = 12,          /*!< When start service complete, the event comes */
+       ESP_GATTS_STOP_EVT               = 13,          /*!< When stop service complete, the event comes */
+       ESP_GATTS_CONNECT_EVT            = 14,          /*!< When gatt client connect, the event comes */
+       ESP_GATTS_DISCONNECT_EVT         = 15,          /*!< When gatt client disconnect, the event comes */
+       ESP_GATTS_OPEN_EVT               = 16,          /*!< When connect to peer, the event comes */
+       ESP_GATTS_CANCEL_OPEN_EVT        = 17,          /*!< When disconnect from peer, the event comes */
+       ESP_GATTS_CLOSE_EVT              = 18,          /*!< When gatt server close, the event comes */
+       ESP_GATTS_LISTEN_EVT             = 19,          /*!< When gatt listen to be connected the event comes */
+       ESP_GATTS_CONGEST_EVT            = 20,          /*!< When congest happen, the event comes */
+       /* following is extra event */
+       ESP_GATTS_RESPONSE_EVT           = 21,          /*!< When gatt send response complete, the event comes */
+} esp_gatts_cb_event_t;
 
 /**
  * @brief Gatt server callback parameters union
@@ -237,243 +238,255 @@ typedef union {
     } rsp;                                                             /*!< Gatt server callback param of ESP_GATTS_RESPONSE_EVT */
 } esp_ble_gatts_cb_param_t;
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_register_callback
-**
-** @brief           This function is called to register application callbacks
-**                  with BTA GATTS module.
-**
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_register_callback
+ *
+ * @brief           This function is called to register application callbacks
+ *                  with BTA GATTS module.
+ *
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_register_callback(esp_profile_cb_t callback);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_app_register
-**
-** @brief           This function is called to register application identifier
-**
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_app_register
+ *
+ * @brief           This function is called to register application identifier
+ *
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_app_register(uint16_t app_id);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_app_unregister
-**
-** @brief           unregister with GATT Server.
-**
-** @param[in]       gatt_if: gatt interface id.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_app_unregister
+ *
+ * @brief           unregister with GATT Server.
+ *
+ * @param[in]       gatt_if: gatt interface id.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_app_unregister(esp_gatt_if_t gatt_if);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_create_service
-**
-** @brief           Create a service. When service creation is done, a callback
-**                  event BTA_GATTS_CREATE_SRVC_EVT is called to report status
-**                  and service ID to the profile. The service ID obtained in
-**                  the callback function needs to be used when adding included
-**                  service and characteristics/descriptors into the service.
-**
-** @param[in]       gatt_if: gatt interface ID
-** @param[in]       service_id: service ID.
-** @param[in]       num_handle: number of handle requested for this service.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_create_service
+ *
+ * @brief           Create a service. When service creation is done, a callback
+ *                  event BTA_GATTS_CREATE_SRVC_EVT is called to report status
+ *                  and service ID to the profile. The service ID obtained in
+ *                  the callback function needs to be used when adding included
+ *                  service and characteristics/descriptors into the service.
+ *
+ * @param[in]       gatt_if: gatt interface ID
+ * @param[in]       service_id: service ID.
+ * @param[in]       num_handle: number of handle requested for this service.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_create_service(esp_gatt_if_t gatt_if,
                                        esp_gatt_srvc_id_t *service_id, uint16_t num_handle);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_add_included_service
-**
-** @brief           This function is called to add an included service. After included
-**                  service is included, a callback event BTA_GATTS_ADD_INCL_SRVC_EVT
-**                  is reported the included service ID.
-**
-** @param[in]       service_handle: service handle to which this included service is to
-**                  be added.
-** @param[in]       included_service_handle: the service ID to be included.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_add_included_service
+ *
+ * @brief           This function is called to add an included service. After included
+ *                  service is included, a callback event BTA_GATTS_ADD_INCL_SRVC_EVT
+ *                  is reported the included service ID.
+ *
+ * @param[in]       service_handle: service handle to which this included service is to
+ *                  be added.
+ * @param[in]       included_service_handle: the service ID to be included.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_add_included_service(uint16_t service_handle, uint16_t included_service_handle);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_add_char
-**
-** @brief           This function is called to add a characteristic into a service.
-**
-** @param[in]       service_handle: service handle to which this included service is to
-**                  be added.
-** @param[in]       char_uuid : Characteristic UUID.
-** @param[in]       perm      : Characteristic value declaration attribute permission.
-** @param[in]       property  : Characteristic Properties
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_add_char
+ *
+ * @brief           This function is called to add a characteristic into a service.
+ *
+ * @param[in]       service_handle: service handle to which this included service is to
+ *                  be added.
+ * @param[in]       char_uuid : Characteristic UUID.
+ * @param[in]       perm      : Characteristic value declaration attribute permission.
+ * @param[in]       property  : Characteristic Properties
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_add_char(uint16_t service_handle,  esp_bt_uuid_t  *char_uuid,
                                  esp_gatt_perm_t perm, esp_gatt_char_prop_t property);
 
 
-
-
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_add_char_descr
-**
-** @brief           This function is called to add characteristic descriptor. When
-**                  it's done, a callback event BTA_GATTS_ADD_DESCR_EVT is called
-**                  to report the status and an ID number for this descriptor.
-**
-** @param[in]       service_handle: service handle to which this characteristic descriptor is to
-**                              be added.
-** @param[in]       perm: descriptor access permission.
-** @param[in]       descr_uuid: descriptor UUID.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_add_char_descr
+ *
+ * @brief           This function is called to add characteristic descriptor. When
+ *                  it's done, a callback event BTA_GATTS_ADD_DESCR_EVT is called
+ *                  to report the status and an ID number for this descriptor.
+ *
+ * @param[in]       service_handle: service handle to which this characteristic descriptor is to
+ *                              be added.
+ * @param[in]       perm: descriptor access permission.
+ * @param[in]       descr_uuid: descriptor UUID.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_add_char_descr (uint16_t service_handle,
                                         esp_bt_uuid_t  *descr_uuid,
                                         esp_gatt_perm_t perm);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_delete_service
-**
-** @brief           This function is called to delete a service. When this is done,
-**                  a callback event BTA_GATTS_DELETE_EVT is report with the status.
-**
-** @param[in]       service_handled: service_handle to be deleted.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_delete_service
+ *
+ * @brief           This function is called to delete a service. When this is done,
+ *                  a callback event BTA_GATTS_DELETE_EVT is report with the status.
+ *
+ * @param[in]       service_handled: service_handle to be deleted.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_delete_service(uint16_t service_handle);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_start_service
-**
-** @brief           This function is called to start a service.
-**
-** @param[in]       service_handle: the service handle to be started.
-** @param[in]       sup_transport: supported transport.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_start_service
+ *
+ * @brief           This function is called to start a service.
+ *
+ * @param[in]       service_handle: the service handle to be started.
+ * @param[in]       sup_transport: supported transport.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_start_service(uint16_t service_handle);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_stop_service
-**
-** @brief           This function is called to stop a service.
-**
-** @param[in]       service_handle - service to be topped.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_stop_service
+ *
+ * @brief           This function is called to stop a service.
+ *
+ * @param[in]       service_handle - service to be topped.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_stop_service(uint16_t service_handle);
 
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_send_indicate
-**
-** @brief           This function is called to read a characteristics descriptor.
-**
-** @param[in]       conn_id - connection id to indicate.
-** @param[in]       attribute_handle - attribute handle to indicate.
-** @param[in]       value_len - indicate value length.
-** @param[in]       value: value to indicate.
-** @param[in]       need_confirm - if this indication expects a confirmation or not.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_send_indicate
+ *
+ * @brief           This function is called to read a characteristics descriptor.
+ *
+ * @param[in]       conn_id - connection id to indicate.
+ * @param[in]       attribute_handle - attribute handle to indicate.
+ * @param[in]       value_len - indicate value length.
+ * @param[in]       value: value to indicate.
+ * @param[in]       need_confirm - if this indication expects a confirmation or not.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_send_indicate(uint16_t conn_id, uint16_t attr_handle,
                                       uint16_t value_len, uint8_t *value, bool need_confirm);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_send_rsp
-**
-** @brief           This function is called to send a response to a request.
-**
-** @param[in]       conn_id - connection identifier.
-** @param[in]       trans_id - transfer id
-** @param[in]       status - response status
-** @param[in]       rsp - response data.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_send_rsp
+ *
+ * @brief           This function is called to send a response to a request.
+ *
+ * @param[in]       conn_id - connection identifier.
+ * @param[in]       trans_id - transfer id
+ * @param[in]       status - response status
+ * @param[in]       rsp - response data.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_send_response(uint16_t conn_id, uint32_t trans_id,
                                       esp_gatt_status_t status, esp_gatt_rsp_t *rsp);
 
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_open
-**
-** @brief           Open a direct open connection or add a background auto connection
-**
-** @param[in]       gatt_if: application ID.
-** @param[in]       remote_bda: remote device bluetooth device address.
-** @param[in]       is_direct: direct connection or background auto connection
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_open
+ *
+ * @brief           Open a direct open connection or add a background auto connection
+ *
+ * @param[in]       gatt_if: application ID.
+ * @param[in]       remote_bda: remote device bluetooth device address.
+ * @param[in]       is_direct: direct connection or background auto connection
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_open(esp_gatt_if_t gatt_if, esp_bd_addr_t remote_bda, bool is_direct);
 
-/*******************************************************************************
-**
-** @function        esp_ble_gatts_close
-**
-** @brief           Close a connection  a remote device.
-**
-** @param[in]       conn_id: connection ID to be closed.
-**
-** @return          ESP_OK - success, other - failed
-**
-*******************************************************************************/
+/**
+ *
+ * @function        esp_ble_gatts_close
+ *
+ * @brief           Close a connection  a remote device.
+ *
+ * @param[in]       conn_id: connection ID to be closed.
+ *
+ * @return          - ESP_OK : success
+ *                  - other  : failed
+ *
+ */
 esp_err_t esp_ble_gatts_close(uint16_t conn_id);