12

I have a Dell Inspiron 7580 laptop and I'm running Ubuntu 20.04. I've been trying to get my Jaybird Tarah Pro wireless headphones to work correctly. Sound output is working fine, but microphone input from the earbuds is not working.

I was able to pair the headphones in Ubuntu using the standard Bluetooth setup. But the Sound options under Settings only display the following choices:

Output Device:

  • Speakers - Internal Audio (laptop speakers)
  • Headphones - Jaybird Tarah Pro (headphone output, works correctly)

Input Device:

  • Headset Microphone - Internal Audio (doesn't seem to work)
  • Internal Microphone - Internal Audio (works, but uses laptop microphone)

Do I have to install extra software to get the Bluetooth mic working? Is there any way to find out if the microphone profile was detected in the Bluetooth device?

Thanks in advance

Edit 1

I tried to unpair and pair my headset and now I have a new option under Input Device:

Input Device:

  • Headset Microphone - Internal Audio
  • Internal Microphone - Internal Audio
  • Bluetooth Input - Jaybird Tarah Pro

Sound Settings

However, I've tried to select the last item and it doesn't seem to work. The level indicator doesn't move when there's sound.

Any ideas on how to fix that?

Edit 2

The output of pactl list cards is:

Card #0
    Name: alsa_card.pci-0000_00_1f.3
    Driver: module-alsa-card.c
    Owner Module: 23
    Properties:
        alsa.card = "0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xa5418000 irq 150"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:00:1f.3"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "9dc8"
        device.product.name = "Cannon Point-LP High Definition Audio Controller"
        device.form_factor = "internal"
        device.string = "0"
        device.description = "Áudio interno"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    Profiles:
        input:analog-stereo: Entrada de Estéreo analógico (sinks: 0, sources: 1, priority: 65, available: yes)
        output:analog-stereo: Saída de Estéreo analógico (sinks: 1, sources: 0, priority: 6500, available: yes)
        output:analog-stereo+input:analog-stereo: Duplex estéreo analógico (sinks: 1, sources: 1, priority: 6565, available: yes)
        output:hdmi-stereo: Saída de Digital Stereo (HDMI) (sinks: 1, sources: 0, priority: 5900, available: no)
        output:hdmi-stereo+input:analog-stereo: Saída de Digital Stereo (HDMI) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 5965, available: no)
        output:hdmi-surround: Saída de Digital Surround 5.1 (HDMI) (sinks: 1, sources: 0, priority: 800, available: no)
        output:hdmi-surround+input:analog-stereo: Saída de Digital Surround 5.1 (HDMI) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 865, available: no)
        output:hdmi-surround71: Saída de Digital Surround 7.1 (HDMI) (sinks: 1, sources: 0, priority: 800, available: no)
        output:hdmi-surround71+input:analog-stereo: Saída de Digital Surround 7.1 (HDMI) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 865, available: no)
        output:hdmi-stereo-extra1: Saída de Digital Stereo (HDMI 2) (sinks: 1, sources: 0, priority: 5700, available: no)
        output:hdmi-stereo-extra1+input:analog-stereo: Saída de Digital Stereo (HDMI 2) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 5765, available: no)
        output:hdmi-surround-extra1: Saída de Digital Surround 5.1 (HDMI 2) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround-extra1+input:analog-stereo: Saída de Digital Surround 5.1 (HDMI 2) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-surround71-extra1: Saída de Digital Surround 7.1 (HDMI 2) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround71-extra1+input:analog-stereo: Saída de Digital Surround 7.1 (HDMI 2) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-stereo-extra2: Saída de Digital Stereo (HDMI 3) (sinks: 1, sources: 0, priority: 5700, available: no)
        output:hdmi-stereo-extra2+input:analog-stereo: Saída de Digital Stereo (HDMI 3) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 5765, available: no)
        output:hdmi-surround-extra2: Saída de Digital Surround 5.1 (HDMI 3) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround-extra2+input:analog-stereo: Saída de Digital Surround 5.1 (HDMI 3) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-surround71-extra2: Saída de Digital Surround 7.1 (HDMI 3) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround71-extra2+input:analog-stereo: Saída de Digital Surround 7.1 (HDMI 3) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-stereo-extra3: Saída de Digital Stereo (HDMI 4) (sinks: 1, sources: 0, priority: 5700, available: no)
        output:hdmi-stereo-extra3+input:analog-stereo: Saída de Digital Stereo (HDMI 4) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 5765, available: no)
        output:hdmi-surround-extra3: Saída de Digital Surround 5.1 (HDMI 4) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround-extra3+input:analog-stereo: Saída de Digital Surround 5.1 (HDMI 4) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-surround71-extra3: Saída de Digital Surround 7.1 (HDMI 4) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround71-extra3+input:analog-stereo: Saída de Digital Surround 7.1 (HDMI 4) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-stereo-extra4: Saída de Digital Stereo (HDMI 5) (sinks: 1, sources: 0, priority: 5700, available: no)
        output:hdmi-stereo-extra4+input:analog-stereo: Saída de Digital Stereo (HDMI 5) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 5765, available: no)
        output:hdmi-surround-extra4: Saída de Digital Surround 5.1 (HDMI 5) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround-extra4+input:analog-stereo: Saída de Digital Surround 5.1 (HDMI 5) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        output:hdmi-surround71-extra4: Saída de Digital Surround 7.1 (HDMI 5) (sinks: 1, sources: 0, priority: 600, available: no)
        output:hdmi-surround71-extra4+input:analog-stereo: Saída de Digital Surround 7.1 (HDMI 5) + Entrada de Estéreo analógico (sinks: 1, sources: 1, priority: 665, available: no)
        off: Desligado (sinks: 0, sources: 0, priority: 0, available: yes)
    Active Profile: output:analog-stereo+input:analog-stereo
    Ports:
        analog-input-internal-mic: Microfone interno (priority: 8900, latency offset: 0 usec)
            Properties:
                device.icon_name = "audio-input-microphone"
            Part of profile(s): input:analog-stereo, output:analog-stereo+input:analog-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71+input:analog-stereo, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1+input:analog-stereo, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2+input:analog-stereo, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3+input:analog-stereo, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4+input:analog-stereo
        analog-input-headphone-mic: Microfone (priority: 8700, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "audio-input-microphone"
            Part of profile(s): input:analog-stereo, output:analog-stereo+input:analog-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71+input:analog-stereo, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1+input:analog-stereo, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2+input:analog-stereo, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3+input:analog-stereo, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4+input:analog-stereo
        analog-input-headset-mic: Microfone de headset (priority: 8800, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "audio-input-microphone"
            Part of profile(s): input:analog-stereo, output:analog-stereo+input:analog-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71+input:analog-stereo, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1+input:analog-stereo, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2+input:analog-stereo, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3+input:analog-stereo, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4+input:analog-stereo
        analog-output-speaker: Alto-falantes (priority: 10000, latency offset: 0 usec)
            Properties:
                device.icon_name = "audio-speakers"
            Part of profile(s): output:analog-stereo, output:analog-stereo+input:analog-stereo
        analog-output-headphones: Fones de ouvido (priority: 9900, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "audio-headphones"
            Part of profile(s): output:analog-stereo, output:analog-stereo+input:analog-stereo
        hdmi-output-0: HDMI / DisplayPort (priority: 5900, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "video-display"
            Part of profile(s): output:hdmi-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71, output:hdmi-surround71+input:analog-stereo
        hdmi-output-1: HDMI / DisplayPort 2 (priority: 5800, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "video-display"
            Part of profile(s): output:hdmi-stereo-extra1, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1, output:hdmi-surround71-extra1+input:analog-stereo
        hdmi-output-2: HDMI / DisplayPort 3 (priority: 5700, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "video-display"
            Part of profile(s): output:hdmi-stereo-extra2, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2, output:hdmi-surround71-extra2+input:analog-stereo
        hdmi-output-3: HDMI / DisplayPort 4 (priority: 5600, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "video-display"
            Part of profile(s): output:hdmi-stereo-extra3, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3, output:hdmi-surround71-extra3+input:analog-stereo
        hdmi-output-4: HDMI / DisplayPort 5 (priority: 5500, latency offset: 0 usec, not available)
            Properties:
                device.icon_name = "video-display"
            Part of profile(s): output:hdmi-stereo-extra4, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4, output:hdmi-surround71-extra4+input:analog-stereo

Card #4 Name: bluez_card.C0_28_8D_AF_C6_72 Driver: module-bluez5-device.c Owner Module: 30 Properties: device.description = "Jaybird Tarah Pro" device.string = "C0:28:8D:AF:C6:72" device.api = "bluez" device.class = "sound" device.bus = "bluetooth" device.form_factor = "headphone" bluez.path = "/org/bluez/hci0/dev_C0_28_8D_AF_C6_72" bluez.class = "0x240418" bluez.alias = "Jaybird Tarah Pro" device.icon_name = "audio-headphones-bluetooth" Profiles: a2dp_sink: Reprodução de alta fidelidade (Destino A2DP) (sinks: 1, sources: 0, priority: 40, available: yes) headset_head_unit: Unidade de headset (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: yes) off: Desligado (sinks: 0, sources: 0, priority: 0, available: yes) Active Profile: off Ports: headphone-output: Fones de ouvido (priority: 0, latency offset: 0 usec) Part of profile(s): a2dp_sink, headset_head_unit headphone-input: Entrada Bluetooth (priority: 0, latency offset: 0 usec) Part of profile(s): headset_head_unit

tiagobt
  • 165

3 Answers3

7

I was facing the same issue with Oneplus Wireless Z Bass edition. My headset microphone was not detected by PulseAudio and the problem is that my headphones don't have HSP profile, only HFP profile. After trying for 2 days, I came to the solution of replacing PulseAudio with Pipewire sound server, which supports HSP, HFP and A2DP by itself. So there will be no need to install any other utility like ofono, phonesim. Also, to be noted that my problem wasn't resolved even after following all the steps to configure ofono in PulseAudio. So I came up with the steps to replace PulseAudio with PipeWire.

Here is the detailed article I have written to resolve this problem, the steps of which I'm also adding here. You can follow it and most probably be able to solve your problem.

Bluetooth headset microphone not detected

Open your terminal and follow these steps:

  1. We will use a PPA for adding Pipewire to Ubuntu 20.04, which is maintained regularly:

    sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
    
  2. To update the PPA packages in your system do:

    sudo apt update
    
  3. Install the package:

    sudo apt install pipewire
    
  4. There is also a dependency needed to be installed with Pipewire, otherwise you will face the issue of “Bluetooth headset won’t connect after installing pipewire”. Install the dependency by:

    sudo apt install libspa-0.2-bluetooth
    
  5. Now, to install the client libraries:

    sudo apt install pipewire-audio-client-libraries
    
  6. Reload the daemon:

    systemctl --user daemon-reload
    
  7. Disable PulseAudio:

    systemctl --user --now disable pulseaudio.service pulseaudio.socket
    
  8. If you are on Ubuntu 20.04, you also need to “mask” the PulseAudio by:

    systemctl --user mask pulseaudio
    

I am not sure but, if possible, you can try to run this on other versions too.
9. After a new update of Pipewire, you also need to enable pipewire-media-session-service:

   systemctl --user --now enable pipewire-media-session.service
  1. You can ensure that Pipewire is now running through:

    pactl info
    

    This command will give the following output, in Server Name you can see:

    PulseAudio (on PipeWire 0.3.28)
    

    Things should be working by now and you can see your microphone.

If it doesn’t show up, then try restarting Pipewire by this command:

systemctl --user restart pipewire

If it’s still not showing your microphone, you can try rebooting once and remove and pair your Bluetooth device again to check if it works now.

I hope I have helped you solve your problem.

If you want to rollback all the changes we did, you can do it by using:

systemctl --user unmask pulseaudio
systemctl --user --now enable pulseaudio.service pulseaudio.socket
1nfern0
  • 2,499
6

The problem is PulseAudio support for HSP/HFP (the bluetooth profiles that allow the microphone to work) isn't very good.

Recently a the proper support for HSP/HFP was merged: Add support for bluetooth A2DP codecs and codec switching. However, until a new version of PulseAudio is released and packaged in Ubuntu, it seems the only option is to build it yourself following the instructions in the link. I've tried but with no success.

Update: I just tried with Ubuntu 21.04 and it still doesn't seem to work. Another possibility I still have to test is PipeWire, the future PulseAudio replacement.

0

I believe the bluetooth mic problem is fixed in 22.04. I am running several laptops with Lubuntu, 20.04 and one with 22.04. The laptop running Lubuntu 22.04 seems to work with bluetooth earbuds. Can anyone else confirm this? I will test another laptop on 22.04 after upgrading and confirm that it works there as well.