From 7c777f40aa6a05b5c3e56eb841fe445ac60bc464 Mon Sep 17 00:00:00 2001 From: zhiweijian Date: Tue, 13 Feb 2018 16:03:48 +0800 Subject: [PATCH] Component/bt: add some comment --- components/bt/bluedroid/api/include/esp_gattc_api.h | 2 +- components/bt/bluedroid/bta/gatt/bta_gattc_api.c | 2 +- components/bt/bluedroid/bta/include/bta_gatt_api.h | 2 +- .../bt/bluedroid/btc/profile/std/gatt/btc_gattc.c | 12 ++++++------ examples/bluetooth/blufi/main/blufi_example_main.c | 8 ++++++++ .../main/example_ble_sec_gattc_demo.c | 8 +++++--- .../main/example_ble_sec_gatts_demo.c | 4 +++- .../main/gatts_table_creat_demo.c | 9 +++++++-- 8 files changed, 32 insertions(+), 15 deletions(-) diff --git a/components/bt/bluedroid/api/include/esp_gattc_api.h b/components/bt/bluedroid/api/include/esp_gattc_api.h index adf3dbda3..e6a7ef976 100644 --- a/components/bt/bluedroid/api/include/esp_gattc_api.h +++ b/components/bt/bluedroid/api/include/esp_gattc_api.h @@ -63,7 +63,7 @@ typedef enum { ESP_GATTC_UNREG_FOR_NOTIFY_EVT = 39, /*!< When unregister for notification of a service completes, the event comes */ ESP_GATTC_CONNECT_EVT = 40, /*!< When the ble physical connection is set up, the event comes */ ESP_GATTC_DISCONNECT_EVT = 41, /*!< When the ble physical connection disconnected, the event comes */ - ESP_GATTC_READ_MUTIPLE_EVT = 42, /*!< When the ble characteristic or descriptor mutiple complete, the event comes */ + ESP_GATTC_READ_MULTIPLE_EVT = 42, /*!< When the ble characteristic or descriptor multiple complete, the event comes */ ESP_GATTC_QUEUE_FULL_EVT = 43, /*!< When the gattc command queue full, the event comes */ } esp_gattc_cb_event_t; diff --git a/components/bt/bluedroid/bta/gatt/bta_gattc_api.c b/components/bt/bluedroid/bta/gatt/bta_gattc_api.c index 1a674ca0d..d1ac85544 100644 --- a/components/bt/bluedroid/bta/gatt/bta_gattc_api.c +++ b/components/bt/bluedroid/bta/gatt/bta_gattc_api.c @@ -545,7 +545,7 @@ void BTA_GATTC_ReadMultiple(UINT16 conn_id, tBTA_GATTC_MULTI *p_read_multi, p_buf->hdr.layer_specific = conn_id; p_buf->auth_req = auth_req; p_buf->num_attr = p_read_multi->num_attr; - p_buf->cmpl_evt = BTA_GATTC_READ_MUTIPLE_EVT; + p_buf->cmpl_evt = BTA_GATTC_READ_MULTIPLE_EVT; if (p_buf->num_attr > 0) { memcpy(p_buf->handles, p_read_multi->handles, sizeof(UINT16) * p_read_multi->num_attr); } diff --git a/components/bt/bluedroid/bta/include/bta_gatt_api.h b/components/bt/bluedroid/bta/include/bta_gatt_api.h index 95f681521..8bc7b66ef 100644 --- a/components/bt/bluedroid/bta/include/bta_gatt_api.h +++ b/components/bt/bluedroid/bta/include/bta_gatt_api.h @@ -181,7 +181,7 @@ typedef UINT8 tBTA_GATT_STATUS; #define BTA_GATTC_ADV_VSC_EVT 34 /* ADV VSC event */ #define BTA_GATTC_CONNECT_EVT 35 /* GATTC CONNECT event */ #define BTA_GATTC_DISCONNECT_EVT 36 /* GATTC DISCONNECT event */ -#define BTA_GATTC_READ_MUTIPLE_EVT 37 /* GATTC Read mutiple event */ +#define BTA_GATTC_READ_MULTIPLE_EVT 37 /* GATTC Read mutiple event */ #define BTA_GATTC_QUEUE_FULL_EVT 38 /* GATTC queue full event */ typedef UINT8 tBTA_GATTC_EVT; diff --git a/components/bt/bluedroid/btc/profile/std/gatt/btc_gattc.c b/components/bt/bluedroid/btc/profile/std/gatt/btc_gattc.c index 3a66df198..03f2b53e7 100644 --- a/components/bt/bluedroid/btc/profile/std/gatt/btc_gattc.c +++ b/components/bt/bluedroid/btc/profile/std/gatt/btc_gattc.c @@ -128,8 +128,8 @@ static void btc_gattc_copy_req_data(btc_msg_t *msg, void *p_dest, void *p_src) // Allocate buffer for request data if necessary switch (msg->act) { case BTA_GATTC_READ_DESCR_EVT: - case BTA_GATTC_READ_CHAR_EVT: - case BTA_GATTC_READ_MUTIPLE_EVT: { + case BTA_GATTC_READ_CHAR_EVT: + case BTA_GATTC_READ_MULTIPLE_EVT: { if (p_src_data->read.p_value && p_src_data->read.p_value->p_value) { p_dest_data->read.p_value = (tBTA_GATT_UNFMT *)osi_malloc(sizeof(tBTA_GATT_UNFMT) + p_src_data->read.p_value->len); p_dest_data->read.p_value->p_value = (uint8_t *)(p_dest_data->read.p_value + 1); @@ -152,8 +152,8 @@ static void btc_gattc_free_req_data(btc_msg_t *msg) tBTA_GATTC *arg = (tBTA_GATTC *)(msg->arg); switch (msg->act) { case BTA_GATTC_READ_DESCR_EVT: - case BTA_GATTC_READ_CHAR_EVT: - case BTA_GATTC_READ_MUTIPLE_EVT: { + case BTA_GATTC_READ_CHAR_EVT: + case BTA_GATTC_READ_MULTIPLE_EVT: { if (arg->read.p_value) { osi_free(arg->read.p_value); } @@ -809,9 +809,9 @@ void btc_gattc_cb_handler(btc_msg_t *msg) btc_gattc_cb_to_app(ESP_GATTC_READ_DESCR_EVT, gattc_if, ¶m); break; } - case BTA_GATTC_READ_MUTIPLE_EVT: { + case BTA_GATTC_READ_MULTIPLE_EVT: { set_read_value(&gattc_if, ¶m, &arg->read); - btc_gattc_cb_to_app(ESP_GATTC_READ_MUTIPLE_EVT, gattc_if, ¶m); + btc_gattc_cb_to_app(ESP_GATTC_READ_MULTIPLE_EVT, gattc_if, ¶m); break; } case BTA_GATTC_WRITE_DESCR_EVT: { diff --git a/examples/bluetooth/blufi/main/blufi_example_main.c b/examples/bluetooth/blufi/main/blufi_example_main.c index c16aa38d6..b99d8a820 100644 --- a/examples/bluetooth/blufi/main/blufi_example_main.c +++ b/examples/bluetooth/blufi/main/blufi_example_main.c @@ -6,6 +6,14 @@ CONDITIONS OF ANY KIND, either express or implied. */ + +/**************************************************************************** +* This is a demo for bluetooth config wifi connection to ap. You can config ESP32 to connect a softap +* or config ESP32 as a softap to be connected by other device. APP can be downloaded from github +* android source code: https://github.com/EspressifApp/EspBlufi +* iOS source code: https://github.com/EspressifApp/EspBlufiForiOS +****************************************************************************/ + #include #include #include diff --git a/examples/bluetooth/gatt_security_client/main/example_ble_sec_gattc_demo.c b/examples/bluetooth/gatt_security_client/main/example_ble_sec_gattc_demo.c index 65b29c239..c4b71c4ab 100644 --- a/examples/bluetooth/gatt_security_client/main/example_ble_sec_gattc_demo.c +++ b/examples/bluetooth/gatt_security_client/main/example_ble_sec_gattc_demo.c @@ -351,14 +351,16 @@ static void esp_gap_cb(esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *par case ESP_GAP_BLE_LOCAL_ER_EVT: /* BLE local ER event */ ESP_LOGI(GATTC_TAG, "ESP_GAP_BLE_LOCAL_ER_EVT"); break; - case ESP_GAP_BLE_NC_REQ_EVT: - ESP_LOGI(GATTC_TAG, "ESP_GAP_BLE_NC_REQ_EVT"); - break; case ESP_GAP_BLE_SEC_REQ_EVT: /* send the positive(true) security response to the peer device to accept the security request. If not accept the security request, should sent the security response with negative(false) accept value*/ esp_ble_gap_security_rsp(param->ble_security.ble_req.bd_addr, true); break; + case ESP_GAP_BLE_NC_REQ_EVT: + /* The app will receive this evt when the IO has DisplayYesNO capability and the peer device IO also has DisplayYesNo capability. + show the passkey number to the user to confirm it with the number displayed by peer deivce. */ + ESP_LOGI(GATTC_TAG, "ESP_GAP_BLE_NC_REQ_EVT, the passkey Notify number:%d", param->ble_security.key_notif.passkey); + break; case ESP_GAP_BLE_PASSKEY_NOTIF_EVT: ///the app will receive this evt when the IO has Output capability and the peer device IO has Input capability. ///show the passkey number to the user to input it in the peer deivce. ESP_LOGI(GATTC_TAG, "The passkey Notify number:%d", param->ble_security.key_notif.passkey); diff --git a/examples/bluetooth/gatt_security_server/main/example_ble_sec_gatts_demo.c b/examples/bluetooth/gatt_security_server/main/example_ble_sec_gatts_demo.c index 39762eccc..fe008f062 100644 --- a/examples/bluetooth/gatt_security_server/main/example_ble_sec_gatts_demo.c +++ b/examples/bluetooth/gatt_security_server/main/example_ble_sec_gatts_demo.c @@ -295,7 +295,9 @@ static void gap_event_handler(esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param ESP_LOGI(GATTS_TABLE_TAG, "ESP_GAP_BLE_LOCAL_ER_EVT"); break; case ESP_GAP_BLE_NC_REQ_EVT: - ESP_LOGI(GATTS_TABLE_TAG, "ESP_GAP_BLE_NC_REQ_EVT"); + /* The app will receive this evt when the IO has DisplayYesNO capability and the peer device IO also has DisplayYesNo capability. + show the passkey number to the user to confirm it with the number displayed by peer deivce. */ + ESP_LOGI(GATTS_TABLE_TAG, "ESP_GAP_BLE_NC_REQ_EVT, the passkey Notify number:%d", param->ble_security.key_notif.passkey); break; case ESP_GAP_BLE_SEC_REQ_EVT: /* send the positive(true) security response to the peer device to accept the security request. diff --git a/examples/bluetooth/gatt_server_service_table/main/gatts_table_creat_demo.c b/examples/bluetooth/gatt_server_service_table/main/gatts_table_creat_demo.c index 525a73456..1cc7474a6 100644 --- a/examples/bluetooth/gatt_server_service_table/main/gatts_table_creat_demo.c +++ b/examples/bluetooth/gatt_server_service_table/main/gatts_table_creat_demo.c @@ -38,7 +38,10 @@ #define SAMPLE_DEVICE_NAME "ESP_GATTS_DEMO" #define SVC_INST_ID 0 -#define GATTS_DEMO_CHAR_VAL_LEN_MAX 100 +/* The max length of characteristic value. When the gatt client write or prepare write, +* the data length must be less than GATTS_DEMO_CHAR_VAL_LEN_MAX. +*/ +#define GATTS_DEMO_CHAR_VAL_LEN_MAX 500 #define PREPARE_BUF_MAX_SIZE 1024 #define CHAR_DECLARATION_SIZE (sizeof(uint8_t)) @@ -378,6 +381,7 @@ static void gatts_profile_event_handler(esp_gatts_cb_event_t event, esp_gatt_if_ break; case ESP_GATTS_WRITE_EVT: if (!param->write.is_prep){ + // the data length of gattc write must be less than GATTS_DEMO_CHAR_VAL_LEN_MAX. ESP_LOGI(GATTS_TABLE_TAG, "GATT_WRITE_EVT, handle = %d, value len = %d, value :", param->write.handle, param->write.len); esp_log_buffer_hex(GATTS_TABLE_TAG, param->write.value, param->write.len); if (heart_rate_handle_table[IDX_CHAR_CFG_A] == param->write.handle && param->write.len == 2){ @@ -420,7 +424,8 @@ static void gatts_profile_event_handler(esp_gatts_cb_event_t event, esp_gatt_if_ example_prepare_write_event_env(gatts_if, &prepare_write_env, param); } break; - case ESP_GATTS_EXEC_WRITE_EVT: + case ESP_GATTS_EXEC_WRITE_EVT: + // the length of gattc prapare write data must be less than GATTS_DEMO_CHAR_VAL_LEN_MAX. ESP_LOGI(GATTS_TABLE_TAG, "ESP_GATTS_EXEC_WRITE_EVT"); example_exec_write_event_env(&prepare_write_env, param); break;