9

I am running Ubuntu 18.04 and I am trying to use Huawei Freebuds 3 over Bluetooth.

I have no problem during pairing and with the output sound, but I cannot make the microphone works.

I have checked the pactl list and this is the output:

Card #2
        Name: bluez_card.FC_94_35_BA_C6_A4
        Driver: module-bluez5-device.c
        Owner Module: 29
        Properties:
                device.description = "FreeBuds 3"
                device.string = "FC:94:35:BA:C6:A4"
                device.api = "bluez"
                device.class = "sound"
                device.bus = "bluetooth"
                device.form_factor = "headphone"
                bluez.path = "/org/bluez/hci0/dev_FC_94_35_BA_C6_A4"
                bluez.class = "0x240418"
                bluez.alias = "FreeBuds 3"
                device.icon_name = "audio-headphones-bluetooth"
        Profiles:
                a2dp_sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 40, available: yes)
                headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: no)
                off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
        Active Profile: a2dp_sink
        Ports:
                headphone-output: Headphone (priority: 0, latency offset: 0 usec)
                        Part of profile(s): a2dp_sink, headset_head_unit
                headphone-input: Bluetooth Input (priority: 0, latency offset: 0 usec, not available)
                        Part of profile(s): headset_head_unit

I have tried to change the profile of the Freebuds (e.g. from Blueman GUI) to headset_head_unit but I was unable to do so and from /var/log/syslog the only related error that I can see is pulseaudio[3175]: [pulseaudio] module-bluez5-device.c: Refused to switch profile to headset_head_unit: Not connected even if the device is connected.

Anyone can help me?

Mark
  • 91
  • 1
  • 4
  • I am using a set of QCY BT earbuds with mic and the unexpected differences I can see in the pactl list: Yours: `headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, **available: no**)` Mine: `headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, **available: yes**)` and Yours: `headphone-input: Bluetooth Input (priority: 0, latency offset: 0 usec, **not available**)` Mine: `headphone-input: Bluetooth Input (priority: 0, latency offset: 0 usec)` So it looks like your Mic is not being detected as being available. – Jaydin May 05 '20 at 02:01
  • Do you see the headset mic listed in the GUI (Settings->Sound->Input)? – Jaydin May 05 '20 at 02:04
  • No I cannot see the mic – Mark May 11 '20 at 10:33
  • have you tried to see if the mic on the buds work when paired with a phone? If so, then I'm out of ideas. – Jaydin May 11 '20 at 22:45
  • Yes, it works on my smartphone – Mark May 12 '20 at 07:10
  • UPDATE: I have upgraded to ubuntu 20.04 and now it is possible to select freebuds as an input device but they do not work – Mark May 20 '20 at 16:53
  • That's interesting - that indicates this was a driver issue with the relevant drivers being available in 20.04 but not 18.04. Great to hear you got the issue resolved. – Jaydin May 21 '20 at 04:19
  • They are working neither with Ubuntu 20.04 but they have a different behaviour – Mark May 28 '20 at 08:40
  • Have you been able to use the mic in Ubuntu 20.04 (or any other Linux distribution)? I was planing to buy one of these, but if the mic doesn't work Linux, they are out question. – skhell Sep 09 '20 at 19:24
  • @skhell no I was not able to use them – Mark Sep 22 '20 at 10:14

1 Answers1

3

Apparently the problem here is that the Huawei FreeBuds 3 do not support Headset profile (HSP). They only support Handsfree profile (HFP) as can be seen in the bluetoothctl output. PulseAudio on the other hand does not support HFP out of the box, as is explained here: https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Bluetooth/

So the only options are to install and setup oFono or to patch and compile PulseAudio yourself. Patch is available here: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/94

  • How do you know it doesn't support HSP? I've tried that patch and no luck. – iElectric Aug 02 '20 at 21:26
  • 1
    @iElectric you can check for yourself. In a terminal type `bluetoothctl`, then `devices`, then `info `. It will list the supported bluetooth profiles which include Handsfree but not Headset. For my Jabra EVOLVE 65 it does list Headset and everything works fine. – Klaus Schumacher Aug 04 '20 at 10:57
  • I did the same with my Sennheisers and I see Headset and Handsfree. https://pastebin.com/g57Ngk0Z But still microphone does not work. Do you have any ideas? – Arxeiss Aug 12 '20 at 15:26
  • managed to get HFP working in my Huawei Freebuds PRO, mic works, but somehow the audio quality of both input and output is low, and mono. Is this normal? – sscarduzio Jan 22 '21 at 10:30
  • 2
    @sscarduzio yes this is unfortunately the best you can get at the moment. Modern headsets support a wideband HFP/HSP audio codec but it is not yet available in Linux/Pulseaudio. See https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/776 for reference. – Klaus Schumacher Jan 23 '21 at 12:34