Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

5 messages, 2 authors, 2011-08-04 · open the first message on its own page

Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

From: Jeremy Fitzhardinge <hidden>
Date: 2011-06-24 00:29:45

I have a Nokia BH-905i headset.  With a stock F15 kernel, it all works
well. With current linux-2.6.git, it fails to reconnect properly.

On connection, the headphones only beep once, whereas they normally beep
twice; I think this is one beep per profile, and its only connecting HSP
and failing A2DP.  In the sound control panel, it either comes up with
"profile: off" or with the HSP/HFP (Telephony) profile rather than A2DP,
and it fails to switch if I try to change profiles via the sound control
panel.

However, if I re-pair the device from scratch each time I use it, it
connects properly and it all works fine.

pactl list shows:

Card #2
	Name: bluez_card.00_0B_E4_A6_6C_0D
	Driver: module-bluetooth-device.c
	Owner Module: 23
	Properties:
		device.description = "Nokia BH-905i"
		device.string = "00:0B:E4:A6:6C:0D"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		device.form_factor = "headset"
		bluez.path = "/org/bluez/843/hci0/dev_00_0B_E4_A6_6C_0D"
		bluez.class = "0x240404"
		bluez.name = "Nokia BH-905i"
		device.icon_name = "audio-headset-bluetooth"
		device.intended_roles = "phone"
	Profiles:
		a2dp: High Fidelity Playback (A2DP) (sinks: 1, sources: 0, priority. 10)
		hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
		off: Off (sinks: 0, sources: 0, priority. 0)
	Active Profile: hsp

If I try to switch profiles on the command line it says:
$ pactl set-card-profile 2 a2dp
Failure: Input/Output error

and /var/log/messages shows:
module-bluetooth-device.c: A2DP is not connected, refused to switch profile

Why isn't A2DP connecting?  How can I debug this further?

Thanks,
	J

Re: Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

From: Gustavo F. Padovan <hidden>
Date: 2011-06-28 18:22:42

Hi Jeremy,

* Jeremy Fitzhardinge [off-list ref] [2011-06-23 17:29:41 -0700]:
I have a Nokia BH-905i headset.  With a stock F15 kernel, it all works
well. With current linux-2.6.git, it fails to reconnect properly.

On connection, the headphones only beep once, whereas they normally beep
twice; I think this is one beep per profile, and its only connecting HSP
and failing A2DP.  In the sound control panel, it either comes up with
"profile: off" or with the HSP/HFP (Telephony) profile rather than A2DP,
and it fails to switch if I try to change profiles via the sound control
panel.

However, if I re-pair the device from scratch each time I use it, it
connects properly and it all works fine.

pactl list shows:

Card #2
	Name: bluez_card.00_0B_E4_A6_6C_0D
	Driver: module-bluetooth-device.c
	Owner Module: 23
	Properties:
		device.description = "Nokia BH-905i"
		device.string = "00:0B:E4:A6:6C:0D"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		device.form_factor = "headset"
		bluez.path = "/org/bluez/843/hci0/dev_00_0B_E4_A6_6C_0D"
		bluez.class = "0x240404"
		bluez.name = "Nokia BH-905i"
		device.icon_name = "audio-headset-bluetooth"
		device.intended_roles = "phone"
	Profiles:
		a2dp: High Fidelity Playback (A2DP) (sinks: 1, sources: 0, priority. 10)
		hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
		off: Off (sinks: 0, sources: 0, priority. 0)
	Active Profile: hsp

If I try to switch profiles on the command line it says:
$ pactl set-card-profile 2 a2dp
Failure: Input/Output error

and /var/log/messages shows:
module-bluetooth-device.c: A2DP is not connected, refused to switch profile

Why isn't A2DP connecting?  How can I debug this further?
Can you send the output of hcidump with F15 kernel and with linux-2.6.git
kernel?

	Gustavo

Re: Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

From: Jeremy Fitzhardinge <hidden>
Date: 2011-06-28 19:47:30

On 06/28/2011 07:21 PM, Gustavo F. Padovan wrote:
Hi Jeremy,

* Jeremy Fitzhardinge [off-list ref] [2011-06-23 17:29:41 -0700]:
quoted
I have a Nokia BH-905i headset.  With a stock F15 kernel, it all works
well. With current linux-2.6.git, it fails to reconnect properly.

On connection, the headphones only beep once, whereas they normally beep
twice; I think this is one beep per profile, and its only connecting HSP
and failing A2DP.  In the sound control panel, it either comes up with
"profile: off" or with the HSP/HFP (Telephony) profile rather than A2DP,
and it fails to switch if I try to change profiles via the sound control
panel.

However, if I re-pair the device from scratch each time I use it, it
connects properly and it all works fine.

pactl list shows:

Card #2
	Name: bluez_card.00_0B_E4_A6_6C_0D
	Driver: module-bluetooth-device.c
	Owner Module: 23
	Properties:
		device.description = "Nokia BH-905i"
		device.string = "00:0B:E4:A6:6C:0D"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		device.form_factor = "headset"
		bluez.path = "/org/bluez/843/hci0/dev_00_0B_E4_A6_6C_0D"
		bluez.class = "0x240404"
		bluez.name = "Nokia BH-905i"
		device.icon_name = "audio-headset-bluetooth"
		device.intended_roles = "phone"
	Profiles:
		a2dp: High Fidelity Playback (A2DP) (sinks: 1, sources: 0, priority. 10)
		hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
		off: Off (sinks: 0, sources: 0, priority. 0)
	Active Profile: hsp

If I try to switch profiles on the command line it says:
$ pactl set-card-profile 2 a2dp
Failure: Input/Output error

and /var/log/messages shows:
module-bluetooth-device.c: A2DP is not connected, refused to switch profile

Why isn't A2DP connecting?  How can I debug this further?
Can you send the output of hcidump with F15 kernel and with linux-2.6.git
kernel?
This is already fixed in
git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6.git

Thanks,
    J

Re: Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

From: Gustavo F. Padovan <hidden>
Date: 2011-06-28 20:02:00

* Jeremy Fitzhardinge [off-list ref] [2011-06-28 20:47:19 +0100]:
On 06/28/2011 07:21 PM, Gustavo F. Padovan wrote:
quoted
Hi Jeremy,

* Jeremy Fitzhardinge [off-list ref] [2011-06-23 17:29:41 -0700]:
quoted
I have a Nokia BH-905i headset.  With a stock F15 kernel, it all works
well. With current linux-2.6.git, it fails to reconnect properly.

On connection, the headphones only beep once, whereas they normally beep
twice; I think this is one beep per profile, and its only connecting HSP
and failing A2DP.  In the sound control panel, it either comes up with
"profile: off" or with the HSP/HFP (Telephony) profile rather than A2DP,
and it fails to switch if I try to change profiles via the sound control
panel.

However, if I re-pair the device from scratch each time I use it, it
connects properly and it all works fine.

pactl list shows:

Card #2
	Name: bluez_card.00_0B_E4_A6_6C_0D
	Driver: module-bluetooth-device.c
	Owner Module: 23
	Properties:
		device.description = "Nokia BH-905i"
		device.string = "00:0B:E4:A6:6C:0D"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		device.form_factor = "headset"
		bluez.path = "/org/bluez/843/hci0/dev_00_0B_E4_A6_6C_0D"
		bluez.class = "0x240404"
		bluez.name = "Nokia BH-905i"
		device.icon_name = "audio-headset-bluetooth"
		device.intended_roles = "phone"
	Profiles:
		a2dp: High Fidelity Playback (A2DP) (sinks: 1, sources: 0, priority. 10)
		hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
		off: Off (sinks: 0, sources: 0, priority. 0)
	Active Profile: hsp

If I try to switch profiles on the command line it says:
$ pactl set-card-profile 2 a2dp
Failure: Input/Output error

and /var/log/messages shows:
module-bluetooth-device.c: A2DP is not connected, refused to switch profile

Why isn't A2DP connecting?  How can I debug this further?
Can you send the output of hcidump with F15 kernel and with linux-2.6.git
kernel?
This is already fixed in
git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6.git
Great, these fixes will be in linus-2.6 soon.

	Gustavo

Re: Linux 3.0-rc4: regression reconnecting bluetooth headset (A2DP fails)

From: Jeremy Fitzhardinge <hidden>
Date: 2011-08-04 23:34:12

On 06/28/2011 01:02 PM, Gustavo F. Padovan wrote:
* Jeremy Fitzhardinge [off-list ref] [2011-06-28 20:47:19 +0100]:
quoted
On 06/28/2011 07:21 PM, Gustavo F. Padovan wrote:
quoted
Hi Jeremy,

* Jeremy Fitzhardinge [off-list ref] [2011-06-23 17:29:41 -0700]:
quoted
I have a Nokia BH-905i headset.  With a stock F15 kernel, it all works
well. With current linux-2.6.git, it fails to reconnect properly.

On connection, the headphones only beep once, whereas they normally beep
twice; I think this is one beep per profile, and its only connecting HSP
and failing A2DP.  In the sound control panel, it either comes up with
"profile: off" or with the HSP/HFP (Telephony) profile rather than A2DP,
and it fails to switch if I try to change profiles via the sound control
panel.

However, if I re-pair the device from scratch each time I use it, it
connects properly and it all works fine.

pactl list shows:

Card #2
	Name: bluez_card.00_0B_E4_A6_6C_0D
	Driver: module-bluetooth-device.c
	Owner Module: 23
	Properties:
		device.description = "Nokia BH-905i"
		device.string = "00:0B:E4:A6:6C:0D"
		device.api = "bluez"
		device.class = "sound"
		device.bus = "bluetooth"
		device.form_factor = "headset"
		bluez.path = "/org/bluez/843/hci0/dev_00_0B_E4_A6_6C_0D"
		bluez.class = "0x240404"
		bluez.name = "Nokia BH-905i"
		device.icon_name = "audio-headset-bluetooth"
		device.intended_roles = "phone"
	Profiles:
		a2dp: High Fidelity Playback (A2DP) (sinks: 1, sources: 0, priority. 10)
		hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
		off: Off (sinks: 0, sources: 0, priority. 0)
	Active Profile: hsp

If I try to switch profiles on the command line it says:
$ pactl set-card-profile 2 a2dp
Failure: Input/Output error

and /var/log/messages shows:
module-bluetooth-device.c: A2DP is not connected, refused to switch profile

Why isn't A2DP connecting?  How can I debug this further?
Can you send the output of hcidump with F15 kernel and with linux-2.6.git
kernel?
This is already fixed in
git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6.git
Great, these fixes will be in linus-2.6 soon.
There seems to have been a regression since then and the release 3.0
kernel (and the F15 "2.6.40" kernel), which have gone back to showing
the original symptoms: I can use my headphones when I first pair them,
but I can't reconnect from then.

Thanks,
    J
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help