Bluetooth headphones do not stay connected after boot

Hi,

I have a recently emerged issue with bluetooth (almost sure it did not exist 2-3 stable updates ago). After boot, when I switch on my bluetooth headphones they connect and after a few seconds they disconnect. If I try to connect manually, the same happens.

Restarting the bluetooth daemon with systemctl restart bluetooth makes the connection work.

Any clue? Hints at how to debug will be appreciated.

Remove your headphones from the bluetooth menu. And then re-pair it. Does it resolve the issue?

Also, if you can, reset your headphones with the relevant button combination before re-pairing.

In fact, this was my first attempt at fixing the issue and did not work…

Every other bluetooth device works fine. I wonder if this may have to do with the audio subsystem rather than the bluetooth one. Also wonder if the fact that the headphones support multiple ways of operation A2DP vs HFP may be involved…

It could be.

Are you using Pipewire or PulseAudio? … a bit of system info will help:

inxi -zv8

Cheers :wink:

Tried both.

  • Pipewire audio is almost unusable, due to significant stuttering on bluetooth sinks, but probably not relevant here. Pulseaudio is OK.
  • Trying to experiment, going back from pipewire audio to pulseaudio is not really strightforward since pamac install manjaro-pulse leaves back pieces of pipewire audio that prevent the bluetooth daemon from starting (but I think I managed fully recovering from that problem)
  • In inxi stuff relevant to bluetooth is:
      Device-2: 1-4:3 info: Intel Centrino Bluetooth Wireless Transceiver
      type: bluetooth driver: btusb interfaces: 2 rev: 2.0
      speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 chip-ID: 8087:07da
      class-ID: e001
    
    Bluetooth:
    Device-1: Intel Centrino Bluetooth Wireless Transceiver driver: btusb v: 0.8
      type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-4:3
      chip-ID: 8087:07da class-ID: e001
    Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
    
  • For audio, I have:
    Audio:
    Device-1: Intel Crystal Well HD Audio vendor: CLEVO/KAPOK
      driver: snd_hda_intel v: kernel bus-ID: 00:03.0 chip-ID: 8086:0d0c
      class-ID: 0403
    Device-2: Intel 8 Series/C220 Series High Definition Audio
      vendor: CLEVO/KAPOK driver: snd_hda_intel v: kernel bus-ID: 00:1b.0
      chip-ID: 8086:8c20 class-ID: 0403
    Device-3: IPEVO V4K driver: snd-usb-audio,uvcvideo type: USB rev: 2.0
      speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-1.4.3:9 chip-ID: 1778:0227
      class-ID: 0102
    API: ALSA v: k6.15.7-1-MANJARO status: kernel-api with: aoss
      type: oss-emulator tools: alsactl,alsamixer,amixer
    Server-1: JACK v: 1.9.22 status: off tools: N/A
    Server-2: PipeWire v: 1.4.6 status: off with: wireplumber status: active
      tools: pw-cli,wpctl
    Server-3: PulseAudio v: 17.0-43-g3e2bb status: active
      with: pulseaudio-alsa type: plugin tools: pacat,pactl,pavucontrol
    

There was an issue reported in March that might be relevant

PipeWire is a multimedia server for audio and video
pipewire and session manager wireplumber are required by kwin and cannot be removed on a KDE system

Wireplumber service is active and might be causing a problem for PulseAudio
To turn service off temporarily:

systemctl --user stop wireplumber

To disable service:

systemctl --user disable wireplumber

Gone back to pulseaudio (manjaro-pulse). Pipewire gives too much stuttering on bluetooth audio devices anyway. Unfortunately, this does not solve the issue of having to manually restarting the bluetooth service to connect bluetooth headphones.

Check the service for errors before restarting it

systemctl --full --no-pager status bluetooth