8

I just bought a Microsoft Designer Mouse, specs here, (Bluetooth 4.0) and am not able to use it in Ubuntu 14.04. On the Windows 8 (same laptop computer) it works just fine.

So I've searched arround and found many people with the same issue. Apparantly the issue is that ubuntu 14.04 only has BlueZ 4.101 as of now, and it would take BlueZ 5.x to support Bluetooth 4.0 Low Energy Device, which seems to be hard to install. There's a thread running from April 2013 to recently on the issue, stating that it's hard to incorporate Bluez 5.x on Ubuntu.

Some people gave some non working suggestions, including the installation of a PPA that lead to me having to reainstall ubuntu (bluetooth wouldn't turn on and ubuntu would hang indefinitly on shutdown):

So isn't there a solution at all? I can't use Bluetooth 4.0 on Ubuntu 14.04 LTS, although the hardware supports it? Is there another Linux distribution that would support Bluetooth 4.0 (Like Mint or someother)?

No one said explicitly that there isn't a solution, probably because there are stuff a very experienced user could do according to his own case.

Seems like a thumbs down for ubuntu.

Thx in advance.

A. Vieira
  • 181
  • 1
  • 1
  • 2

4 Answers4

4

I got the Microsoft Designer Mouse working on Ubuntu 14.04 with the following PPAs and package installs:

sudo apt-add-repository ppa:vidplace7/bluez5
sudo apt-add-repository ppa:blueman/ppa
sudo apt-get update
sudo apt-get install bluez
sudo apt-get install blueman

Then you need to restart blueman just incase.

killall blueman-manager
blueman-applet &
2

Update: WARNING - for some users such as @kalamalka-kid below, the following has broken their system settings completely. Proceed with caution.

I have some good news - I managed to get the "Low Energy" Bluetooth 4.0 Microsoft Designer Mouse working with my DELL XPS 13 laptop (broadcom bluetooth chip) reliably after 1.5 days of full time hacking and hair-tearing. Yay for Linux! :D

Documenting it here so somebody in the same situation doesn't have to go through the same hair-tearing.

First, I followed the instructions at the LTS Enablement stack page to get a nice new kernel 3.19 running on 14.04.

  • sudo apt-get install --install-recommends linux-generic-lts-vivid xserver-xorg-core-lts-vivid xserver-xorg-lts-vivid xserver-xorg-video-all-lts-vivid xserver-xorg-input-all-lts-vivid libwayland-egl1-mesa-lts-vivid
  • I also had to do apt-get dist-upgrade after that to actually install the new kernel packages.

This broke my Bluetooth completely because I have a Broadcom chip that requires custom firmware (see below for fixing that).

I uninstalled all of the Bluetooth stuff from my laptop to start fresh. The bluez package from the vidplace7/bluez5 PPA hung for me on uninstall. I fixed this by editing /var/lib/dpkg/info/bluez.prerm before doing the uninstall command and removing the invoke-rc.d line and replacing it with echo "no bluetooth stopping!". That worked and the package will uninstall with the following steps:

  • dpkg -l | grep blue will give you a list of all bluetooth packages.
  • apt-get remove --purge bluez bluetooth blueman... with all of those packages listed will uninstall everything.

Once all of the bluetooth packages are removed, remove the broken bluez PPA:

  • sudo add-apt-repository --remove ppa:vidplace7/bluez5

Then add the following PPA, which has a non-crashing version of bluez:

  • sudo apt-add-repository ppa:timchen119/bluez5-trusty
  • apt-get install bluez

Because the Dell XPS 13 has a broadcom chip it requires a custom firmware. The following firmware installation steps are only necessary for that chip. I detected the problem because of the following lines in my syslog:

kernel: bluetooth hci0: Direct firmware load for brcm/BCM20702A0-0a5c-216f.hcd failed with error -2
kernel: Bluetooth: hci0: BCM: patch brcm/BCM20702A0-0a5c-216f.hcd not found

So I had to follow these instructions to get the firmware installed again.

  • Get the driver from Microsoft here.
  • Open it with cabextract.
  • Convert the file and save to the firmware location: hex2hcd BCM20702A1_001.002.014.1443.1572.hex /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd - note that for the LTS kernel 3.19 only that version of the firmware will work. I tried a later version first and it did not work.
  • Make sure you power your laptop off and back on again don't just reboot.

Once you are up and running again bluetooth should work and you can install e.g. blueman to connect to the mouse. You can also manually connect to the mouse on the command line like this (first press the button underneath for 3 seconds to put it in pair mode):

# bluetoothctl 
[NEW] Controller XX:XX:XX:XX:XX:XX YourDevice [default]
[bluetooth]# agent KeyboardOnly 
Agent registered
[bluetooth]# default-agent 
Default agent request successful
[bluetooth]# scan on
Discovery started
[CHG] Controller XX:XX:XX:XX:XX:XX Discovering: yes
[NEW] Device YY:YY:YY:YY:YY:YY Designer Mouse
[bluetooth]# pair YY:YY:YY:YY:YY:YY
Attempting to pair with YY:YY:YY:YY:YY:YY
[CHG] Device YY:YY:YY:YY:YY:YY Connected: yes
[CHG] Device YY:YY:YY:YY:YY:YY Paired: yes
Pairing successful
[bluetooth]# connect YY:YY:YY:YY:YY:YY
[CHG] Device YY:YY:YY:YY:YY:YY Connected: yes

It took a long time to find out the issue with the bluetooth firmware because the only symptom was the messages org.bluez.Error.AuthenticationFailed and org.bluez.Error.AuthenticationCancelled when I tried to pair or connect.

0

I managed to kill my 14.04 laptop following very similar answers, so please beware when trying to "undo" any packages you installed here. Please don't remove the bluez package! (Only in hindsight do I realise this was a really really stupid thing to do.)

However, I did manage to get my keyboard and mouse to work really nicely in 16.04 and you can see my answer here: https://askubuntu.com/a/1023532/815371

Dagmar
  • 213
0

Thanks for your answers. This worked for me ...

. apt-add-repository ppa:vidplace7/bluez5
. apt-add-repository ppa:blueman/ppa
. apt-get update
. apt-get install bluez
. apt-get install blueman
. apt-get install bluez-compat

... but additionally I must run bluez in experimental mode. Replace /usr/sbin/bluetooth by your own script:

#!/bin/sh
bluetooth -E

Now I can connect with the blueman-applet mouse and keyboard.

Any ideas how to connect automatically on startup or without using blueman (just command line)?

Hans
  • 1
  • 1