Unable to connect bluetooth keyboard with many different symptoms

Bug #1573351 reported by Brian Burch
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
bluez (Ubuntu)
New
Undecided
Unassigned

Bug Description

I have been struggling to pair and connect the bluetooth docking station (keyboard and touchpad) to my Asus T300 Chi transformer notepad. I run xenial 16.04 64-bit on this system, built from the beta 2 distribution and fully up-to-date at the tiime of the release candidtae freeze. I've managed to work on the system with a usb keyboard and mouse, as well as the touch-sensitive screen.

The latest version of bluez from the repository was 5.37.0ubuntu5. Running various compinations of actions under the gui and also bluetoothctl, I tried to analyse the failures with syslog and btmon. This was very frustrating because I eventually realised the software and hardware state could be corrupted, leading to unrepeatability in my tests. I still experienced what are probably timing bugs when I started from a power-off and reboot.

The keyboard would sometimes fail to pair, sometimes say it was paired when it wasn't, sometimes pair and then get into a connected/disconnected loop. Sometimes it would connect, but the keys were dead. It was too confusing to list all the different failure symptoms. On the other hand, I had no problems connecting my android phone to the system over bluetooth, so this eliminated a lot of possibilities.

Initially, I thought my symptoms were related to https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/1490349, but I eventually concluded this was not the case. I tried repeating my tests with a bluetooth usb dongle, a different machine, and several different ubuntu releases, but didn't have a system old enough to test with something that others reported to be working.

btmon traces showed the keyboard reports its capabilities included Secure Simple Pairing, but every pairing attempt which got far enough would require a pin, often without saying what it was! I currently have the original windows 10 image and so could boot it under grub2. Even though the keyboard had previously been paired to the latest windows driver, it failed to connect. I suspected the failed ubuntu attempts had replaced the pairing credentials because both operating systems use the same bluetooth adapters on the computer and keyboard. (At least this new experience meant I couldn't make the usual claim "it works with windows!) It took many attempts to get the keyboard paired. The windows driver doesn't use SSP either, because it requires its automatically-generated pin to be entered on the keyboard. I found I could force the old credentials to be deleted by powering-off the keyboard and tablet, then booting windows without the keyboard. Then hold the keyboard switch hard to the right while windows detected it, then initiate pairing and let the switch spring to its normal middle position. Windows would then display a new pin and I had to enter it on the keyboard fairly quickly, or the attempt would fail. I wrote down the pin in case I could use it with ubuntu (I later found I couldn't).

I followed bluez upwards along its distribution path. Even debian unstable ships the 5.37 package, but the latest version from the developers is 5.39. 5.38 was a large bug fix release, and 5.39 fixes some more bugs. I did a manual build and install. I used bluetoothctl and had to start the default agent before starting the pairing process. Pairing failed and I wasn't prompted for the windows pin. I erased the windows pin on the keyboard and issued the pair command - bluez gave me a new pin and after typed it on the keyboard the pairing was successful. The info command showed it had used legacy pairing (like windows), rather than SSP. The keyboard connected and disconnected a coule of times, then stayed disconnected. I tried issuing the trust command and the device status changed to paired and trusted. I despondently type a few letters on the keyboard and was astonished when they appeared on the screen! bluetoothctl displayed the connected:on message.

The keyboard is now working perfectly. The blue LED seldom comes on as I expected - it stays solidly blue with windows, but only flicks on briefly when reconnecting after inactivity. I can even use it to trigger a system resume from suspend state from the keyboard or touchpad.

Obviously, grub2 does not support bluetooth or touchscreen devices, so ubuntu is my default boot system. I can only get to windows with a usb keyboard connected.

Revision history for this message
Brian Burch (brian-pingtoo) wrote :

I'm puzzled about why this bug was attributed to usb-creator, when I specifically selected the bluez package when I opened it. I will try to update it, but if I don't have authority, will someone else do so soon?

Also, it ought to be obvious my proposed solution is to upgrade xenial to use the 5.39 version, which is claimed by its developers to significantly less buggy than 5.37.

Revision history for this message
Brian Burch (brian-pingtoo) wrote :

bug creation dialogue did not save the correct package name - presumably I didn't do something properly.

affects: usb-creator (Ubuntu) → bluez (Ubuntu)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.