My hardware
❯ sudo lshw -C network
*-network
description: Wireless interface
product: Atheros QCNFA765
vendor: Qualcomm
physical id: 0
bus info: pci@0000:01:00.0
logical name: wlp1s0
version: 01
serial: 04:7b:cb:b2:fb:82
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=ath11k_pci driverversion=5.19.0-32-generic firmware=N/A ip=192.168.1.108 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:89 memory:98000000-981fffff
❯ hciconfig -a
hci0: Type: Primary Bus: USB
BD Address: 04:7B:CB:B2:FB:83 ACL MTU: 1024:7 SCO MTU: 240:8
UP RUNNING PSCAN
RX bytes:1667772 acl:82686 sco:0 events:1090 errors:0
TX bytes:229409 acl:695 sco:0 commands:222 errors:0
Features: 0xff 0xfe 0x8f 0xfe 0xd8 0x3f 0x5b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF
Link mode: PERIPHERAL ACCEPT
Name: 'ThinkPad-T14s-Gen-3'
Class: 0x7c010c
Service Classes: Rendering, Capturing, Object Transfer, Audio, Telephony
Device Class: Computer, Laptop
HCI Version: 5.2 (0xb) Revision: 0x0
LMP Version: 5.2 (0xb) Subversion: 0x4614
Manufacturer: Qualcomm (29)
My OS
❯ sudo lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.2 LTS
Release: 22.04
Codename: jammy
Kernel
❯ uname -a
Linux ThinkPad-T14s-Gen-3 5.19.0-32-generic #33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Jan 30 17:03:34 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
I can connect with another Bluetooth devices such as Mouse, PS4 Controller, 8BitDo Controller. But devices that I cannot connect from my test such as Bluetooth Speaker, Bluetooth Headset, Nintendo Pro Controller, My android phone.
Then I create Ubuntu 22.10 and 23.04 USB stick and test on live boot everything work fine. I can connect all devices. And before I move to Ubuntu, I use Fedora 37 and Bluetooth work fine too!
After I investigate, I think that maybe It has some bug in BlueZ or linux-firmware package
in Ubuntu 22.04.
Here is some output from btmon
when connect to speaker. After timeout, it will repeat disconnect and reconnect forever.
> ACL Data RX: Handle 14 flags 0x02 dlen 22 #842 [hci0] 175.786819
L2CAP: Configure Response (0x05) ident 7 len 14
Source CID: 65
Flags: 0x0000
Result: Success (0x0000)
Option: Maximum Transmission Unit (0x01) [mandatory]
MTU: 672
Option: Flush Timeout (0x02) [mandatory]
Flush timeout: 65535
< ACL Data TX: Handle 14 flags 0x00 dlen 7 #843 [hci0] 175.787142
Channel: 3776 len 3 [PSM 25 mode Basic (0x00)] {chan 11}
AVDTP: Start (0x07) Command (0x00) type 0x00 label 9 nosp 0
ACP SEID: 1
> HCI Event: Number of Completed Packets (0x13) plen 5 #844 [hci0] 175.790036
Num handles: 1
Handle: 14
Count: 1
> ACL Data RX: Handle 14 flags 0x02 dlen 6 #845 [hci0] 175.826853
Channel: 64 len 2 [PSM 25 mode Basic (0x00)] {chan 11}
AVDTP: Start (0x07) Response Accept (0x02) type 0x00 label 9 nosp 0
= bluetoothd: /org/bluez/hci0/dev_FC_E8_06_7E_77_25/sep1/fd12: fd(43) ready 175.827222
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #846 [hci0] 175.832875
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #847 [hci0] 175.853430
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #848 [hci0] 175.873936
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #849 [hci0] 175.894065
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #850 [hci0] 175.914568
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #851 [hci0] 175.934775
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
< ACL Data TX: Handle 14 flags 0x02 dlen 850 #852 [hci0] 175.955058
Channel: 3841 len 846 [PSM 25 mode Basic (0x00)] {chan 12}
> ACL Data RX: Handle 14 flags 0x02 dlen 12 #853 [hci0] 176.916485
L2CAP: Connection Request (0x02) ident 7 len 4
PSM: 23 (0x0017)
Source CID: 3906
= bluetoothd: src/service.c:btd_service_connect() avrcp-controller profile connect failed for FC:E8:06:7E:77:25: Operation already in progress 177.704158
> ACL Data RX: Handle 14 flags 0x02 dlen 12 #854 [hci0] 186.913730
L2CAP: Connection Request (0x02) ident 7 len 4
PSM: 23 (0x0017)
Source CID: 3906
= bluetoothd: profiles/audio/avdtp.c:cancel_request() Suspend: Connection timed out (110) 190.711970
= bluetoothd: profiles/audio/avdtp.c:cancel_request() Suspend: Connection timed out (110) 200.713638
Any recommend finding out root cause or work around?
PS. I have another notebook that have intel Wi-Fi card, but it works right OOTB.
PS2. I think my card is Atheros QCNFA725. IDK why it show Atheros QCNFA765.