Mon, 17 Apr 2023 14:54:35 +0200
Added basic BLE code.
31 | 1 | /** |
2 | * @file ble_gap.c | |
3 | * @brief BLE GAP service. | |
4 | */ | |
5 | ||
6 | #include "config.h" | |
7 | ||
8 | ||
9 | static const char *TAG = "ble_gap"; | |
10 | ||
11 | static void gap_event_handler(esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param) | |
12 | { | |
13 | switch (event) { | |
14 | case ESP_GAP_BLE_ADV_DATA_SET_COMPLETE_EVT: | |
15 | ble_balkon_adv_set_complete_handle(); | |
16 | break; | |
17 | case ESP_GAP_BLE_SCAN_RSP_DATA_SET_COMPLETE_EVT: | |
18 | break; | |
19 | case ESP_GAP_BLE_ADV_START_COMPLETE_EVT: | |
20 | //advertising start complete event to indicate advertising start successfully or failed | |
21 | if (param->adv_start_cmpl.status != ESP_BT_STATUS_SUCCESS) { | |
22 | ESP_LOGE(TAG, "Advertising start failed"); | |
23 | } | |
24 | break; | |
25 | case ESP_GAP_BLE_ADV_STOP_COMPLETE_EVT: | |
26 | if (param->adv_stop_cmpl.status != ESP_BT_STATUS_SUCCESS) { | |
27 | ESP_LOGE(TAG, "Advertising stop failed"); | |
28 | } else { | |
29 | ESP_LOGI(TAG, "Stop adv successfully"); | |
30 | } | |
31 | break; | |
32 | case ESP_GAP_BLE_UPDATE_CONN_PARAMS_EVT: | |
33 | ESP_LOGI(TAG, "update connection params status = %d, min_int = %d, max_int = %d,conn_int = %d,latency = %d, timeout = %d", | |
34 | param->update_conn_params.status, | |
35 | param->update_conn_params.min_int, | |
36 | param->update_conn_params.max_int, | |
37 | param->update_conn_params.conn_int, | |
38 | param->update_conn_params.latency, | |
39 | param->update_conn_params.timeout); | |
40 | break; | |
41 | default: | |
42 | ESP_LOGI(TAG, "gap_event_handler(%d) unknown event", event); | |
43 | break; | |
44 | } | |
45 | } | |
46 | ||
47 | ||
48 | void ble_balkon_gap_register(void) | |
49 | { | |
50 | esp_err_t ret; | |
51 | ||
52 | ret = esp_ble_gap_register_callback(gap_event_handler); | |
53 | if (ret){ | |
54 | ESP_LOGE(TAG, "gap register error, error code = %x", ret); | |
55 | return; | |
56 | } | |
57 | } | |
58 |