1

I'm trying to connect a bluetooth headset (Insignia NS-CAHBTEB01-B) to my computer, which is running an up-to-date install of Kubuntu 18.04. Everything seems to go smoothly at first -- I am able to pair the headset successfully using the "Bluetooth Devices" System Settings module GUI -- but the headset doesn't play audio output from the computer. Some things I have noticed:

  • I can tell the headset has paired successfully because I hear "Your device is connected" through the headphones. Also, pressing the play/pause button while watching a video in VLC will sometimes cause it to play or pause (not reliably), and using pacmd to change the active profile to headset_head_unit causes the headset to vibrate (see below).
  • The headset shows up in the "Audio Volume" widget in the system tray and in system settings. I can try to adjust the volume -- when I do this, I hear a faint hissing noise through the headphones. It persists for a second or two after I stop adjusting the volume slider, and then cuts off.
  • Running pacmd list-cards gives the following output (in part):
    index: 4
        name: <bluez_card.E8_07_BF_02_3C_F1>
        driver: <module-bluez5-device.c>
        owner module: 28
        properties:
                device.description = "NS-CAHBTEB01"
                device.string = "E8:07:BF:02:3C:F1"
                device.api = "bluez"
                device.class = "sound"
                device.bus = "bluetooth"
                device.form_factor = "headset"
                bluez.path = "/org/bluez/hci0/dev_E8_07_BF_02_3C_F1"
                bluez.class = "0x240404"
                bluez.alias = "NS-CAHBTEB01"
                device.icon_name = "audio-headset-bluetooth"
                device.intended_roles = "phone"
        profiles:
                a2dp_sink: High Fidelity Playback (A2DP Sink) (priority 40, available: unknown)
                headset_head_unit: Headset Head Unit (HSP/HFP) (priority 30, available: unknown)
                off: Off (priority 0, available: yes)
        active profile: <a2dp_sink>
        sinks:
                bluez_sink.E8_07_BF_02_3C_F1.a2dp_sink/#6: NS-CAHBTEB01
        sources:
                bluez_sink.E8_07_BF_02_3C_F1.a2dp_sink.monitor/#9: Monitor of NS-CAHBTEB01
        ports:
                headset-output: Headset (priority 0, latency offset 0 usec, available: unknown)
                        properties:

                headset-input: Headset (priority 0, latency offset 0 usec, available: unknown)
                        properties:

I can then run pacmd set-card-profile 4 headset_head_unit and pacmd set-card-profile 4 a2dp_sink to switch back and forth between the headset_head_unit and a2dp_sink profiles, which seems to be successful (changes the active_profile line above and causes the headset to buzz when I switch to headset_head_unit), but doesn't get me sound out of the headphones.

Solutions I have ruled out:

The only evidence I've found of something going wrong, other than the lack of audio playing through the headphones, is the fact that running pactl load-module module-bluetooth-discover gives the error Failure: Module initialization failed. I'm not sure what's causing this.

How can I get my headset to play audio?

  • Are you running HWE and the later 18.04 stack? or the original one? KDE/Kubuntu uses pavucontrol-qt by default (https://packages.ubuntu.com/bionic/kubuntu-desktop); have you tried using that to select your desired output device? (you only mentioning install pavucontrol and not using it to change settings) – guiverc Nov 14 '19 at 02:46
  • pavucontrol-qt is installed and at the latest version. The headset shows up, and I can do the same switching between HSP/HFP and A2DP modes that I did using pacmd, with the same results. The headset shows up as "locked together" with the built-in audio and also "set as fallback". I'm not sure if there's another setting I can change to select the headset. – Ross Jennings Nov 14 '19 at 02:57
  • How do I find out if I'm running HWE? – Ross Jennings Nov 14 '19 at 02:58
  • HWE is enabled if you installed using 18.04.2 or later media, or enabled it (if older media was used); but the kernel used is probably the fastest (uname -a) or you could ask your system (hwe-support-status --verbose). Non-HWE will mean the 4.15 kernel is being used, HWE means your kernel & part of software-stack got updated to 18.10/19.04/19.10 eventually landing on 20.04 (useful for later hardware support esp. graphics; https://wiki.ubuntu.com/Kernel/LTSEnablementStack). With pavucontrol I'd hoped "Output Devices" or "Configuration" would be helpful. – guiverc Nov 14 '19 at 03:08
  • "Output Devices" and "Configuration" are exactly where I looked in pavucontrol -- I found the device and the "lock together" and "set as fallback" settings in "Output Devices", and the option to switch between HSP/HFP and A2DP in "Configuration". – Ross Jennings Nov 14 '19 at 03:13
  • I'm running kernel 4.20.7, but that's because I had to update the kernel to get the appropriate graphics drivers when I first installed Kubuntu (this is a Hades Canyon NUC, which has Vega M graphics). – Ross Jennings Nov 14 '19 at 03:14
  • According to hwe-support-status --verbose, I am not running a system with a Hardware Enablement Stack. – Ross Jennings Nov 14 '19 at 03:17
  • Kernel 4.20 is EOL & hasn't got loads of patches/backports, in fact is out-of-stream for Ubuntu (never going beyond test). Kernels 4.15 or 5.0 are the standard kernels so I'd suggest trying one of the supported Ubuntu 18.04 kernels (5.0 if you don't want 4.15; if that works you revert to standard kernel, enable HWE & it'll upgrade to 5.3 automatically). – guiverc Nov 14 '19 at 04:17
  • OK, I've installed the HWE packages and now I'm on kernel 5.0. This hasn't solved the problem, but it has made a difference -- now connecting the headset doesn't seem to work, but visibly fails. Trying to pair via system settings gives me "The setup of NS-CAHBTEB01 has failed." Using bluetoothctl as described on the ArchWiki (https://wiki.archlinux.org/index.php/Bluetooth_headset) gives me an "org.bluez.Error.AlreadyExists" (for some reason). – Ross Jennings Nov 14 '19 at 04:52
  • What I'm getting now is different enough that maybe I should ask a follow-up question later, rather than trying to edit this one. – Ross Jennings Nov 14 '19 at 05:07

0 Answers0