bluetooth headset connects but not showing in sound settings

Try this command:

sudo -H pactl load-module module-bluetooth-discover

I run this whenever I have paired, and successfully connected, but still can't see them in sound settings. It essentially tells pulseaudio to load reload it's list of bluetooth devices.


Extending upon Mark's answer, which basically did the trick for me.

The problem is that the bluetooth service tries to load the pulseaudio bluetooth module at startup, which fails because they require X11 to be running. You need to change the configuration so that the pulseaudio bluetooth module is loaded after X11.

  1. Tell the bluetooth service to not load the module. To do this, edit /etc/pulse/default.pa and comment out these lines by putting # characters in front of them:

    .ifexists module-bluetooth-discover.so
    load-module module-bluetooth-discover
    .endif
    
  2. Configure the module to be loaded after X11. To do this, edit /usr/bin/start-pulseaudio-x11 and add two lines:

    if [ x"$DISPLAY" != x ] ; then
        # ...
    
        # Add these lines:
        /usr/bin/pactl load-module module-bluetooth-discover
        /usr/bin/pactl load-module module-switch-on-connect
    fi
    
  3. Restart pulseaudio and bluetooh. Either reboot your machine or use the following commands:

    pulseaudio -k
    start-pulseaudio-x11
    sudo service bluetooth restart
    

This way, the pulseaudio bluetooth module should be working and Volume Control (pavucontrol) should detect the bluetooth device and list it under input and output devices.


The headset is properly paired and shows under Bluetooth Devices but it does not show as an available INPUT / OUTPUT source for audio. The problem is that the pulseaudio bluetooth module is loaded before X11, changing a couple of config files do the trick:

PulseAudio can not load bluetooth module 15.10/16.04

nano /etc/pulse/default.pa

Comment out the following lines:

#.ifexists module-bluetooth-discover.so
#load-module module-bluetooth-discover
#.endif

nano /usr/bin/start-pulseaudio-x11

Find the following lines and add after them:

if [ x”$SESSION_MANAGER” != x ] ; then
/usr/bin/pactl load-module module-x11-xsmp “display=$DISPLAY session_manager=$SESSION_MANAGER” > /dev/null
fi
Add the following lines:
/usr/bin/pactl load-module module-bluetooth-discover
/usr/bin/pactl load-module module-switch-on-connect

This way the Pulse audio’s Bluetooth modules will not be downloaded at boot time but after x11 is started.