FS#37452 - [bluedevil] Bluetooth headset does not work in KDE after the update to bluez 5.x

Attached to Project: Arch Linux
Opened by Andrej Podzimek (andrej) - Tuesday, 22 October 2013, 19:35 GMT
Last edited by Andrea Scarpino (BaSh) - Saturday, 21 December 2013, 17:38 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Andrea Scarpino (BaSh)
Tom Gundersen (tomegun)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 13
Private No

Details

Description:

Creative WP-300 headste stopped working after the update to bluez 5. My bluetooth mouse still works (with an extremely long re-connection delay though). The WP-300 headset could not be used based on the old pairing metadata inherited from bluez 4.x, because bluedevil-audio in KDE received signal 11. Removing the device and pairing it again does not work either (timeout). The headset appears on the scan output, but cannot be paired from KDE.

Additional info:
* package version(s)
bluedevil 2.0-0.1
bluez 5.9-1
bluez-firmware 1.2-7
bluez-libs 5.9-1
bluez-utils 5.9-1
libbluedevil 2.0-0.1
pulseaudio 4.0-2
pulseaudio-alsa 2-2

* config and/or log files etc.
There are *no* error reports in journalctl -u bluetooth.

Steps to reproduce:
Try to use/pair a Bluetooth headset with bluez 5 in KDE (preferably one without a microphone, but I'm not sure whether this is relevant).
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Saturday, 21 December 2013, 17:38 GMT
Reason for closing:  Fixed
Additional comments about closing:  bluedevil 1:2.0rc1-1
Comment by Fabio (regulus) - Tuesday, 22 October 2013, 21:30 GMT Comment by Heinrich Siebmanns (Harvey) - Wednesday, 06 November 2013, 09:27 GMT
same, still valid with bluez 5.10. Debugger says:

Application: Bluetooth Audio Helper (bluedevil-audio), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[KCrash Handler]
#5 0x00007ffcd4e40fed in BlueDevil::Device::isPaired() const () from /usr/lib/libbluedevil.so.2
#6 0x0000000000402d2e in _start ()

Seems libbluedevil is to blame.
Comment by Eric (wazyk) - Tuesday, 26 November 2013, 07:00 GMT
Same here.
Strange thing is that I can't find bluetoothctl command that should be installed with bluez.
Is package complete ?
Comment by Heinrich Siebmanns (Harvey) - Tuesday, 26 November 2013, 07:39 GMT
still no improvements here. And with bluez4 being removed bluetooth is completely unusable on kde.
@Eric: bluetoothctl is part of bluez-utils, nozt bluez
Comment by Andrej Podzimek (andrej) - Tuesday, 26 November 2013, 13:46 GMT
There's actually a bunch of other Bluetooth problems besides this "audio crash". For instance, I can't use my mouse after booting up or after waking up the computer from suspend-to-whatever. A simple workaround: systemctl restart bluetooth. The mouse starts working soon after that.
Comment by Vasily Khoruzhick (anarsoul) - Tuesday, 26 November 2013, 15:27 GMT
It seems no one works on bluedevil nowadays (last commit was back in June), that's why there's no _proper_ bluez5 support. I guess archlinux maintainters want to drop bluez4 from the repo, that's why they decided to take completely non-tested libbluedevil/bluedevil from git and package it.
Comment by Harshad Srinivasan (harshad1) - Tuesday, 26 November 2013, 21:14 GMT
The fault is definitely in bluedevil / libbluedevil. Probably the former as bluedevil-audio is owned by bluedevil

Using bluetoothctl from a terminal to connect works perfectly.
Comment by Andrea Scarpino (BaSh) - Wednesday, 27 November 2013, 12:14 GMT Comment by Vasily Khoruzhick (anarsoul) - Wednesday, 27 November 2013, 12:22 GMT
@Andrea, ah, ok. Then I'm taking my words back and please take my apologies for a buzz. It's still under development :)
Comment by Heinrich Siebmanns (Harvey) - Wednesday, 27 November 2013, 13:45 GMT
Then why don't we just pull the actual git state? This one is broken completely. It can't get worse...
Comment by Vasily Khoruzhick (anarsoul) - Wednesday, 27 November 2013, 13:48 GMT
@Heinrich, according to PKGBUILD, we have actual git state packaged.
Comment by Tom Gundersen (tomegun) - Wednesday, 27 November 2013, 13:50 GMT
@Harvey, it can get worse: I'm unable to build the current git (so we are using a snapshot from some time ago)...
Comment by Vasily Khoruzhick (anarsoul) - Wednesday, 27 November 2013, 14:38 GMT
@tomegun, did you try to contact bluedevil developer?
Comment by Andrea Scarpino (BaSh) - Wednesday, 27 November 2013, 14:43 GMT
I did (right now) and he suggests to drop bluedevil2 (as it's not ready).
Comment by Heinrich Siebmanns (Harvey) - Wednesday, 27 November 2013, 21:23 GMT
Still segfaults with bluedevil 2.0.git3a7a27e-1:

Application: Bluetooth Audio Helper (bluedevil-audio), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[KCrash Handler]
#5 0x00007fc215c64fed in BlueDevil::Device::isPaired() const () from /usr/lib/libbluedevil.so.2
#6 0x0000000000402d2e in _start ()

Should libbluedevil be updated too?
Comment by Heinrich Siebmanns (Harvey) - Thursday, 28 November 2013, 08:46 GMT
This is a dead end for now. Same segfault with libbluedevil 2.0.gita46446f-1 and bluedevil 2.0.gitdfbf95b-1. I hope upstream gets this fixed. So no working bluetooth for KDE users atm. Are other DEs working with bluez5?
Comment by Gene (GeneC) - Sunday, 01 December 2013, 00:24 GMT
Works fine with 2 mice - so no issues here at all. (Deleted my previous comment as was due to dead mouse not BT)

gene

Comment by Thomas Loo (tloo) - Tuesday, 03 December 2013, 21:31 GMT
I also ended up with a non-working bluetooth headset after the upgrade. Got it up and running again by switching to pulseudio-git in the AUR repo. Apparently Pulseaudio 4.0 (released June 2013) don't play along well with BlueZ 5.

Edit:

OK, I was too quick on this. Just recall I did the pairing using bluetoothctl from the commandline. Trying to pair via the bluedevil-wizard isn't working - crashing. However once paired and trusted i can connect to the headset via the bluedevil systray. The bluedevil audio helper process occasionally crash though, but it does get the connection up.
Comment by Andrej Podzimek (andrej) - Thursday, 05 December 2013, 23:32 GMT
Well, bluetoothctl seems to solve the problem sometimes ... at random. I have a combined mouse/keyboard device (i.e., a mouse with a built-in presenter function) which worked fine before bluez 5.x. Now it always gets disconnected whenever it sleeps for a longer time.

The bluedevil applet doesn't work, so bluetoothctl is the only option. Unfortunately bluetoothctl connect won't work, so the only working way to make the mouse usable for a while is the following:

0) Set this in bluetoothctl:

pairable on
discoverable on
scan on

None of these ^^^ options is really necessary, but it seems to me that at least some of these options reduce the number of unsuccessful iterations mentioned in 2) below.

1) Switch the mouse to the pairing mode (blue LED blinking or the like)

2) Repeat this...

pair <Bluetooth address>
connect <Bluetooth address>

...until the mouse starts working. You may have to repeat that 5 times or even more. :-(

3) When you let the mouse go into a deeper sleep state (i.e., you don't use it for an hour or the like), you have to repeat everything again from point 0).

Well, this bug is somewhat frustrating. :-D
Comment by Andreas Radke (AndyRTR) - Friday, 06 December 2013, 14:04 GMT
Bluetoothctl must allow to properly connect a device. Please contact upstream devs in bluez or bluez-users IRC channel and report this.
You should provide btmon and bluetoothd logs.

I have similar issues wit my devices but haven't found time to report it so far.

Anyway bluetoothctl issues are not bluedevil related and somewhat offtopic here.
Comment by Joseph Yaworski (jyaworski) - Wednesday, 11 December 2013, 04:32 GMT
Just to note:

I can connect to my headset using bluetoothctl and the instructions on the wiki[1] in KDE, but not using Bluedevil. My microphone doesn't work (it doesn't even show up in bluetoothctl), but that appears to be on bluez and not bluedevil.

https://wiki.archlinux.org/index.php/Bluetooth_Headset
Comment by Andrej Podzimek (andrej) - Wednesday, 11 December 2013, 12:25 GMT
Today my mouse started working normally (i.e., connecting automatically) and I managed to pair my headset again (without a crash). I think this could be related to the recent overall KDE update.
Comment by Heinrich Siebmanns (Harvey) - Wednesday, 11 December 2013, 16:08 GMT
Lucky you! Still crashing here. Do you use pulseaudio from AUR or the one in the repos?
Comment by Andrej Podzimek (andrej) - Wednesday, 11 December 2013, 16:13 GMT
From the repos. But I've just noticed that Bluetooth doesn't work on one of my other machines with the same ArchLinux setup. That's strange. There's a different mouse (with a built-in presenter, i.e., a virtual keyboard) and a different USB dongle. I'm not sure how much this problem is hardware-related though. And sadly I haven't had a chance to test the headset on the other machine thus far. The only thing I can say that it started to work again on my laptop for some reason.
Comment by eduardo (aberkoke) - Wednesday, 11 December 2013, 16:56 GMT
Same crash here. In my case with samsung bluetooth speakers. I use kde with bluedevil but bluetoothctl also fails. Pulseaudio-git doesn't solve the problem.
Comment by Thomas Loo (tloo) - Friday, 13 December 2013, 15:54 GMT
I use quite a few devices and once paired and trusted with bluetoothctl, they will automatically (with exceptions, see below) reconnect when in range. That said, I believe this works since no bluedevil is involved. Bluedevil is currently utterly broken with Bluez 5.

- Logitech diNovo kbd - OK
- Logitech MX1000 mouse - OK
- Cheapo Bluetooth Headset - OK (using pulseaudio-git)
- Random BT Audio Receiver #1 and #2 - works but sometimes need a manual bluetoothctl connect command



To pair and trust a new device, I need to do the following:

$ bluetoothctl

[bluetooth]# power on
Changing power on succeeded
[bluetooth]# agent on
Agent registered
[bluetooth]# default-agent
Default agent request successful

# Power on device here in pairing mode...

[NEW] Device 00:02:5B:01:3B:B1 SX-907C (a headset)
Request PIN code
[agent] Enter PIN code: 0000
[CHG] Device 00:02:5B:01:3B:B1 UUIDs has unsupported type
Authorize service
[CHG] Device 00:02:5B:01:3B:B1 UUIDs has unsupported type
[CHG] Device 00:02:5B:01:3B:B1 Paired: yes
[agent] Authorize service 0000110d-0000-1000-8000-00805f9b34fb (yes/no): yes
[CHG] Device 00:02:5B:01:3B:B1 UUIDs has unsupported type
Authorize service
[agent] Authorize service 0000110c-0000-1000-8000-00805f9b34fb (yes/no): yes
[bluetooth]# trust 00:02:5B:01:3B:B1
[CHG] Device 00:02:5B:01:3B:B1 Trusted: yes
Changing 00:02:5B:01:3B:B1 trust succeeded
[bluetooth]# connect 00:02:5B:01:3B:B1
[bluetooth]# quit
Comment by Heinrich Siebmanns (Harvey) - Friday, 13 December 2013, 16:38 GMT
Thomas,
this works with pulseaudio from the repos as well. Just connected my headset again (after deinstalling libbluedevil and bluedevil from my system)
Comment by David Bentham (db260179) - Tuesday, 17 December 2013, 22:16 GMT
Hi Guys/girls,

Just install bluedevil1 this will install the previous version of bluedevil - which works.

Well this is the case on Manjaro. Unfortunatley Manajaro guys relised that.
Comment by Heinrich Siebmanns (Harvey) - Saturday, 21 December 2013, 17:32 GMT
With todays updates bluedevil 1:2.0rc1-1 and libbluedevil 1:2.0rc1-2 my headset works from kde again. Yeah!

Loading...