In Gnome, while I can connect my bluetooth headphones in HFP/HSP mode, I can't get them to connect in A2DP mode which is what I need.

Surprisingly, I can connect it in A2DP mode in KDE in just one click.

I am using Arch Linux with Gnome 3.18.


$ pactl list short | grep bluetooth 
8   module-bluetooth-policy     
9   module-bluetooth-discover   
  • Edit the question to include pactl list short | grep bluetooth – Jeremy31 Jan 12 '16 at 22:04
  • And it won't let you switch the headphones to A2DP in Sound Settings? – Jeremy31 Jan 13 '16 at 10:51
  • @Jeremy31 yes sir, I wont change in sound settings, I also tried changing it from pavucontrol - this app shows unavailable. – Edward Torvalds Jan 13 '16 at 11:31

Same issue here, Ubuntu 15.10, Gnome Shell 3.18.2.

Unfortunately your workaround didn't work for me, I found the workaround/fix here that is based on the same arch wiki provided by you.

Here is what I did:

(1) run the following command in terminal:

sudo setfacl -m u:gdm:r /usr/bin/pulseaudio

(2) reboot Ubuntu or restart the pulseaudio by running the following command in terminal:

sudo pkill pulseaudio
  • can someone explain what this actually does? – jkabrg Jul 9 at 9:22
  • are there geniuses out there who can parse this and understand all of its potential ramifications? setfacl -m u:gdm:r /usr/bin/pulseaudio – jkabrg Jul 9 at 9:24

Looks like no one reads wiki, so I had to dare and find the solution myself

  1. First make sure you have installed pulseaudio-bluetooth
  2. Add these lines to /etc/pulse/system.pa:

    load-module module-bluez5-device
    load-module module-bluez5-discover
  3. Make sure you have these lines in /etc/pulse/default.pa (they should be already, btw)

    load-module module-bluetooth-discover
    load-module module-bluetooth-policy
  4. Make sure you have trusted your bluetooth device, which you can do it as:

    $ bluetoothctl
    $ trust < mac address of your device >
  5. Last most importantly for Gnome users:

When using GDM, another instance of PulseAudio is started, which "captures" your bluetooth device connection. This can be prevented by masking the pulseaudio socket for the GDM user by doing the following:

# mkdir -p ~gdm/.config/systemd/user
$ ln -s /dev/null ~gdm/.config/systemd/user/pulseaudio.socket

**Reference and for more: Arch Linux wiki on Bluetooth Headset

  • Wow, this "kill pulseaudio for gdm" advice seems to have worked. Any known upstream bugs? – lkraav Aug 30 '16 at 10:58
  • @lkraav don't know, but pulseaudio running as your user program seems to work – Edward Torvalds Aug 31 '16 at 5:11

With Sony Headset mdr-zx550 pressing the button play/stop the option A2DP become available.


In order to enable your system to be detected as an A2DP sink (e.g. to play music from your phone via your computer speakers), add Enable=Source,Sink,Media,Socket under [General] in /etc/bluetooth/audio.conf.

#once added restart the bluetooth daemon

    systemctl restart bluetooth

#connect you headphone device
    connect <MAC>

#check your card and set profile
    pacmd list-cards
    pacmd set-card-profile <index> <profile>
  • Thank you, the key was to use pacmd to set the sink mode to A2DP. Doesn't seem possible inside bluetoothctl – MCMZL Nov 6 '18 at 20:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.