Commit Graph
449 Commits
Author SHA1 Message Date
hejiaxin 25ca329650 fix(bt_hfp): Fix the solution of unknown AT command 2026-09-03 11:04:05 +08:00
hejiaxin 9f6cf1ac3c feat(bluedroid): Update LC3-SWB support in bluedroid
- Update LC3 in btc and bta, update AT
- Update LC3 in SCO frame transfer and examples
- improve lc3 transfer speed
- Fix some encoding and decoding bugs
- Rename the functions and macros to fit both msbc and lc3
- Add config dependency
- Add migration guides for bluetooth-classic
- change the statement of "Wide Band Speech" to "Wideband Speech" to fit HFPv1.10
2026-09-03 11:02:50 +08:00
yangfeng 998bd59e3f feat: Add default SBC SEP in A2DP init 2026-08-27 15:44:58 +08:00
zhanghaipeng 8d230c7650 docs(bt): clarify Bluedroid GATT signed write API comments
Correct misleading CHAR_PROP_BIT_AUTH wording and document CSRK-based
signed write usage for server permissions and client write APIs.
2026-08-20 11:22:42 +08:00
linruihao 4f54340e51 feat(bt/bluedroid): support Classic Bluetooth PAN profile
- Port part of PAN/BNEP code from Android
- Add ESP API and BTC layer
2026-08-17 19:52:21 +08:00
Wang Meng Yang a05486f3dc Merge branch 'fix/aireview_pbap' into 'master'
fix(bt_pbap): Fix some bugs in bluedroid PBAP

See merge request espressif/esp-idf!51331
2026-08-13 14:18:20 +08:00
Zhou Xiao 08252a2dd5 fix(bt): initialize BLE Log in host-only mode 2026-08-12 18:50:08 +08:00
hejiaxin abfd193662 fix(bt_pbap): Fix some bugs in bluedroid PBAP
- Add sdp_seq to avoid p_ccb being free during sdp
- Changed some BTA_Pba functions to return non-void value
- Improve error catching and report
- Refactor bta_pba_client_response to avoid UAF problem
- Rearrange btc_pba_client init flag to avoid some disturbing bug
2026-08-12 16:00:11 +08:00
Island 5371ee669b Merge branch 'feat/support_pawr_connect_evt' into 'master'
feat(ble/bluedroid): Support PAWR connection event

See merge request espressif/esp-idf!50612
2026-08-03 10:16:58 +08:00
zhiweijian 7da7fa42ac feat(ble/bluedroid): Support PAWR connection event 2026-07-30 21:00:26 +08:00
Wang Meng Yang 82b28b2641 Merge branch 'fix/aireview_critical' into 'master'
fix: Fix some critical bugs in classic bt

See merge request espressif/esp-idf!50312
2026-07-29 11:41:36 +08:00
Wang Meng Yang d348f43f56 Merge branch 'bugfix/a2dp_api_init_check' into 'master'
fix(bt): Fix compatibility with A2DP API legacy usage methods

Closes IDFGH-17892

See merge request espressif/esp-idf!50611
2026-07-28 19:35:28 +08:00
chenjianhua 0407893834 feat(bt): Add host-agnostic BT OSAL and shared BLE profile task
- Add bt_osal: event queues, mutexes, semaphores, callouts, etc.
- Add the shared BLE profile task and event queue
- Bring both up and tear them down in the host init/deinit paths
- Add unit tests for the OSAL and the profile task
2026-07-26 13:24:53 +08:00
hejiaxin 54cd579d3b fix(bt_stack): Fix some critical bugs in classic_bt stack
related: obex, smp, pbap, sdp, rfcomm, stack_dm

- Deinit function doesn't delete connection when OBEX_DYNAMIC_MEMORY is on
- Union tGOEPC_DATA sometimes is free by osi_free in some cases when it contains mtu_id
- Add correct free and return solution after fail
- Fix symbol mistake in mod calculation
- Fix pointer-related UAF problems and memory free problems
- Fix buffer overflows and out-of-bounds access
- Fix infinite loops triggered by integer overflow wraparound
- Fix double free
- Change layer_specific usage to avoid heap overflow
- Add some NULL check for pointers
- Fix sdp_db free function
- Fix state table mismatch
2026-07-23 15:46:38 +08:00
yangfeng 94b05ceee6 fix(bt): Fix compatibility with A2DP API legacy usage methods
- Modify the timing of API calls in the A2DP example
- Add a2dp_stream_aac test case
- Closes https://github.com/espressif/esp-idf/issues/18786
2026-07-20 11:35:33 +08:00
Jin Cheng 970923ba7d fix(bt/bluedroid): fixed issues from AI review in GAP, SPP, HID, L2CAP and HCI 2026-07-17 17:15:56 +08:00
Zhi Wei Jian 2e6cbccd55 Merge branch 'feat/support_bluedroid_dual_identify' into 'master'
feat(ble/bluedroid): Support bluedroid dual indentify

See merge request espressif/esp-idf!49640
2026-07-13 10:03:39 +08:00
zhiweijian 2358786647 feat(ble/bluedroid): Support bluedroid dual identity 2026-07-10 17:57:09 +08:00
zhiweijian 83f0831c53 feat(ble/bluedroid): Support bluedroid LE COC and EATT features 2026-07-09 14:03:01 +08:00
Jiang Jiang Jian ae860abd4c Merge branch 'bugfix/ai_review_btu_common' into 'master'
fix: Fix the critical issues of btu and bt_common from AI review report

See merge request espressif/esp-idf!49574
2026-06-29 12:00:22 +08:00
Jiang Jiang Jian af7e18f9d0 Merge branch 'bugfix/ai_review_a2dp' into 'master'
fix(bt): Fix the critical issues related to A2DP from AI review report

See merge request espressif/esp-idf!49355
2026-06-29 11:58:39 +08:00
Island 853f4ba18e Merge branch 'bugfix/fix_gap_update_conn_params_invalid_arg' into 'master'
fix(ble/bluedroid): return ESP_ERR_INVALID_ARG for invalid conn params

Closes BLERP-2915, BLERP-2917, and BLERP-2920

See merge request espressif/esp-idf!49854
2026-06-26 16:50:47 +08:00
Island d598b2d14d Merge branch 'feat/add_ble_core_6x_feature_for_bluedroid' into 'master'
Feat/add ble core 6x feature for bluedroid

See merge request espressif/esp-idf!49409
2026-06-25 12:01:05 +08:00
yangfeng 16fa00e3b2 fix: Fix the critical issues of btu and bt_common from AI review report
- advance connect queue on synchronous connect_cb failure
- lock bta_alarm_hash_map in all BTA timer APIs
- free controller params after stack disable; cleanup on init fail
- handle BTE_InitStack failure and signal init future
- validate HCI remote name event length before parse
- drop stale L2CAP quick-timer alarm events
2026-06-25 10:43:29 +08:00
zhiweijian 919622c01c feat(ble/bluedroid): add CS Security Requirements host support (Core 6.3) 2026-06-24 17:54:53 +08:00
zhiweijian 3844e24207 feat(ble/bluedroid): add LE UTP host support (Core 6.2) 2026-06-24 17:54:53 +08:00
zhiweijianandCursor 2a8a96d650 feat(ble/bluedroid): add Shorter Connection Intervals host support (Core 6.2)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 17:54:53 +08:00
zhiweijian d568f2f151 feat(ble/bluedroid): add LL Extended Feature Set host support (Core 6.0) 2026-06-24 16:53:37 +08:00
zhiweijianandCursor 5372ce03a3 feat(ble/bluedroid): add Frame Space Update host support (Core 6.0)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 16:52:45 +08:00
zhiweijian e20d3f0197 feat(ble/bluedroid): add DBAF host support (Core 6.0) 2026-06-24 16:00:19 +08:00
yangfeng 0dce2d707d fix(bt): Fix the critical issues related to A2DP from AI review report
AVDT:
- Roll back CCB allocation when cmd/rsp queue creation fails
- Free media packet on invalid handle in AVDT_WriteReqOpt
- Zero-init timeout failure message before GETCAP callback
- Initialize lcid_tbl to 0xFF to avoid mapping to tc_tbl[0]
BTA/AVRCP:
- Use size_t for AVRC message copy buffer allocation
- Allocate before register in BTA_AvEnable
- Guard BTA_AvRegister callback when enable never completed
- Remove invalid free of inline Cover Art image_descriptor
A2DP BTC/API:
- Default g_a2dp_on_deinit to true before profile init
- Reject source audio send when A2DP is deiniting
- Add shutdown state check in btc_a2dp_sink_shutdown
- Guard A2DP source timer against freed dynamic local param
2026-06-23 20:15:48 +08:00
yangfeng 0211122300 fix(bt): Fix the critical issues related to HFP from AI review report
HFP AG:
- Fix mSBC EV3 second-packet payload length calculation to prevent OOB read and infinite loop
- Add init/deinit guards in HF AG helper functions to avoid NULL deref
- Return bt_status_t from btc_hf_ag_audio_data_send to avoid silent buffer leak on SLC failure
- Break SCO CI data loop when SCO is not open to prevent CPU starvation
- Guard BTM_FreeSCN(0) and reset SCN after free in bta_ag_del_records
- Use OI_UINT32 for mSBC decode frame length to avoid stack corruption
- Bound AT Dial command string copy to BTA_AG_AT_MAX_LEN
HFP Client:
- Check osi_calloc result before use when reassembling split mSBC frames
- Use OI_UINT32 for mSBC decode frame length to avoid stack corruption
- Free SDP db, collision/AT timers and queued AT cmds before scb reset on disable
- Fix mSBC EV3 second-packet payload length calculation (same as AG)
- Reject pcm_resample input smaller than overlap window (96 bytes) on filtered path
- Break SCO CI data loop when SCO is not open to prevent CPU starvation
- Guard BTM_FreeSCN(0) and reset SCN after free in bta_hf_client_del_record
2026-06-23 19:36:16 +08:00
zhanghaipeng 6c53838e66 fix(ble/bluedroid): return ESP_ERR_INVALID_ARG for invalid conn params
Return ESP_ERR_INVALID_ARG instead of ESP_FAIL when connection
parameter validation fails
2026-06-22 11:56:22 +08:00
Island f17466af04 Merge branch 'opt/optimize_ble_document' into 'master'
Opt/optimize ble document

Closes BLERP-2844

See merge request espressif/esp-idf!48819
2026-06-01 19:23:27 +08:00
zhanghaipeng 4ab49f267b docs(bt): clarify BLE TX power priority and granularity 2026-06-01 11:20:27 +08:00
zhanghaipeng 43734e7d7b docs(bt): clarify GATT client auth_req may trigger SMP 2026-05-29 10:23:00 +08:00
zhanghaipeng 27fc241384 docs(bt/bluedroid): add usage note for esp_ble_get_cur_sendable_packets_num 2026-05-29 10:16:21 +08:00
zhanghaipeng 1a9f2af505 feat(ble/bluedroid): add auto-setting for is_aux parameter in esp_ble_gattc_enh_open 2026-05-29 10:16:21 +08:00
zhanghaipeng 4590b4bb34 doc(ble/bluedroid): clarify callback notes to avoid time-consuming ops 2026-05-29 10:16:20 +08:00
zhanghaipeng 82c5c1fef3 fix(ble/bluedroid): Ensure HIGH_DUTY_ADV_INTERVAL config is applied in stack 2026-05-29 10:16:20 +08:00
zhiweijian 0c3c894b7d fix(ble/bluedroid): fix CTE and ISO API validation 2026-05-29 10:15:06 +08:00
zhiweijian 54a1e31916 fix(ble/bluedroid): fix GATT server lifecycle and callbacks 2026-05-29 10:15:02 +08:00
zhiweijian 653477c3e9 fix(ble/bluedroid): fix GATT client API parameter validation 2026-05-29 10:14:50 +08:00
zhiweijian e3311c81c4 fix(ble/bluedroid): fix GAP BLE API parameter validation 2026-05-29 10:14:42 +08:00
yangfeng 99d6c664be feat(bt): A2DP source supports AAC codec 2026-05-21 21:15:36 +08:00
Rahul Tank b5770ee1ff Merge branch 'feat/esp_insight_read_log_master' into 'master'
feat(nimble): ADD BLE HCI logging support for ESP Insights

See merge request espressif/esp-idf!46706
2026-05-21 11:28:44 +05:30
Mayank Tyagi 8cb5be9ba2 feat(nimble): ADD BLE HCI logging support for ESP Insights 2026-05-20 13:53:02 +05:30
zhiweijian 86cff270dc fix(ble/bluedroid): note LE Coded PHY impact on Wi-Fi coexistence in bluedroid GAP/GATT APIs 2026-05-19 17:52:34 +08:00
Wang Meng Yang f04daa713e Merge branch 'bugfix/hfp_reg_data_cb' into 'master'
fix: Remove the check for recv and send being NULL

Closes BT-4329

See merge request espressif/esp-idf!48613
2026-05-19 09:33:34 +08:00
yangfeng 42624248d3 fix: Remove the check for recv and send being NULL 2026-05-18 15:11:23 +08:00