Bug 1124996 - Bluetooth audio not connecting with kernel-3.16
Summary: Bluetooth audio not connecting with kernel-3.16
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 20
Hardware: i686
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:fe7035aa348bc8b2fc1d9301f63...
: 1144875 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-07-30 19:31 UTC by Stuart D Gathman
Modified: 2014-10-22 02:38 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of: 981355
: 1144875 (view as bug list)
Environment:
Last Closed: 2014-10-22 02:38:38 UTC


Attachments (Terms of Use)
journalctl -b0 after reboot with new kernel and attempted bluetooth connect (534.36 KB, text/plain)
2014-09-16 14:21 UTC, Stuart D Gathman
no flags Details

Description Stuart D Gathman 2014-07-30 19:31:56 UTC
+++ This bug was initially created as a clone of Bug #981355 +++

Description of problem:
I have a CREATIVE S2 Wireless speaker system. 
It was working fine using Fedora 17 and any player.
Now I have upgraded to Fedora 19, I can search and pair the speaker system without any problems. But, when I select this Output device in the Sound Settings, it does not work. Not even the test speaker function.

Thank you

Version-Release number of selected component:
gnome-abrt-0.2.12

Additional info:
reporter:       libreport-2.1.5
kernel:         3.9.8-300.fc19.x86_64
libpeerconnection.log: 
type:           libreport

--- Additional comment from Ned Forrester on 2013-08-21 23:54:47 EDT ---

I have the same symptoms: headset pairs OK, appears in Gnome Sound
Settings, and in Pulseaudio Volume Control.  There is a slight hissing
noise, the volume of which responds to the volume slider in Pulseaudio
Volume Control.  However, no audio ever heard from any source, even 
from the Gnome speaker test. 

I last had this headset working on a different machince running FC12.  
I have been unable to get it work on my new machine under either FC17 
or FC19.  

System:
	Lenovo T530
	Fedora 19:
		3.10.7-200.fc19.x86_64 #1 SMP Thu Aug 15 23:19:45 UTC 2013 
		x86_64 x86_64 x86_64 GNU/Linux
	alsa-firmware-1.0.27-1.fc19.noarch
	alsa-lib-1.0.27.2-1.fc19.x86_64
	alsamixergui-0.9.0-0.14.rc2.fc19.x86_64
	alsa-oss-1.0.17-8.fc19.x86_64
	alsa-oss-libs-1.0.17-8.fc19.x86_64
	alsa-plugins-oss-1.0.27-1.fc19.x86_64
	alsa-plugins-pulseaudio-1.0.27-1.fc19.x86_64
	alsa-tools-firmware-1.0.27-2.fc19.x86_64
	alsa-utils-1.0.27.2-2.fc19.x86_64
	bluez-4.101-9.fc19.x86_64
	bluez-alsa-4.101-9.fc19.x86_64
	bluez-compat-4.101-9.fc19.x86_64
	bluez-cups-4.101-9.fc19.x86_64
	bluez-gstreamer-4.101-9.fc19.x86_64
	bluez-hcidump-2.5-2.fc19.x86_64
	bluez-hid2hci-4.101-9.fc19.x86_64
	bluez-libs-4.101-9.fc19.x86_64
	pulseaudio-3.0-10.fc19.x86_64
	pulseaudio-esound-compat-3.0-10.fc19.x86_64
	pulseaudio-libs-3.0-10.fc19.x86_64
	pulseaudio-libs-glib2-3.0-10.fc19.x86_64
	pulseaudio-module-bluetooth-3.0-10.fc19.x86_64
	pulseaudio-module-gconf-3.0-10.fc19.x86_64
	pulseaudio-module-jack-3.0-10.fc19.x86_64
	pulseaudio-module-x11-3.0-10.fc19.x86_64
	pulseaudio-utils-3.0-10.fc19.x86_64
	pulsecaster-0.1.9-3.fc19.noarch

Device:
	Jabra BT500
--

pactl list sinks

Sink #0
	State: RUNNING
	Name: alsa_output.pci-0000_00_1b.0.analog-stereo
	Description: Built-in Audio Analog Stereo
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4
	Mute: no
	Volume: 0: 100% 1: 100%
	        0: 0.00 dB 1: 0.00 dB
	        balance 0.00
	Base Volume: 100%
	             0.00 dB
	Monitor Source: alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
	Latency: 19693 usec, configured 20000 usec
	Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.resolution_bits = "16"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "ALC269VC Analog"
		alsa.id = "ALC269VC Analog"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xf3a30000 irq 48"
		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 = "1e20"
		device.product.name = "7 Series/C210 Series Chipset Family High Definition 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 = "Analog Stereo"
		device.description = "Built-in Audio Analog Stereo"
		alsa.mixer_name = "Realtek ALC269VC"
		alsa.components = "HDA:10ec0269,17aa21f6,00100203"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Ports:
		analog-output-speaker: Speakers (priority: 10000, not available)
		analog-output-headphones: Headphones (priority: 9000, available)
	Active Port: analog-output-headphones
	Formats:
		pcm

Sink #1
	State: IDLE
	Name: combined
	Description: Simultaneous output to Built-in Audio Analog Stereo, Jabra BT500
	Driver: module-combine-sink.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 11
	Mute: no
	Volume: 0:  80% 1:  80%
	        0: -5.85 dB 1: -5.85 dB
	        balance 0.00
	Base Volume: 100%
	             0.00 dB
	Monitor Source: combined.monitor
	Latency: 437109 usec, configured 128000 usec
	Flags: DECIBEL_VOLUME LATENCY 
	Properties:
		device.class = "filter"
		device.description = "Simultaneous output to Built-in Audio Analog Stereo, Jabra BT500"
		device.icon_name = "audio-card"
	Formats:
		pcm

Sink #15
	State: RUNNING
	Name: bluez_sink.00_16_8F_08_5C_99
	Description: Jabra BT500
	Driver: module-bluetooth-device.c
	Sample Specification: s16le 1ch 8000Hz
	Channel Map: mono
	Owner Module: 51
	Mute: no
	Volume: 0: 100%
	        balance 0.00
	Base Volume: 100%
	Monitor Source: bluez_sink.00_16_8F_08_5C_99.monitor
	Latency: 134000 usec, configured 128000 usec
	Flags: HARDWARE HW_VOLUME_CTRL LATENCY 
	Properties:
		bluetooth.protocol = "hsp"
		device.intended_roles = "phone"
		device.description = "Jabra BT500"
		device.string = "00:16:8F:08:5C:99"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		bluez.path = "/org/bluez/675/hci0/dev_00_16_8F_08_5C_99"
		bluez.class = "0x20040c"
		bluez.name = "Jabra BT500"
		device.icon_name = "audio-card-bluetooth"
	Ports:
		bluetooth-output: Bluetooth Output (priority: 2000, available)
	Active Port: bluetooth-output
	Formats:
		pcm

--- Additional comment from Francisco Grau on 2013-10-21 03:28:22 EDT ---

Hi, this problem was resolved more or less for some time. But now there is another problem with the Bluetooth audio. (the audio was working, but the audio preferences dialog will randomly close)

Since the Blueman Device Manager has been included, the bluetooth (Creative S2) speakers are not working anymore. The device pairs ok, but when I choose to "Connect to" "Audio Sink" it will connect properly the speakers (the speakers indicator shows that the pairing is working) and then the Blueman Device Manager will say "Connection Failed: Stream setup failed", then it disconnects the speakers and nothing else happens. The Bluetooth device panel from the Gnome settings does the same thing. It pairs, connects for 2 seconds, then disconnects.

--- Additional comment from Ned Forrester on 2014-01-14 17:12:04 EST ---

Francisco, how was this resolved for you?  I still am not able to get bluetooth audio to work under Fedora 19.  For me, everything is the same as reported in comment 1, above, except for keeping all packages up-to-date.

--- Additional comment from Stuart D Gathman on 2014-02-02 21:25:11 EST ---

Same problem with BR-100 audio device - connects, but then gets stream setup failed.  All packages up to date.

--- Additional comment from Stuart D Gathman on 2014-02-03 12:16:49 EST ---

One possible problem, I see that my bluetooth adapter is 2.0, and the BT audio device is 3.0.  As I understand it, adapters are backward compatible with older protocols, but devices are not.  So it is worth a try to upgrade to a v4.0 adapter.

--- Additional comment from Stuart D Gathman on 2014-03-23 19:19:31 EDT ---

Upgrading to a 4.0 adapter fixes the problem.  3.0 devices require a 3.0 or newer adapter, and the bluetooth drivers don't seem to be able to detect this problem (it seems like it should be easy - but perhaps there is some braindamage in the protocol where older adapters can't detect newer devices - i.e. the protocol version are not explicit).

--- Additional comment from Stuart D Gathman on 2014-05-11 20:54:01 EDT ---

Hmm.  I added a 4.0 adapter to a computer with a 2.0 adapter on the motherboard.  It still hangs with "stream setup failed".  Apparently, the mere presence of a 2.0 adapter does the damage.  Let me try blacklisting the driver for the 2.0 adapter.

--- Additional comment from Stuart D Gathman on 2014-07-17 10:00:48 EDT ---

I blacklisted the motherboard 2.0 adapter, and even disabled it in BIOS.  The only adapter seen is the USB 4.0 adapter - that I did get to work on an older laptop: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

Pairing works, but attempting to connect audio get the dreaded "stream setup failed".

--- Additional comment from Stuart D Gathman on 2014-07-28 13:47:49 EDT ---

Same problem on Fedora 20, two different laptops.  Two different speakers.  Bluetooth dongle that worked in F17.

--- Additional comment from Stuart D Gathman on 2014-07-29 21:39:38 EDT ---

Suddenly (perhaps after some updates, none of which look related), the F19 laptop that was working now gets:
Jul 29 21:25:19 silver bluetoothd[775]: bluetoothd[775]: Permission denied (13)
Jul 29 21:25:19 silver bluetoothd[775]: Permission denied (13)

There are no "denied" entries in audit.log

Comment 1 Stuart D Gathman 2014-07-30 19:34:12 UTC
On F20, here is what appears in journalctl -a when attempting to connect bluetooth audio:

Jul 30 14:58:32 elissa.gathman.org gnome-session[1531]: ** Message: has_config_widget 94:23:6E:0B:BD:AF AudioSink
Jul 30 14:58:33 elissa.gathman.org gnome-session[1531]: ** Message: has_config_widget 94:23:6E:0B:BD:AF A/V_RemoteControlTarget
Jul 30 14:58:33 elissa.gathman.org gnome-session[1531]: ** Message: has_config_widget 94:23:6E:0B:BD:AF A/V_RemoteControl
Jul 30 14:58:35 elissa.gathman.org bluetoothd[716]: connect error: Software caused connection abort (103)
Jul 30 14:58:45 elissa.gathman.org fprintd[9347]: ** Message: No devices in use, exit
Jul 30 14:58:56 elissa.gathman.org bluetoothd[716]: connect error: Connection timed out (110)

Comment 2 Stuart D Gathman 2014-07-30 19:38:35 UTC
pulseaudio-5.0-7.fc20.i686
pulseaudio-module-bluetooth-5.0-7.fc20.i686

On a second attempt, this is what we get:

Jul 30 15:00:09 elissa.gathman.org gnome-session[1531]: available 0** Message: has_config_widget 94:23:6E:0B:BD:AF AudioSink
Jul 30 15:00:09 elissa.gathman.org gnome-session[1531]: ** Message: has_config_widget 94:23:6E:0B:BD:AF A/V_RemoteControlTarget
Jul 30 15:00:09 elissa.gathman.org gnome-session[1531]: ** Message: has_config_widget 94:23:6E:0B:BD:AF A/V_RemoteControl
Jul 30 15:00:12 elissa.gathman.org bluetoothd[716]: connect error: Permission denied (13)
Jul 30 15:00:14 elissa.gathman.org bluetoothd[716]: connect error: Connection refused (111)
Jul 30 15:00:16 elissa.gathman.org bluetoothd[716]: connect error: Connection refused (111)
Jul 30 15:00:17 elissa.gathman.org bluetoothd[716]: connect error: Connection refused (111)
Jul 30 15:00:19 elissa.gathman.org bluetoothd[716]: connect error: Connection refused (111)

Comment 3 Stuart D Gathman 2014-08-05 16:18:55 UTC
This might be relevant: http://www.spinics.net/lists/linux-bluetooth/msg22729.html

Can I just stop the bluetooth.service and manually run bluetoothd?  Will try it for some debugging output.

Comment 4 Stuart D Gathman 2014-08-05 16:31:21 UTC
bluetoothd[24803]: src/device.c:connect_profiles() /org/bluez/hci0/dev_94_23_6E_0B_BD_AF (all), client :1.329
bluetoothd[24803]: profiles/audio/a2dp.c:a2dp_sink_connect() path /org/bluez/hci0/dev_94_23_6E_0B_BD_AF
bluetoothd[24803]: a2dp-sink profile connect failed for 94:23:6E:0B:BD:AF: Protocol not available


According to this random person on the internet, pulseaudio does not support bluez-5, and ALSA does not support bluez-5.  And bluez-5 cannot support a2dp without pulseaudio.  So this seems to be an integration total failure.  :-(

According to http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/5.0/, the current [pulseaudio] 4.0 release does not support bluez 5, and it seems even 5.0 is not going to support HFP. And I heard ALSA cannot support bluez5 without pulseaudio...

Comment 5 Stuart D Gathman 2014-08-05 16:33:11 UTC
The version combo from he11:

pulseaudio-5.0-7.fc20.i686
bluez-5.18-1.fc20.i686

Comment 6 Rex Dieter 2014-08-05 17:50:07 UTC
Only HSP/HFP modes are not supported (yet), see also bug #1045548 and upstream 	http://bugs.freedesktop.org/show_bug.cgi?id=73325

Comment 7 Stuart D Gathman 2014-09-08 14:00:07 UTC
This seems to be fixed now.  It is not obvious which update fixed it.

Comment 8 Stuart D Gathman 2014-09-16 14:19:51 UTC
Ok, not quite fixed.

1) bluetooth audio stops working after suspend.  A reboot fixes it.

2) with the last set of updates, it doesn't work again.

packages that might be relevant:

  kernel-3.16.2-200.fc20.i686
  gstreamer1-libav-1.2.4-2.fc20.i686
  
Using bluetoothctl (to avoid bugs in the gnome applet - 100% CPU during discovery), this is what now happens after connect (after fresh reboot):

[bluetooth]# connect 94:23:6E:0B:BD:AF
Attempting to connect to 94:23:6E:0B:BD:AF
[CHG] Device 94:23:6E:0B:BD:AF Connected: yes
Failed to connect: org.bluez.Error.Failed
[CHG] Device 94:23:6E:0B:BD:AF Connected: no
[CHG] Device 94:23:6E:0B:BD:AF Connected: yes
[CHG] Device 94:23:6E:0B:BD:AF Connected: no
[CHG] Device 94:23:6E:0B:BD:AF Connected: yes
[CHG] Device 94:23:6E:0B:BD:AF Connected: no
[CHG] Device 94:23:6E:0B:BD:AF Connected: yes
[CHG] Device 94:23:6E:0B:BD:AF Connected: no
[CHG] Device 94:23:6E:0B:BD:AF Connected: yes
[CHG] Device 94:23:6E:0B:BD:AF Connected: no
...

Comment 9 Stuart D Gathman 2014-09-16 14:21:28 UTC
Created attachment 938040 [details]
journalctl -b0 after reboot with new kernel and attempted bluetooth connect

Comment 10 Rex Dieter 2014-09-16 14:30:28 UTC
OK, if suspending is the trigger, that's most likely a driver issue (reassigning to kernel).

Comment 11 Stuart D Gathman 2014-09-16 14:33:32 UTC
Rebooting with previous kernel allows connect to work, so there is definitely a problem with kernel-3.16.  However, pulseaudio still doesn't allow an audio connection.  So that is broken also by the updates.  Pulseaudio itself was not updated, so it is not clear what broke it.

Should I open a new bug for the suspend problem?  After suspend, bluetoothctl no longer discovers audio devices, although other computers are still discovered.  A reboot restores the ability to discover audio devices.

Comment 12 Stuart D Gathman 2014-09-16 14:36:53 UTC
I considered it "working" when it was only broken by suspend.  However, it is totally broken again - even after reboot.  That is why I asked about creating a new bug for the suspend problem.

Even rebooting with working kernel (kernel-3.15.10-201.fc20.i686), the audio stream is still broken.  So there is also a problem somewhere in the stack from pulseaudio to kernel after the updates.

Comment 13 Rex Dieter 2014-09-16 14:51:34 UTC
It's usually best to track one issue per bug, so doing a new bug makes sense.

Comment 14 Stuart D Gathman 2014-09-21 19:50:09 UTC
With kernel-3.15, the bluetooth connects to BR-100.  With kernel-3.16 the bluetooth fails to connect to BR-100.  So there is clearly a kernel problem introduced in 3.16.  I created another issue for the userland problem, where even after connecting with kernel-3.15, the device doesn't show up in pulseaudio after some unidentified update.  I created another issue for the userland problems.

Comment 15 Josh Boyer 2014-09-22 13:05:44 UTC
*** Bug 1144875 has been marked as a duplicate of this bug. ***

Comment 16 Stuart D Gathman 2014-09-22 16:17:58 UTC
There are 3 separate issues.

1) the kernel breaks with 3.16
2) When the kernel was working, it would not work after suspend/resume
3) Even when the kernel is working, and the device can connect, there is still no bluetooth audio device in pulseaudio since some update after Sep 03.

I was attempting to split into 3 issues as advised.

Comment 17 Stuart D Gathman 2014-10-22 02:38:38 UTC
After further research, the kernel-3.16 isn't broken.  It has a new feature - real support for bt4 low power burst (I think that's what you call it).  The Gnome Bluetooth config GUI looks like it isn't connected, but it really is.  (Maybe the GUI can be improved.)  The command line tool also shows it disconnected, but apparently if the initial connection succeeds, then you are good.

So why wouldn't the audio connect?  Well, apparently this change in protocol requires a power cycle of the bluetooth device before it will operate with the new regime.  Or else, maybe pulseaudio was fixed again with the last set of updates.  We may never know.


Note You need to log in before you can comment on or make changes to this bug.