yangfeng
76a3f84779
fix(bt/example): Add log in the failure path for avrcp_ct_metadata example
2026-07-22 15:36:27 +08:00
yangfeng
ca77dffadc
fix(bt): Fix the validation of AVRCP metadata attr_id in handle_rc_attributes_rsp
2026-07-19 10:26:33 +08:00
yangfeng
e472bc3868
fix(bt/bluedroid): Fix unchecked p_ctrl_cback and p_msg_cback in AVRC
...
Closes SEC-1186
2026-07-19 10:21:29 +08:00
yangfeng
a3088cdce1
fix(bt/bluedroid): Fix missing NULL check on p_cfg in AVDT_ReconfigReq
...
Closes SEC-1187
2026-07-19 10:21:29 +08:00
yangfeng
41897b6239
fix(bt/example): Add print the device name to verify if it matches in HID example
2026-07-08 15:28:06 +08:00
yangfeng
9e5416b346
fix: Fix the HFP example fails to discovery target device
2026-07-02 15:04:48 +08:00
yangfeng
fe06f59a88
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-29 15:00:49 +08:00
yangfeng
84e210df45
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-29 14:46:01 +08:00
yangfeng
e27d9efe13
fix(bt): Fix the high issues related to AVRCP from AI review report
...
- SDP/registration: handle SDP record creation and discovery failures safely
- AVRC stack: fix packet checks, fragment leaks, response build, and compile guards
- BTC AVRCP: fix return codes, connection state, metadata parsing, and memory leaks
- AVCTP: fix event passing, L2CAP conflicts, TX queue leaks, and disconnect handling
- Example: remove TG RN capability setup before initialization
2026-06-25 14:48:50 +08:00
yangfeng
021caefcd5
fix(bt): Fix the critical issues related to AVRCP from AI review report
...
- recalculate len_left per attribute in avrc_bld_app_setting_text_rsp
- abort fragmented message reassembly when reassembly buffer alloc fails
2026-06-25 14:47:38 +08:00
yangfeng
a3f1ba390e
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-25 12:08:06 +08:00
yangfeng
774c334372
fix: Fix the incorrect connection of the same-name devices in the HFP example
2026-06-10 19:12:31 +08:00
yangfeng
539b98274f
fix: Fix the potential stack overflow issue in the Classic Bluetooth example
2026-06-09 09:42:04 +08:00
yangfeng
023639b75b
fix: Fix missing handling for HCI_ERR_CONNECTION_EXISTS
...
- Closes https://github.com/espressif/esp-idf/issues/18562
2026-06-05 14:17:47 +08:00
yangfeng
001dc26361
fix: Remove the check for recv and send being NULL
2026-05-18 15:13:58 +08:00
yangfeng
aa10a3a2d1
fix(bt/example): fix critical issues of classic_bt examples reported by AI review
2026-05-11 11:24:52 +08:00
yangfeng
acf9f2bb47
fix(bt): fix A2DP stack component issues reported by AI review
2026-04-28 15:15:35 +08:00
yangfeng
436c5ab14b
fix(bt): fix A2DP bta component issues reported by AI review
2026-04-28 15:15:35 +08:00
yangfeng
bdda22b90b
fix(bt): fix A2DP api and btc component issues reported by AI review
2026-04-28 15:15:35 +08:00
yangfeng
e0911c8503
fix(bt): fix AVRCP component issues reported by AI review
2026-04-23 16:05:26 +08:00
yangfeng
fb9b5f64d2
fix(bt): fix HFP api and btc component issues reported by AI review
2026-04-23 16:03:00 +08:00
yangfeng
1036ef7ac2
fix(bt): fix HFP bta component issues reported by AI review
2026-04-23 16:03:00 +08:00
yangfeng
d259dd4bc2
fix(bt): avoid deleting device record on partial transport cleanup
2026-04-07 10:23:34 +08:00
yangfeng
960e806c34
fix(bt/example): Fixed the HFP printing issue in the CI test
2026-03-30 11:44:18 +08:00
yangfeng
728f29289d
feat(bt): Add APIs to control transmit power level
...
- API to read ACL real RSSI
- APIs to read/write tx power of inq/iscan/page/pscan/ACL
2026-03-20 14:26:10 +08:00
yangfeng
b3364edfe1
fix: Fix the relative path of esp_bredr_cfg.h
2026-03-17 10:34:18 +08:00
yangfeng
f9faf372d4
fix(hid): Fixed HID repeatedly reporting the close event
2026-03-13 16:26:13 +08:00
yangfeng
c5094b78ef
change(bt/examples): Add the use of internal codec APIs in the hfp_hf example
...
- Closes https://github.com/espressif/esp-idf/issues/18261
2026-03-11 17:02:09 +08:00
yangfeng
e83cf43b6a
feat(bt/bluedroid): Add API to set encoder parameters for A2DP source
...
- Add API to set encoder parameters for A2DP source
- Add the use of the API for setting encoding parameters in the a2dp_source example
2026-01-28 11:39:29 +08:00
yangfeng
bc753bb88b
fix(bt/bluedroid): Handle stream reconfiguration via stream close and re-open for A2DP ACP
2026-01-28 11:39:29 +08:00
yangfeng
6ee623c1e6
feat(bt/bluedroid): Report A2DP sink codec capabilities for A2DP source
2026-01-28 11:39:29 +08:00
yangfeng
5cc9bb4712
feat(bt): set BR/EDR max sync conn eff for Bluedroid HFP on ESP32
...
Closes https://github.com/espressif/esp-idf/issues/18060
2026-01-19 15:29:13 +08:00
yangfeng
74fa9f7945
docs(bt): update Classic Bluetooth api reference of SDP
2026-01-12 09:58:52 +08:00
yangfeng
b32f703d87
docs(bt): update Classic Bluetooth api reference of L2CAP
2026-01-12 09:58:52 +08:00
yangfeng
5dc65bbb12
docs(bt): update Classic Bluetooth api reference of HID Host
2026-01-12 09:58:52 +08:00
yangfeng
00caf6b1e9
docs(bt): update Classic Bluetooth api reference of HID Device
2026-01-12 09:58:52 +08:00
yangfeng
554d9bf25d
docs(bt): update Classic Bluetooth api reference of HFP AG
2026-01-12 09:58:52 +08:00
yangfeng
045dcf2939
docs(bt): update Classic Bluetooth api reference of HFP Client
2026-01-12 09:58:52 +08:00
yangfeng
2dba5e5af2
docs(bt): update Classic Bluetooth api reference of HFP Define
2026-01-12 09:58:52 +08:00
yangfeng
02f50ac836
docs(bt): update Classic Bluetooth api reference of SPP
2026-01-12 09:58:52 +08:00
yangfeng
98700f9af4
docs(bt): update Classic Bluetooth api reference of AVRCP
2026-01-12 09:58:52 +08:00
yangfeng
2e1a089a6a
docs(bt): update Classic Bluetooth api reference of A2DP
2026-01-12 09:58:52 +08:00
yangfeng
e1445c682b
docs(bt): update Classic Bluetooth api reference of GAP
2026-01-12 09:58:52 +08:00
yangfeng
f8214fc22d
fix(bt/bluedroid): Fix index boundary check and function return in SEP registration
...
Closes https://github.com/espressif/esp-idf/issues/18041
2025-12-30 15:15:45 +08:00
yangfeng
5ee371f89f
fix(examples/classic_bt): Add A2DP sink delay for AVRCP cover art and absolute volume examples
2025-12-29 10:19:52 +08:00
yangfeng
5b737e16ff
refactor(examples/classic_bt): Add example tests for A2DP and AVRCP examples
2025-12-19 16:41:37 +08:00
yangfeng
1000086456
docs: Add explanations for the A2DP sink stream and AVRCP examples
...
- Modify the path of A2DP sink example
2025-12-19 16:41:37 +08:00
yangfeng
3e94884160
refactor(examples/classic_bt): Add AVRCP cover art example with LCD display
2025-12-19 16:41:37 +08:00
yangfeng
5ca0bba789
refactor(examples/classic_bt): Add common code for AVRCP cover art example
2025-12-19 16:41:37 +08:00
yangfeng
2b91afdfac
refactor: Refactor the example of the coexistence of A2DP sink and GATT service
2025-12-19 16:41:37 +08:00
yangfeng
2f452c14e7
refactor(examples/classic_bt): Refactor A2DP sink and AVRCP examples
...
- Add avrcp_ct_metadata example
- Add avrcp_absolute_volume example
- Add the example components about common code for a2dp sink and avrcp
2025-12-19 16:41:37 +08:00
yangfeng
7de5f266de
fix(bt/bluedroid): Fix the status judgment of the A2DP source registration SEP
2025-12-01 14:21:35 +08:00
yangfeng
ce63e5feeb
fix(bt/examples): Fixed test_bt_l2cap not finding ESP_SDP_CREATE_RECORD_COMP_EVT
2025-11-24 10:21:00 +08:00
yangfeng
d9ce1e6bc9
fix(esp_coex): fix explicit null dereferenced reported by coverity
2025-10-13 19:39:51 +08:00
yangfeng
4606fa87c7
fix(example/classic_bt): Fix potential stack overflow tasks
2025-10-11 16:40:43 +08:00
yangfeng
dc1c22f090
fix(example/classic_bt): Fix the stack overflow of the SPPAppT and mouse_move_task tasks
2025-10-10 14:42:01 +08:00
yangfeng
743036ad77
fix(bt/bluedroid): Fix the boundary conditions when checking EIR data
2025-09-28 17:50:48 +08:00
yangfeng
4e39ac7d49
fix(bt/btc): Fix array compared against 0 in btc_manage.c
2025-09-16 17:10:36 +08:00
yangfeng
d5758cd823
fix(esp_coex): Fix the issue of uninitialized pointer reading in coexist_printf
2025-09-16 17:10:36 +08:00
yangfeng
a0fe68ce45
fix(bt/bluedroid): Prevent out-of-bounds access and add type check when resolving EIR data
2025-08-18 09:20:05 +08:00