Bug 87980 - Native handsfree backend (backend-native.c) cannot emulate HSP/HFP device, but ofono backend can
Summary: Native handsfree backend (backend-native.c) cannot emulate HSP/HFP device, bu...
Status: RESOLVED MOVED
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: modules (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-02 21:26 UTC by ar.fahrutdinov
Modified: 2018-07-30 09:56 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description ar.fahrutdinov 2015-01-02 21:26:52 UTC
Hello,

I use

* Debian Jessie/Experimental
* kernel 3.16
* pulseaudio 5.99-2
* bluez 5.27

when I connect my Android4.4-based smartphone to PC via bluetooth, I get A2DP profile only, not HSP/HFP

Pulseaudio debug log contains this lines:

D: [pulseaudio] bluez5-util.c: Adapter: /org/bluez/hci0
D: [pulseaudio] bluez5-util.c: Unknown interface org.freedesktop.DBus.Properties found, skipping
D: [pulseaudio] bluez5-util.c: Unknown interface org.bluez.MediaControl1 found, skipping
D: [pulseaudio] backend-native.c: Bluetooth Headset Backend API support using the native backend
D: [pulseaudio] backend-native.c: Registering Profile /Profile/HSPAGProfile

then there is no message from backend-native.c source even I connect my smartphone.

Bluez debug log contains follow info after pulseaudio started:

bluetoothd[19688]: src/profile.c:ext_device_probe() Headset Voice gateway probed with UUID 00001108-0000-1000-8000-00805f9b34fb
bluetoothd[19688]: src/service.c:change_state() 0xadd800: device 00:02:5B:00:13:5B profile Headset Voice gateway state changed: unavailable -> disconnected (0)
bluetoothd[19688]: src/adapter.c:dev_class_changed_callback() Class: 0x180104
bluetoothd[19688]: src/attrib-server.c:attrib_db_update() handle=0x0008
bluetoothd[19688]: src/adapter.c:dev_class_changed_callback() Class: 0x1c0104
bluetoothd[19688]: src/attrib-server.c:attrib_db_update() handle=0x0008

then, when I connect my smartphone, bluez writes this:

bluetoothd[19688]: src/device.c:connect_profiles() /org/bluez/hci0/dev_00_02_5B_00_13_5B (all), client :1.206
bluetoothd[19688]: src/service.c:btd_service_ref() 0xad31d0: ref=2
bluetoothd[19688]: src/service.c:change_state() 0xad31d0: device 00:02:5B:00:13:5B profile Headset Voice gateway state changed: disconnected -> connecting (0)
bluetoothd[19688]: src/adapter.c:connect_failed_callback() hci0 00:02:5B:00:13:5B status 4
bluetoothd[19688]: plugins/policy.c:conn_fail_cb() status 4
bluetoothd[19688]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr 00:02:5B:00:13:5B type 0 status 0x4
bluetoothd[19688]: src/device.c:device_bonding_complete() bonding (nil) status 0x04
bluetoothd[19688]: src/device.c:device_bonding_failed() status 4
bluetoothd[19688]: src/adapter.c:resume_discovery() 
bluetoothd[19688]: Unable to get Headset Voice gateway SDP record: Host is down
bluetoothd[19688]: src/service.c:change_state() 0xad31d0: device 00:02:5B:00:13:5B profile Headset Voice gateway state changed: connecting -> disconnected (-112)
bluetoothd[19688]: src/device.c:device_profile_connected() Headset Voice gateway Host is down (112)
bluetoothd[19688]: src/device.c:device_profile_connected() returning response to :1.206

But with ofono backend (without any other changes), my smartphone connects via HSP/HFP and can use PC as headset device perfectly.
Comment 1 Tanu Kaskinen 2015-01-14 20:41:47 UTC
I need to confirm this still, but it might be that the native backend simply doesn't have implementation for the headset role, meaning that your use case isn't supported. If so, then someone should implement the headset role support, but I don't know who that will be... At least this needs to be added to the release notes, since this is an important shortcoming.
Comment 2 Arun Raghavan 2015-01-15 04:23:20 UTC
Yes, this is known, and hopefully we can try to have this for 7.0.
Comment 3 GitLab Migration User 2018-07-30 09:56:01 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/125.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.