You are not logged in.
Hi,
I own a bluetooth headset ZM-HPS10BT. I've paired it and now I am able to connect it. However, only speakers get recognised. After connection there's created a device in pulseaudio for speakers, but not for the microphone. I've tried to connect it dozens of time and once or twice it got recognized.
I am able to connect the microphone on other devs, so it shouldn't be a HW problem. Since the speakers work, I guess my bluetooth receiver should be also fine.
journalctl -f:
Oct 09 12:42:31 holly bluetoothd[1656]: /org/bluez/hci0/dev_00_13_0A_00_4B_34/fd8: fd(22) ready
Oct 09 12:42:31 holly kernel: Bluetooth: Unexpected continuation frame (len 0)
Oct 09 12:42:31 holly kernel: Bluetooth: Unexpected continuation frame (len 0)
Oct 09 12:42:31 holly kernel: Bluetooth: Unexpected continuation frame (len 0)
Oct 09 12:42:31 holly kernel: Bluetooth: Unexpected continuation frame (len 0)
Oct 09 12:42:31 holly kernel: input: 00:13:0A:00:4B:34 as /devices/virtual/input/input38
Thanks,
knezi
Offline
Is the headset using A2DP or the HSP/HFP as a microphone will usually only work in HSP/HFP mode
Offline
Thanks. It really is A2DP, but according to the wiki, support for HSP/HFP was removed in bluez 5, so I have to use software that actually implements HFP such as pulseaudio. Any thoughts how to set it through Pulseaudio?
(There really is no support for HSP in newest bluez, I've checked that).
EDIT: pulseaudio says there are two modes for my dev: A2DP and HSP/HFP, but the latter is not available.
Last edited by knezi (2016-10-14 14:31:50)
Offline
Define "not available" you have to switch the profile (what are the outputs from
pacmd list-cards
pacmd list-sources
) You might have to switch pulse's bluetooth module to ofono, edit the relevant line in default.pa
load-module module-bluetooth-discover headset="ofono"
)
EDIT: On reading again, it looks like the ofono backend doesn't support the headset case, so it might not be a viable solution.
Last edited by V1del (2016-10-14 14:53:45)
Offline
Here are the outputs:
pacmd list-cards
3 card(s) available.
index: 0
name: <alsa_card.pci-0000_00_1b.0>
driver: <module-alsa-card.c>
owner module: 6
properties:
alsa.card = "0"
alsa.card_name = "HDA Intel"
alsa.long_card_name = "HDA Intel at 0xfe9f4000 irq 27"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "293e"
device.product.name = "82801I (ICH9 Family) HD Audio Controller"
device.form_factor = "internal"
device.string = "0"
device.description = "Vnitřní zvukový systém"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
profiles:
input:analog-stereo: Analogové stereo Input (priority 60, available: unknown)
output:analog-stereo: Analogové stereo Output (priority 6000, available: unknown)
output:analog-stereo+input:analog-stereo: Analogové duplexní stereo (priority 6060, available: unknown)
off: Vypnuto (priority 0, available: unknown)
active profile: <output:analog-stereo+input:analog-stereo>
sinks:
alsa_output.pci-0000_00_1b.0.analog-stereo/#0: Vnitřní zvukový systém Analogové stereo
sources:
alsa_output.pci-0000_00_1b.0.analog-stereo.monitor/#0: Monitor of Vnitřní zvukový systém Analogové stereo
alsa_input.pci-0000_00_1b.0.analog-stereo/#1: Vnitřní zvukový systém Analogové stereo
ports:
analog-input-internal-mic: Interní mikrofon (priority 8900, latency offset 0 usec, available: unknown)
properties:
device.icon_name = "audio-input-microphone"
analog-input-mic: Mikrofon (priority 8700, latency offset 0 usec, available: no)
properties:
device.icon_name = "audio-input-microphone"
analog-output-speaker: Speakers (priority 10000, latency offset 0 usec, available: no)
properties:
device.icon_name = "audio-speakers"
analog-output-headphones: Analogová sluchátka (priority 9000, latency offset 0 usec, available: yes)
properties:
device.icon_name = "audio-headphones"
index: 1
name: <bluez_card.00_13_0A_00_4B_34>
driver: <module-bluez5-device.c>
owner module: 23
properties:
device.description = "ZM-HPS10BT"
device.string = "00:13:0A:00:4B:34"
device.api = "bluez"
device.class = "sound"
device.bus = "bluetooth"
device.form_factor = "headset"
bluez.path = "/org/bluez/hci0/dev_00_13_0A_00_4B_34"
bluez.class = "0x240404"
bluez.alias = "ZM-HPS10BT"
device.icon_name = "audio-headset-bluetooth"
device.intended_roles = "phone"
profiles:
headset_head_unit: Headset Head Unit (HSP/HFP) (priority 20, available: no)
a2dp_sink: High Fidelity Playback (A2DP Sink) (priority 10, available: yes)
off: Vypnuto (priority 0, available: yes)
active profile: <a2dp_sink>
sinks:
bluez_sink.00_13_0A_00_4B_34/#1: ZM-HPS10BT
sources:
bluez_sink.00_13_0A_00_4B_34.monitor/#2: Monitor of ZM-HPS10BT
ports:
headset-output: Headset (priority 0, latency offset 0 usec, available: yes)
properties:
headset-input: Headset (priority 0, latency offset 0 usec, available: no)
properties:
index: 2
name: <bluez_card.00_13_0A_00_4B_34.2>
driver: <module-bluez5-device.c>
owner module: 25
properties:
device.description = "ZM-HPS10BT"
device.string = "00:13:0A:00:4B:34"
device.api = "bluez"
device.class = "sound"
device.bus = "bluetooth"
device.form_factor = "headset"
bluez.path = "/org/bluez/hci0/dev_00_13_0A_00_4B_34"
bluez.class = "0x240404"
bluez.alias = "ZM-HPS10BT"
device.icon_name = "audio-headset-bluetooth"
device.intended_roles = "phone"
profiles:
headset_head_unit: Headset Head Unit (HSP/HFP) (priority 20, available: no)
a2dp_sink: High Fidelity Playback (A2DP Sink) (priority 10, available: yes)
off: Vypnuto (priority 0, available: yes)
active profile: <off>
ports:
headset-output: Headset (priority 0, latency offset 0 usec, available: yes)
properties:
headset-input: Headset (priority 0, latency offset 0 usec, available: no)
properties:
pacmd list-sources
3 source(s) available.
index: 0
name: <alsa_output.pci-0000_00_1b.0.analog-stereo.monitor>
driver: <module-alsa-card.c>
flags: DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: RUNNING
suspend cause:
priority: 1950
volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB
balance 0,00
base volume: 65536 / 100% / 0,00 dB
volume steps: 65537
muted: yes
current latency: 0,00 ms
max rewind: 344 KiB
sample spec: s16le 2ch 44100Hz
channel map: front-left,front-right
Stereo
used by: 2
linked by: 2
configured latency: 40,00 ms; range is 0,50 .. 2000,00 ms
monitor_of: 0
card: 0 <alsa_card.pci-0000_00_1b.0>
module: 6
properties:
device.description = "Monitor of Vnitřní zvukový systém Analogové stereo"
device.class = "monitor"
alsa.card = "0"
alsa.card_name = "HDA Intel"
alsa.long_card_name = "HDA Intel at 0xfe9f4000 irq 27"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "293e"
device.product.name = "82801I (ICH9 Family) HD Audio Controller"
device.form_factor = "internal"
device.string = "0"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
* index: 1
name: <alsa_input.pci-0000_00_1b.0.analog-stereo>
driver: <module-alsa-card.c>
flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: RUNNING
suspend cause:
priority: 9959
volume: front-left: 66728 / 102% / 0,47 dB, front-right: 66728 / 102% / 0,47 dB
balance 0,00
base volume: 6368 / 10% / -60,75 dB
volume steps: 65537
muted: no
current latency: 0,08 ms
max rewind: 0 KiB
sample spec: s16le 2ch 44100Hz
channel map: front-left,front-right
Stereo
used by: 1
linked by: 1
configured latency: 40,00 ms; range is 0,50 .. 2000,00 ms
card: 0 <alsa_card.pci-0000_00_1b.0>
module: 6
properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "VT1708S Analog"
alsa.id = "VT1708S Analog"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "0"
alsa.card_name = "HDA Intel"
alsa.long_card_name = "HDA Intel at 0xfe9f4000 irq 27"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "293e"
device.product.name = "82801I (ICH9 Family) HD Audio Controller"
device.form_factor = "internal"
device.string = "front:0"
device.buffering.buffer_size = "352800"
device.buffering.fragment_size = "176400"
device.access_mode = "mmap+timer"
device.profile.name = "analog-stereo"
device.profile.description = "Analogové stereo"
device.description = "Vnitřní zvukový systém Analogové stereo"
alsa.mixer_name = "VIA VT1708S"
alsa.components = "HDA:11060397,10431111,00100000"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
analog-input-internal-mic: Interní mikrofon (priority 8900, latency offset 0 usec, available: unknown)
properties:
device.icon_name = "audio-input-microphone"
analog-input-mic: Mikrofon (priority 8700, latency offset 0 usec, available: no)
properties:
device.icon_name = "audio-input-microphone"
active port: <analog-input-internal-mic>
index: 2
name: <bluez_sink.00_13_0A_00_4B_34.monitor>
driver: <module-bluez5-device.c>
flags: DECIBEL_VOLUME LATENCY
state: RUNNING
suspend cause:
priority: 1030
volume: front-left: 55562 / 85% / -4,30 dB, front-right: 55562 / 85% / -4,30 dB
balance 0,00
base volume: 65536 / 100% / 0,00 dB
volume steps: 65537
muted: no
current latency: 0,00 ms
max rewind: 0 KiB
sample spec: s16le 2ch 44100Hz
channel map: front-left,front-right
Stereo
used by: 1
linked by: 1
fixed latency: 45,32 ms
monitor_of: 1
card: 1 <bluez_card.00_13_0A_00_4B_34>
module: 23
properties:
device.description = "Monitor of ZM-HPS10BT"
device.class = "monitor"
device.string = "00:13:0A:00:4B:34"
device.api = "bluez"
device.bus = "bluetooth"
device.form_factor = "headset"
bluez.path = "/org/bluez/hci0/dev_00_13_0A_00_4B_34"
bluez.class = "0x240404"
bluez.alias = "ZM-HPS10BT"
device.icon_name = "audio-headset-bluetooth"
device.intended_roles = "phone"
As for the ofono, I've set it, but didn't help. But systemctl status pulseaudio:
holly pulseaudio[5904]: E: [pulseaudio] backend-ofono.c: Failed to register as a handsfree audio agent with ofono: org.freedesktop.DBus.Error.ServiceUnknown: The name org.ofono was not provided by any .service files
Should I install this: https://aur.archlinux.org/packages/ofono/?
As I understand it the problem is that I have to persuade pulseaudio to connect to the device itself. I've tried:
pacmd load-module "module-bluez5-device path=/org/bluez/hci0/dev_00_13_0A_00_4B_34"
Unfortunately got this:
holly pulseaudio[5904]: E: [pulseaudio] bluez5-util.c: Transport Acquire() failed for transport /org/bluez/hci0/dev_00_13_0A_00_4B_34/fd2 (Operation Not Authorized)
Since pulseaudio is running with user's permission, but bluez with root's. It might be only needed to tell bluez to permit this action.
Offline
You would have to install the ofono package yes, but leave that for now, I don't think it's what you want. Does your headset provide some form of physical switch? Does forcing the HFP profile in pulseaudio work?
pacmd set-card-profile bluez_card.00_13_0A_00_4B_34.2 headset_head_unit
pulse is already connected to your device, it wouldn't show a sink if that wasn't the case.
Offline
Thanks for reply.
There's no physical switch. I can't force it. Pavucontrol shows it, but it's greyed, so can't choose it. Your CLI command returns an error `Failed to set card profile to 'headset_head_unit'` (the pacmd list-cards says it is unavailable).
From wiki:
HSP/HFP profiles
bluez5 removed support for the HSP/HFP profiles (telephony headset for TeamSpeak, Skype, etc.). You need to install PulseAudio (>= version 6) or another application that implements HSP/HFP itself. ,
Maybe pulseaudio fails to detect it. I don't know how to force going the transfer through pulseaudio.
Offline
Pulse already detects it, you wouldn't have the speakers otherwise (the paragraph you refer to, is talking about the use case where bluez itself creates the audio device as an ALSA card, which has nothing to do with the problem at hand, you still use the normal pairing routine, pulse's modules will pick up on that), might be an initial connection issue. The wiki mentions to reconnect a few times via bluetoothctl. You could still try and see if the ofono backend helps out, although description from the release announcement of pulseaudio makes me think that this would be the opposite effect of what you want.
Offline
Oh, thanks. I understand it finally. That must be the reason why I managed to connect it a couple of times when I was trying it. I can't do it thought now. Tried it ten times and didn't help.
I'll try ofono tomorrow, the AUR package seems broken, so I may have to compile from the source.
Offline
Did it work out? I seem to have the same problem with a bluetooth headset which is correctly seen as a headset. Pulse audio lets me select the HFP profile, but then the speaker seems to be disabled.
Offline
What I needed to do to have it working was to edit ~/.config/pulse/audio.conf with:
[General]
#Disable=Socket
Enable=Socket
#AutoConnect=true
I have left out the #Disable=Socket as that's what might work for you instead of Enable=Socket
Offline