Commit Graph
5591 Commits
Author SHA1 Message Date
hejiaxin 49bac9fbbf fix(bt_avrcp): size some AVRC command buffers 2026-09-01 11:24:18 +08:00
hejiaxin 8ac6aa8aa0 fix(bt_l2cap): size L2CAP ERTM S-frame & RX SDU buffer 2026-09-01 11:24:18 +08:00
hejiaxin b08f145416 fix(bt_sdp): size SDP TX buffers 2026-09-01 11:24:18 +08:00
hejiaxin 1995bfcb4d fix(bt_rfcomm): size RFCOMM TX buffers by peer MTU 2026-09-01 11:24:18 +08:00
hejiaxin 5036f97cb8 fix(bt_hid): size HID TX buffers to report length 2026-09-01 11:24:17 +08:00
Wang Meng Yang 077bb9ec72 Merge branch 'change/refactor_hidh_datapath_v5.4' into 'release/v5.4'
Change/refactor hidh datapath[backport v5.4]

See merge request espressif/esp-idf!51281
2026-08-28 08:55:03 +08:00
Wang Meng Yang 2c20296722 Merge branch 'bugfix/avrcp_version_compatibility_v5.4' into 'release/v5.4'
fix(bt): Fix the issue of AVRCP version compatibility (v5.4)

See merge request espressif/esp-idf!52089
2026-08-27 18:34:04 +08:00
zhanghaipeng 83d92f35e4 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-27 17:26:05 +08:00
zhanghaipeng 8643f157fc fix(ble/bluedroid): allow osi_event re-post during POSTING window
Do not reject osi_thread_post_event() when only POSTING is set.
QUEUED already prevents double-queueing; rejecting POSTING caused
HCI downstream lost wakeup. Add generic osi_event and hci downstream
diagnostics for post failures.
2026-08-27 17:21:35 +08:00
Island 803ab14795 Merge branch 'change/ble_update_lib_20260824_v5.4' into 'release/v5.4'
change(ble): [AUTO_MR] 20260824 - Update ESP BLE Controller Lib (5.4)

See merge request espressif/esp-idf!52018
2026-08-26 22:00:46 +08:00
yangfeng c0ff3bf835 fix(bt): Fix the issue of AVRCP version compatibility 2026-08-26 15:56:04 +08:00
Wang Meng Yang 65817f36ce Merge branch 'bugfix/a2dp_sink_nego_sbc_v5.4' into 'release/v5.4'
fix(bt): do not cap AVDTP Discover results by local SEP count (v5.4)

See merge request espressif/esp-idf!51753
2026-08-26 08:13:19 +08:00
Rahul Tank 082a7cf2e5 fix(nimble): bound PAwR synced connect retries in the example 2026-08-25 12:03:38 +05:30
Zhao Wei Liang 859ba4a430 change(ble): [AUTO_MR] Update lib_esp32c6 to cdaefea1
(cherry picked from commit d2210c2c26)

Co-authored-by: zhaoweiliang <zhaoweiliang@espressif.com>
2026-08-25 14:05:10 +08:00
Zhao Wei Liang dbded3ab2f change(ble): [AUTO_MR] Update lib_esp32h2 to cdaefea1
(cherry picked from commit b3ba8cad9a)

Co-authored-by: zhaoweiliang <zhaoweiliang@espressif.com>
2026-08-25 14:05:10 +08:00
yangfeng 37d751375c fix(bt): do not cap AVDTP Discover results by local SEP count
- Closes https://github.com/espressif/esp-idf/issues/18848
2026-08-24 19:13:43 +08:00
liqigan 94ecf32411 fix(bt/bluedroid): Fixed use after free issue on osi_event_delete 2026-08-24 14:19:05 +08:00
liqigan 10d324e04f fix(bt/bluedroid): Fixed HID host reconnection bug and enabled load HID devices
Closes https://github.com/espressif/esp-idf/issues/18335
2026-08-24 14:19:05 +08:00
liqigan e590b1c8eb change(bt/bluedroid): Refactored HCI ACL datapath 2026-08-24 14:19:05 +08:00
liqigan 329e7ba627 change(bt/bluedroid): Refactored HID host datapath 2026-08-24 14:19:05 +08:00
Astha Verma bc5642704e fix(nimble): Fixed gatt caching crash on disconnect 2026-08-24 11:30:59 +05:30
Rahul Tank eefa50da7e Merge branch 'bugfix/irk_smp_bond_issue_v5.4' into 'release/v5.4'
fix(nimble): Fix unpair_oldest_peer deleting wrong device (v5.4)

See merge request espressif/esp-idf!51838
2026-08-19 16:23:29 +05:30
Wang Meng Yang 6cd280ace0 Merge branch 'bugfix/strncpy_compilation_issue_v5.4' into 'release/v5.4'
fix(bluedroid): Fix the compilation issue of BCM_STRNCPY_S (v5.4)

See merge request espressif/esp-idf!51745
2026-08-19 10:39:03 +08:00
Rahul Tank 0401956b4e fix(nimble): Fix unpair_oldest_peer deleting wrong device
Sort bond entries by bond_count after in-place updates to maintain correct
eviction order, and log IRK resolving-list failures instead of failing the bond.
2026-08-18 12:47:56 +05:30
Rahul Tank 7bf12a4e41 Merge branch 'feat/add_register_notif_indic_v5.4' into 'release/v5.4'
fix(nimble): Add separate helper functions to register indication (v5.4)

See merge request espressif/esp-idf!51801
2026-08-18 11:49:27 +05:30
Jiang Jiang Jian c904ba2e6b Merge branch 'bugfix/a2dp_api_init_check_v5.4' into 'release/v5.4'
fix(bt): Fix compatibility with A2DP API legacy usage methods (v5.4)

See merge request espressif/esp-idf!51332
2026-08-18 11:24:31 +08:00
Rahul Tank f9c383a747 fix(nimble): Add separate helper functions to register notification/indication 2026-08-18 07:38:26 +05:30
yangfeng b3370110a6 fix(bluedroid): Fix the compilation issue of BCM_STRNCPY_S 2026-08-17 09:54:33 +08:00
Rahul Tank 39203f616c fix(nimble): Fix adding device to resolving list when defer connection 2026-08-13 14:58:18 +05:30
yangfeng 88f7f55ff1 fix(bt): Fix compatibility with A2DP API legacy usage methods
- Modify the timing of API calls in the A2DP example
- Closes https://github.com/espressif/esp-idf/issues/18786
2026-08-13 08:55:01 +08:00
Rahul Tank 02e784372a fix(nimble): Added change to stop adv before starting new adv 2026-08-11 12:04:10 +05:30
Rahul Tank 564ca19233 fix(nimble): Remove extra free to avoid double free 2026-08-06 18:55:37 +05:30
Jiang Jiang Jian 8f810bd44c Merge branch 'feat/support_pawr_connect_evt_v5.4' into 'release/v5.4'
feat(ble/bluedroid): Support PAWR connection event (5.4)

See merge request espressif/esp-idf!51440
2026-08-06 11:25:37 +08:00
Island c8585795ec Merge branch 'fix/ble_mesh_added_gatt_err_rsp_v5.4' into 'release/v5.4'
fix(ble_mesh): align GATTS read/write response handling with ATT (5.4)

See merge request espressif/esp-idf!51461
2026-08-05 16:03:00 +08:00
Wang Meng Yang a3e1f55f3e Merge branch 'feat/bt_in_psram_v5.4' into 'release/v5.4'
feat(bluedroid): Add config to place btu and hci task stack in psram (v5.4)

See merge request espressif/esp-idf!51493
2026-08-05 14:26:37 +08:00
Island 8c3500b917 Merge branch 'fix/ble_log_compression_add_local_header_file_v5.4' into 'release/v5.4'
feat(ble_log): mirror local compression headers (5.4)

See merge request espressif/esp-idf!50950
2026-08-05 10:06:54 +08:00
hejiaxin 7c48812de9 feat(bluedroid): Add config to place btu and hci task stack in psram
- Also adjust the osi_thread_stop implementation.
2026-08-04 14:56:04 +08:00
Rahul Tank 6891e46417 Merge branch 'bugfix/add_nimble_cve_v5.4' into 'release/v5.4'
fix(nimble): Fixes for various NimBLE CVEs (v5.4)

See merge request espressif/esp-idf!51203
2026-08-04 12:15:02 +05:30
Wang Meng Yang 8945329c8b Merge branch 'fix/aireview_critical_v5.4' into 'release/v5.4'
fix: Fix some critical bugs in classic bt (v5.4)

See merge request espressif/esp-idf!51291
2026-08-04 14:16:22 +08:00
Wang Meng Yang 5340a84fc8 Merge branch 'fix/bluedroid_aireview_v5.4' into 'release/v5.4'
Fix/bluedroid aireview (v5.4)

See merge request espressif/esp-idf!51296
2026-08-04 14:12:25 +08:00
Luo Xu e2114de7b0 feat(ble_log): mirror local compression headers
(cherry picked from commit ee732a4591)

Co-authored-by: luoxu <luoxu@espressif.com>
2026-08-04 11:53:15 +08:00
Rahul Tank 81d5a89bd9 fix(nimble): Fixes for various NimBLE CVEs 2026-08-03 23:47:07 +05:30
Luo Xu 696ea1bb08 fix(ble_mesh): align GATTS read/write response handling with ATT
bt_mesh_bta_gatts_cb did not always answer ATT Read/Write Requests:
- READ: on a callback error it only logged a warning and sent nothing; a
  0-byte read (Read Blob at an offset equal to the value length) also sent
  nothing, although it is a successful empty read.
- WRITE: on a callback error it sent nothing, and a partial/zero write was
  treated as success.
- Both: when the handle was not found or the attribute had no read/write
  callback, the request was silently dropped.

An ATT Request must always be answered:

- READ: len >= 0 is success -> Read Response (a 0-byte read yields an empty
  value); len < 0 -> ATT Error Response carrying the callback's error code
  (-len, since BLE_MESH_GATT_ERR(x) == -x). The copy length is clamped to
  the source buffer size as a defensive bound. If the handle is unknown or
  the attribute has no read callback, respond with INVALID_HANDLE /
  READ_NOT_PERMITTED.
- WRITE: when need_rsp is set, always reply. len == write length -> Write
  Response; otherwise (negative ATT error, partial write, or 0) -> ATT
  Error Response (the negative code, or UNLIKELY for partial/0). If the
  handle is unknown or the attribute has no write callback, respond with
  INVALID_HANDLE / WRITE_NOT_PERMITTED. Write Without Response still sends
  no response.

A non-success status passed to BTA_GATTS_SendRsp is turned into an ATT
Error Response by the GATT layer (gatt_sr_process_app_rsp ->
gatt_send_error_rsp).


(cherry picked from commit ed1f4de3a3)

Co-authored-by: luoxu <luoxu@espressif.com>
2026-08-03 21:43:43 +08:00
Zhi Wei Jian d7ae97ec69 fix(ble/bluedroid): Build LE event mask from host feature macros
(cherry picked from commit 68dff5d798)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-08-03 15:25:46 +08:00
Zhi Wei Jian b5dfde1c9e feat(ble/bluedroid): Support PAWR connection event
(cherry picked from commit 7da7fa42ac)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-08-03 15:25:46 +08:00
Island ccd00fb116 Merge branch 'fix/ble_log_compression_issue_on_windows_v5.4' into 'release/v5.4'
fix(bt): fix BLE log compression build on Windows (5.4)

See merge request espressif/esp-idf!51244
2026-08-03 11:31:06 +08:00
Island 102d8c1141 Merge branch 'feat/update_mesh_lib_to_supported_get_lib_ver_v5.4' into 'release/v5.4'
Feat/update mesh lib to supported get lib ver (5.4)

See merge request espressif/esp-idf!51171
2026-08-03 11:30:27 +08:00
hejiaxin 3552cb670a 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-31 10:46:31 +08:00
Luo XuandWang Mengyang 6d21650c9c fix(bt): Fixed build error on array-bounds in HFP AG
(cherry picked from commit bbd20cae01)

Co-authored-by: Wang Mengyang <wangmengyang@espressif.com>
2026-07-31 00:04:50 +08:00
Rahul Tank b8fa51d316 fix(nimble): Deliver PAwR peripheral CONNECT via sync callback 2026-07-30 16:36:46 +05:30