[Jawbone ERA] HFP features not working with Bluez5 when phone initiates connection
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Won't Fix
|
High
|
Unassigned | ||
bluez (Ubuntu) |
Won't Fix
|
Medium
|
Simon Fels |
Bug Description
While debugging some re-factoring work on the ofono upower plugin, I noticed that I wasn't able to answer or terminate calls using my Jawbone ERA headset. I bought this headset last year, and although it's an older model, it's spec sheet states that it supports HSP 1.1, and HFP 1.5.
I can pair the device with my krillin, and it properly auto connects ( note, this seems to work better than my iPhone ). In-call audio works for both incoming and outgoing calls, however I get no ringtone in the headset and as mentioned above, I can't answer or terminate the call. I've verified on my iPhone6, that the headset works. In addition to a ringtone in the earpiece, the headset also announces the incoming phone number.
From looking at the ofono debug output, I'm never seeing a new HFP connection occur. I noticed as the upower plugin uses a foreach_atom (HFP) style call to update the battery indicators on all attached HFP devices.
I've tested this extensively on krillin, running rc-proposed:
phablet@
current build number: 205
device name: krillin
channel: ubuntu-
last update: 2015-12-16 17:53:19
version version: 205
version ubuntu: 20151216
version device: 20151204-2254a36
version custom: 20151111-
I've also tested on mako, rc-proposed ( #317 ).
For reference here's the versions of bluez, ofono, and PulseAudio on the device:
bluez 5.36-0ubuntu2~
ofono 1.17.bzr6908+
pulseaudio 1:6.0-0ubuntu9.11
Related branches
- Simon Fels: Approve
- Sebastien Bacher: Approve
-
Diff: 1485 lines (+1366/-6)12 files modifieddebian/bluez-tests.install (+9/-0)
debian/bluez.install (+5/-1)
debian/changelog (+28/-0)
debian/control (+8/-4)
debian/patches/0001-obexd-plugins-import-PBAP-ebook-support-from-upstrea.patch (+730/-0)
debian/patches/0001-obexd-plugins-port-ebook-support-to-the-latest-EDS.patch (+292/-0)
debian/patches/0002-hostname-handle-chassis-type-handset.patch (+55/-0)
debian/patches/0003-tools-mpris-proxy-allow-user-to-specify-different-mp.patch (+65/-0)
debian/patches/0004-obexd-enable-ebook-backend-conditionally.patch (+103/-0)
debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch (+55/-0)
debian/patches/series (+11/-0)
debian/rules (+5/-1)
tags: | added: bluetooth-ota9 |
Changed in bluez (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Simon Fels (morphis) |
Changed in canonical-devices-system-image: | |
status: | New → In Progress |
milestone: | none → ww08-2016 |
importance: | Undecided → High |
assignee: | nobody → John McAleely (john.mcaleely) |
milestone: | ww08-2016 → none |
tags: | added: bluez-touch |
Changed in canonical-devices-system-image: | |
assignee: | John McAleely (john.mcaleely) → nobody |
Did a first look and it seems that your headset initates the connection and wants to connect on HSP
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/profile. c:ext_confirm( ) incoming connect from 00:21:3C:A0:14:A6 c:btd_service_ ref() 0xb7fedd90: ref=2 c:ext_confirm( ) Headset Voice gateway authorizing connection from 00:21:3C:A0:14:A6 c:ext_auth( ) 00:21:3C:A0:14:A6 authorized to connect to Headset Voice gateway c:ext_connect( ) Headset Voice gateway connected to 00:21:3C:A0:14:A6 c:change_ state() 0xb7fedd90: device 00:21:3C:A0:14:A6 profile Headset Voice gateway state changed: disconnected -> connecting (0) HSPAGProfile, interface= org.bluez. Profile1, member= NewConnection bluez/hci0/ dev_00_ 21_3C_A0_ 14_A6, fd=63 hci0/dev_ 00_21_3C_ A0_14_A6/ fd63 state changed from disconnected to idle bluez5- discover. c: Loading module- bluez5- device path=/org/ bluez/hci0/ dev_00_ 21_3C_A0_ 14_A6 profile="a2dp_sink" sco_sink= "sink.fake. sco" sco_source= "source. fake.sco" bluez5- device. c: Using a2dp_sink profile as default card.00_ 21_3C_A0_ 14_A6" bluez5- device. c: Default profile not connected, selecting off profile bluez5- device. c: Created card (current profile off)
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/service.
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/profile.
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/profile.
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/profile.
Dec 17 17:59:38 ubuntu-phablet bluetoothd[895]: src/service.
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] backend-native.c: dbus: path=/Profile/
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] backend-native.c: dbus: NewConnection path=/org/
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] bluez5-util.c: Transport /org/bluez/
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] module-
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] module-
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] card.c: Created 1 "bluez_
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] module-
Dec 17 17:59:38 ubuntu-phablet pulseaudio[2226]: [pulseaudio] module-
Not sure why but that is the reason why you can't
- control the call
- don't hear any ringtone as long as the telepathy-ofono service changes didn't landed to do this over A2DP rather than switching to HSP/HFP already when the ringtone is playing.