Bluetooth: paired devices will not reconnect after suspend

I’m having a problem in which I can’t reconnect to paired bluetooth devices after rebooting or waking from sleep.

A few details about my setup: I am using i3 and I have bluez and blueman installed. Another strange wrinkle which may be contributing to my problem is that I have two bluetooth controllers: a built-in one on my MB and a USB one. Unfortunately I can’t use the built-in controller because my case is metal and blocks too much of the signal to be usable, so I have to use the USB dongle. I have the bluetooth systemd service enabled and I run blueman-applet from my i3 startup.

A typical procedure is the following:

  • I pair to and connect to a device (usually through blueman-manager, the documentation for bluetoothctl is so poor).
  • Sometimes on pairing the device immediately disconnects, but I can reconnect to it just fine. I’m getting the impression there’s not a well-established protocol for what to do on pairing and some devices seem unsure what is the distinction between pairing and connecting.
  • At this point the device works perfectly fine, and will reconnect fine after being turned off.
  • At some point I inevitably either reboot or suspend the machine.
  • I turn on any bluetooth device, but it refuses to connect. Initialy blueman-manager seems to think everything is fine, but if I explicitly hit Connect on the paired device, notifications say that it connected and immediately disconnect, and I get the following terminal message: blueman-manager 12.27.14 WARNING ManagerDeviceMenu:141 fail : fail g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.Failed: blueman.bluez.errors.DBusFailedError: br-connection-create-socket.
  • The only way to resolve this seems to be to unpair the device, and go through the pairing process all over again. At that point it’ll work fine again until I suspend or reboot.

I’ve been going through the advice on the arch wiki page but so far have gotten nowhere.

Any ideas? Looking on line it seems that everybody is having constant problems with non-GNONE, non-KDE bluetooth in linux, so I’m really not sure why the various bluetooth daemons can’t seem to get it together.

Update: This might be a problem with blueman… I just tried messing around a bit with bluetoothctl and I was able to reconnect without incident after suspending the machine. Will have to mess around with it some more before I can be confident this is a full fix. I really wish bluetoothct was slightly more user friendly. No documentation, have to use MAC address all the time, very annoying.

Another update: Nope, just using bluetoothctl is definitely not a solution, not sure what happened last time that it seemed to work. Maybe the problem is somewhat intermittent.

Ok, looks like this is solved and it was something incredibly stupid on my part. In blueman-manager checking the box “audio and input profiles” seems to solve the problem. I have no clue what that does and I don’t see a corresponding option in bluetoothctl. So far every time I’ve tried to connect with this checked and the device trusted has worked, even after suspension and rebooting.

1 Like

Unbelievable, turns out this was not the issue. It suddenly stopped working, no clue why. Apparently this issue is even worse than I thought: it’s intermittent.