BQR: Add Bluetooth Quality Report feature
Bluetooth disconnects, voice and audio quality issues are sometimes hard to debug without an OTA (Over The Air) log. For debugging this kind of issue we would need to identify it belongs to the host, Bluetooth controller/firmware, environment or the remote Bluetooth device. This feature would route the link and firmware/controller stats (ex: TX power level, RSSI, Unused AFH channel count...) to the host when quality events happen. Quality Monitoring Mode: The controller will periodically send Bluetooth Quality VSE sub-event to the host. Approaching LSTO: Once no packets are received from the connected Bluetooth device for a duration longer than the half of LSTO (Link Supervision Timeout) value, the controller will report Approaching LSTO event to the host. A2DP Audio Choppy: When audio stall, the controller will report A2DP Audio Choppy event to the host. (e)SCO Voice Choppy: The controller will report (e)SCO Voice Choppy event to the host if the voice quality might be bad. Bug: 111384296 Test: - Verified that all functionalites with the Bluetooth controller / firmware which supports Bluetooth Quality Report VSC (OpCode: 0xFD5E) and Bluetooth Quality Report (Sub-event code: 0x58) of VSE. - Verified that this feature could work on both the A2DP HW offload and non-offload modes. Change-Id: I3fd3000bace7606855cac3b9b87134499c0ca891
Showing
- system/btif/Android.bp 1 addition, 0 deletionssystem/btif/Android.bp
- system/btif/include/btif_bqr.h 264 additions, 0 deletionssystem/btif/include/btif_bqr.h
- system/btif/src/bluetooth.cc 2 additions, 0 deletionssystem/btif/src/bluetooth.cc
- system/btif/src/btif_bqr.cc 309 additions, 0 deletionssystem/btif/src/btif_bqr.cc
- system/btif/src/btif_dm.cc 3 additions, 1 deletionsystem/btif/src/btif_dm.cc
- system/stack/btm/btm_devctl.cc 72 additions, 0 deletionssystem/stack/btm/btm_devctl.cc
- system/stack/btm/btm_int.h 2 additions, 0 deletionssystem/stack/btm/btm_int.h
- system/stack/btm/btm_int_types.h 6 additions, 0 deletionssystem/stack/btm/btm_int_types.h
- system/stack/include/hcidefs.h 6 additions, 0 deletionssystem/stack/include/hcidefs.h
Loading
Please register or sign in to comment