site  contact  subhomenews

Bluetooth speaker will not connect

November 01, 2020 — BarryK

Ongoing saga, see post earlier today:

https://bkhome.org/news/202010/bluetoothd-likes-to-crash.html

I was able to connect to my bluetooth speaker using Blueman, apart from the crashing 'bluetoothd' daemon problem. Now developing BluePup, cannot connect. Or rather, sometimes can, but mostly not, and I have no idea what is different when it does connect.

here is what I tried just now:

# bluetoothctl info 29:F0:F0:54:C2:7B
Device 29:F0:F0:54:C2:7B (public)
Name: BS512
Alias: BS512
Class: 0x00240404
Icon: audio-card
Paired: yes
Trusted: yes
Blocked: no
Connected: no
LegacyPairing: no
UUID: Serial Port (00001101-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Handsfree (0000111e-0000-1000-8000-00805f9b34fb)
# bluetoothctl connect 29:F0:F0:54:C2:7B
Attempting to connect to 29:F0:F0:54:C2:7B
[CHG] Device 29:F0:F0:54:C2:7B Connected: yes
Failed to connect: org.bluez.Error.Failed
#

This is very frustrating!

EDIT:
Here is another one to add to my disillusionment. Running bt-agent with capability "NoInputNoOutput", it should not ask for any input at this end. My keyboard requires a pin to pair, that's OK, but why does bt-agent still ask "yes/no"?

bt-agent -c NoInputNoOutput
device: Bluetooth Keyboard (11:20:01:00:25:36)
Confirm pin code: 003295 (yes/no)?

---it is not supposed to ask for any input at this end.

Here is a page that explains these capabilities:

https://medium.com/@matteodipirro/developing-a-bluetooth-agent-in-qt-c-with-bluez-and-d-bus-part-1-ee35d614ba72 

EDIT:
And another... My bluetooth keyboard is connected and working. Now, using bluetoothctl to disconnect, then reconnect...

# bluetoothctl disconnect 11:20:01:00:25:36
Attempting to disconnect from 11:20:01:00:25:36
Successful disconnected
[CHG] Device 11:20:01:00:25:36 Connected: no
# bluetoothctl connect 11:20:01:00:25:36
Attempting to connect to 11:20:01:00:25:36
Failed to connect: org.bluez.Error.Failed

However, if I turn the keyboard power off, then on again, it will automatically connect, and is working.

So, why couldn't bluetoothctl reconnect?

Is there some special secret to get that reconnect to work? Thinking out loud... can't help but start to think that the entire bluez code structure is flakey.  

Tags: easy