bluetoothd: connect/disconnect - "AVRCP PDU parameters length don't match"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
bluez-btsco (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
I'm trying to connect to a bluetooth speaker.
The device is found, I can pair and connect - the speaker even (literally) "says": 'connected', and /var/syslog confirms that. All looks great; pulseaudio switches to the new audio sink - then "connected: no".
/var/syslog also contains *a lot of messages* regarding that connection (will post separately).
UPDATE: After adding "auto_switch=false" to my pulseaudio where it auto-loads the "bluetooth-policy" module, then `sysctl restart bluetooth` and `pulseaudio -k`: and after some time I *could finally connect* to this (and other) bluetooth speaker devices that just would never stay connected, but reconnect or bail out all the time.
I have no idea what I have done to fix this.
Basically, I copy/pasted from: https:/
I don't know yet, if this is reboot safe.
I dare to try, before I haven't understood what happened here.
I'm grateful for any insights or tips to get this "fixed" upstream?
Thank you.
Here's what I've modified in `/etc/pulse/
```
### Automatically load driver modules for Bluetooth hardware
.ifexists module-
#ORG: load-module module-
load-module module-
.endif
```
--
I'm running Xubuntu 20.04
bluez 5.53-0ubuntu3.7
pulseaudio 1:13.99.
tags: | added: focal |
Sorry for the noise, but this info may be useful?
(I've put my bluetoothd into debug verbosity)
Below are parts and the full copy of the /var/syslog part when trying to connect, then disconnecting.
The first part looks really good (IMO).
Then "something" happens - and *disconnected*.
# Highlights (summary):
``` DISCONNECTED -> SINK_STATE_ CONNECTING STATE_REQUESTIN G -> TRANSPORT_ STATE_ACTIVE CONNECTED -> SINK_STATE_PLAYING
SINK_STATE_
AVDTP: connected signaling channel to 40:EF:4C:C5:1B:6C
DISCOVER request succeeded
SET_CONFIGURATION request succeeded
TRANSPORT_
SINK_STATE_
AVCTP Connected
```
**...followed immediately by:**
```
40:EF:4C:C5:1B:6C: No service update
bluetoothd[ 1000416] : profiles/ audio/avrcp. c:handle_ vendordep_ pdu() AVRCP PDU 0x10, company 0x001958 len 0x0001 1000416] : profiles/ audio/avrcp. c:handle_ vendordep_ pdu() AVRCP PDU parameters length don't match 1000416] : profiles/ audio/avrcp. c:handle_ vendordep_ pdu() AVRCP PDU 0x30, company 0x001958 len 0x0000
bluetoothd[
bluetoothd[
```
**And then it all goes down:**
``` STATE_ACTIVE -> TRANSPORT_ STATE_IDLE DISCONNECTED
Device 40:EF:4C:C5:1B:6C disconnected, reason 0
STREAMING -> IDLE
TRANSPORT_
connected -> disconnected (0)
disconnecting -> disconnected (0)
AVCTP: closing uinput for 40:EF:4C:C5:1B:6C
acpid: input device has been disconnected, fd 26
SINK_STATE_PLAYING -> SINK_STATE_
```
Here's the full log: ======= ======= ======= =
=======
``` 1000416] : src/device. c:connect_ profiles( ) /org/bluez/ hci0/dev_ 40_EF_4C_ C5_1B_6C (all), client :1.291165 1000416] : profiles/ audio/a2dp. c:a2dp_ sink_connect( ) path /org/bluez/ hci0/dev_ 40_EF_4C_ C5_1B_6C 1000416] : profiles/ audio/avdtp. c:avdtp_ ref() 0x562e5c523e10: ref=1 1000416] : profiles/ audio/avdtp. c:avdtp_ ref() 0x562e5c523e10: ref=2 1000416] : profiles/ audio/a2dp. c:setup_ ref() 0x562e5c511f50: ref=1 1000416] : profiles/ audio/sink. c:sink_ set_state( ) State changed /org/bluez/ hci0/dev_ 40_EF_4C_ C5_1B_6C: SINK_STATE_ DISCONNECTED -> SINK_STATE_ CONNECTING 1000416] : profiles/ audio/sink. c:sink_ connect( ) stream creation in progress 1000416] : src/service. c:change_ state() 0x562e5c4ff310: device 40:EF:4C:C5:1B:6C profile a2dp-sink state changed: disconnected -> connecting (0) 1000416] : src/adapter. c:connected_ callback( ) hci0 device 40:EF:4C:C5:1B:6C connected eir_len 24 1000416] : profiles/ audio/avdtp. c:avdtp_ connect_ cb() AVDTP: connected signaling channel to 40:EF:4C:C5:1B:6C 1000416] : profiles/ audio/avdtp. c:avdtp_ connect_ cb() AVDTP imtu=672, omtu=672 1000416] : profiles/ audio/avdtp. c:avdtp_ register_ remote_ sep() seid 1 type 1 media 0 1000416] : profiles/ audio/a2dp. c:register_ remote_ sep() Found remote SEP: /org/bluez/ hci0/dev_ 40_EF_4C_ C5_1B_6C/ sep1
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:13 silverstar bluetoothd[
Jan 29 19:31:14 silverstar bluetoothd[
Jan 29 19:31:14 silverstar bluetoothd[
Jan 29 19:31:14 silverstar bluetoothd[
Jan 29 19:31:14 silverstar bluetoothd[
Jan 29 19:31:14 silverstar bluetoothd[
Jan 29 19:31:15 silverstar blue...