Table of Contents

Bluetooth

Since Debian 12 two audio servers are available (either PulseAudio or PipeWire). PulseAudio is the default audio server in Debian.

Install

For a GTK environment (XFCE) the following packages need to be installed:

sudo apt install bluetooth rfkill bluez bluez-tools pulseaudio-module-bluetooth blueman

Blueman is the XFCE bluetooth front-end app.

Check running services

# systemctl status bluetooth
$ systemctl --user status pulseaudio.service

Checking For Bluetooth

If you run rfkill as root, you should get something like follows:

~$ sudo rfkill 
ID TYPE      DEVICE      SOFT      HARD
 0 wlan      phy0   unblocked unblocked
 1 bluetooth hci0   unblocked unblocked

If you see anything blocked, you will have to unblock it. Hard blocked is usually a switch (or a wireless key on the keyboard), soft blocked is usually something with the OS. Run the following to unblock a device:

rfkill unblock [device]

Check if bluetooth radio is present in PulseAudio cards:

pactl list cards short

PulseAudio automatic connect

Switch automatically to bluetooth output on connecting to bluetooth device. Enter:

pactl load-module module-switch-on-connect

To persist autoconnect on reboots, add the following to /etc/pulse/default.pa

# nano /etc/pulse/default.pa

Add the following to the bottom:

.ifexists module-switch-on-connect.so
  load-module module-switch-on-connect
.endif