From 4d7e92bb352b2c398dd1cf7f093695356b25c65c Mon Sep 17 00:00:00 2001 From: Jin Cheng Date: Tue, 22 Oct 2024 21:23:21 +0800 Subject: [PATCH 1/2] fix(bt/bluedroid): AG should send OK or other error codes to HF client when it is driven by HF to initiate a call. --- .../bluetooth/bluedroid/classic_bt/hfp_ag/main/bt_app_hf.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/examples/bluetooth/bluedroid/classic_bt/hfp_ag/main/bt_app_hf.c b/examples/bluetooth/bluedroid/classic_bt/hfp_ag/main/bt_app_hf.c index 2fdb3395ef..b6924bbdec 100644 --- a/examples/bluetooth/bluedroid/classic_bt/hfp_ag/main/bt_app_hf.c +++ b/examples/bluetooth/bluedroid/classic_bt/hfp_ag/main/bt_app_hf.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2021-2023 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2021-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Unlicense OR CC0-1.0 */ @@ -32,7 +32,7 @@ const char *c_hf_evt_str[] = { "AUDIO_STATE_EVT", /*!< AUDIO CONNECTION STATE CONTROL */ "VR_STATE_CHANGE_EVT", /*!< VOICE RECOGNITION CHANGE */ "VOLUME_CONTROL_EVT", /*!< AUDIO VOLUME CONTROL */ - "UNKNOW_AT_CMD", /*!< UNKNOW AT COMMAND RECIEVED */ + "UNKNOW_AT_CMD", /*!< UNKNOWN AT COMMAND RECEIVED */ "IND_UPDATE", /*!< INDICATION UPDATE */ "CIND_RESPONSE_EVT", /*!< CALL & DEVICE INDICATION */ "COPS_RESPONSE_EVT", /*!< CURRENT OPERATOR EVENT */ @@ -355,7 +355,7 @@ void bt_app_hf_cb(esp_hf_cb_event_t event, esp_hf_cb_param_t *param) case ESP_HF_IND_UPDATE_EVT: { - ESP_LOGI(BT_HF_TAG, "--UPDATE INDCATOR!"); + ESP_LOGI(BT_HF_TAG, "--UPDATE INDICATOR!"); esp_hf_call_status_t call_state = 1; esp_hf_call_setup_status_t call_setup_state = 2; esp_hf_network_state_t ntk_state = 1; @@ -460,6 +460,7 @@ void bt_app_hf_cb(esp_hf_cb_event_t event, esp_hf_cb_param_t *param) if (param->out_call.type == ESP_HF_DIAL_NUM) { // dia_num ESP_LOGI(BT_HF_TAG, "--Dial number \"%s\".", param->out_call.num_or_loc); + esp_hf_ag_cmee_send(param->out_call.remote_addr, ESP_HF_AT_RESPONSE_CODE_OK, ESP_HF_CME_AG_FAILURE); esp_hf_ag_out_call(param->out_call.remote_addr,1,0,1,0,param->out_call.num_or_loc,0); } else if (param->out_call.type == ESP_HF_DIAL_MEM) { // dia_mem From a5d2d906adee5076a59861b94fe508909f0dd658 Mon Sep 17 00:00:00 2001 From: Jin Cheng Date: Fri, 8 Nov 2024 12:51:23 +0800 Subject: [PATCH 2/2] fix(bt/controller): Fixed some controller bugs on ESP32 - Fixed wrong logic in handling sniff transaction collision at slave side - Fixed the issue ACL is stopped too early before eSCO --- components/bt/controller/lib_esp32 | 2 +- components/esp_rom/esp32/ld/esp32.rom.ld | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/components/bt/controller/lib_esp32 b/components/bt/controller/lib_esp32 index 5c4a62c1d4..4f9869a760 160000 --- a/components/bt/controller/lib_esp32 +++ b/components/bt/controller/lib_esp32 @@ -1 +1 @@ -Subproject commit 5c4a62c1d4577d1352d28708c790ba2b4f741842 +Subproject commit 4f9869a760c7f6982d2d4d6b56ef46c1b2488611 diff --git a/components/esp_rom/esp32/ld/esp32.rom.ld b/components/esp_rom/esp32/ld/esp32.rom.ld index a24ff27f07..c6abfb4559 100644 --- a/components/esp_rom/esp32/ld/esp32.rom.ld +++ b/components/esp_rom/esp32/ld/esp32.rom.ld @@ -663,6 +663,7 @@ PROVIDE ( ld_acl_rsw_frm_cbk = 0x40033bb0 ); PROVIDE ( ld_sco_modify = 0x40031778 ); PROVIDE ( lm_cmd_cmp_send = 0x40051838 ); PROVIDE ( ld_sco_frm_cbk = 0x400349dc ); +PROVIDE ( ld_sco_evt_stop_cbk = 0x40031d78 ); PROVIDE ( ld_acl_sco_rsvd_check = 0x4002fa94 ); PROVIDE ( ld_acl_sniff_frm_cbk = 0x4003482c ); PROVIDE ( ld_inq_end = 0x4003ab48 );