97

I'm trying to add a BlueParrott B-250XT+ bluetooth headset on a Thinkpad X230 tablet running Ubuntu 16.04 with its hardware bluetooth adapter.

The adapter works - meaning it detects/sees the headset. However, when connecting to the headset it initially connects, then this error pops up:

Connection Failed: blueman.bluez.errors.DBusFailedError: Protocol Not available

Afterwards, the Headset disconnects and future connections are impossible - this is some sort of failure/error that causes the bluetooth to be unresponsive afterwards.

I have Pulseaudio installed and I have bluetooth set to load after X11 (this is what got me this far - to the point I can connect). But, as mentioned, the device gets dumped shortly after connection.

psedach
  • 1,071
  • same problem here. I have a fresh xubuntu installation on my dell latitude e6410 laptop. Trying to connect to JBL Charge3 speaker. The device was paired, but i can connect only to serial port. When Try to connect to audio sink or headset I get Connection Failed: blueman.bluez.errors.DBusFailedError: Protocol not available – Sebastian Widz Jul 22 '16 at 12:10
  • I advice to try on a (live) Ubuntu 15.10 first, so that you can have an idea if the problem is in the BT stack version. Ubuntu 16.04 had a bluetooth stack update which significantly broke BT functionality. – Marcus Aug 08 '16 at 20:45
  • That is a really good idea! I will try some live CDs when I have the time. Thanks, – psedach Aug 18 '16 at 19:52
  • 1
    Note that on ArchLinux the package to install is named pulseaudio-bluetooth instead of pulseaudio-module-bluetooth. Just leaving a note here since this is the first result that comes up in the Google search. – xji Mar 03 '18 at 20:13

2 Answers2

181

The solution from this article worked for me:

sudo apt-get install pulseaudio-module-bluetooth
pactl load-module module-bluetooth-discover

Then delete the device from bluetooth devices and pair it again.

If it works, you can consider adding the second command to your startup settings, so that you don't have to run it again after every reboot.


If it doesn't work, try restarting pulseaudio:

pulseaudio -k
pulseaudio -D
unhammer
  • 2,271
  • 39
    Thanks for the tip - I get a message 'Failure: Module initialization failed' when I do step 2 so it doesn't work for me yet. – psedach Aug 04 '16 at 02:24
  • 6
    Worked for me, but I need to do that every time I reboot... – Korri Nov 07 '16 at 20:24
  • 1
    Worked on Xubuntu 16.04 on Lenovo G580. If you are hearing the sound through the laptop speakers after successfully pairing it, try changing the profile at Volume Control -> Configuration -> Built-in Audio. – lepe Jan 02 '17 at 09:58
  • Thanks man. Worked for me on Ubuntu GNOME 16.04 with Sony MDR-XB70BT – Farrukh Arshad Jan 05 '17 at 04:03
  • It worked for me (Nokia BH-503). Thank you very much. – rom Jan 23 '17 at 19:06
  • Has anyone found a more permanent solution for this yet? – Bobby S Mar 15 '17 at 20:40
  • Worked for Jabra revo – Vlagorce Mar 28 '17 at 15:30
  • Here is another post in addition to @lepe's comment – Emilien Apr 11 '17 at 15:16
  • Worked for me on Ubuntu Studio 16.10 with a UE Mobile Boombox. Thanks! – maxime.bochon Jul 14 '17 at 16:20
  • Worked on my MPOW-059 with xubuntu 16.10 – ty812 Aug 06 '17 at 08:27
  • 8
    @psedach, be aware that message will show if one attempts to load the module when it's already loaded. You can test whether it's loaded with pactl list | grep module-bluetooth-discover. – Ian Mackinnon Nov 24 '17 at 09:17
  • Worked for me (JBL E50BT) – Bertie92 Nov 30 '17 at 14:02
  • Step 1 only worked for me. Thanks. – Abe Petrillo Jan 06 '18 at 14:52
  • For me the solution did not work – tokam Feb 18 '18 at 14:12
  • root@localhost:~# pactl list Verbindungsfehler: Verbindung verweigert pa_context_new() fehlgeschlagen: Verbindung verweigert – tokam Feb 18 '18 at 14:12
  • 2
    My default pulse configuration file /etc/pulse/default.pa there was already the configuration line in there. .ifexists module-bluetooth-discover.so \n load-module module-bluetooth-discover \n .endif On the next startup, it worked out-of-the-box. (\n added to symbolise linebreaks that were there) – Martin - マーチン Oct 03 '18 at 11:03
  • 1
    @IanMackinnon - that message will show if one attempts to load the module when it's already loaded - in which case what is the path to follow? I cannot make it work at this point unless I restart or reinstall bluez. If I delete the device it is not seen again until reboot or bluez-reinstall. (In my case this mostly appears after logging out.) –  Oct 29 '18 at 14:50
  • A way to make this change permanent is in this answer – Luis Feb 18 '20 at 12:11
  • This answer doesn't work. On Ubuntu, it just gives me Failure: Module initialization failed and E: [pulseaudio] main.c: Daemon startup failed. – Cerin Mar 23 '20 at 21:18
  • Brilliant - yes thanks - works fine on Lubuntu 18.04 with kernel 4.15: I found this AFTER doing an upgrade of the bluetooth itself which made no difference at all - staggering that a dependency like this can be left missing. – MikeH London May 17 '20 at 19:07
5

What did work for me was this: (as pointed above by Sebastian Widz)

$ sudo apt-get purge pulseaudio  
$ rm ~/.config/pulse && sudo killall pulseaudio  
$ sudo apt-get install pulseaudio  
$ pulseaudio --start

The above to ensure pulse is working first.
Then, this one, which is a bit weird that doesn't come by default with pulseaudio itself:

$ sudo apt-get install pulseaudio-module-bluetooth  
$ pactl load-module module-bluetooth-discover  

A bit redundant I know, but these were the exact steps that worked for me 10 minutes ago.
But OK, at least it works now :)

Winampah
  • 732