Secure Simple Pairing dialogs not implemented yet

Bug #1415509 reported by Michael Zanetti
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
ubuntu-system-settings (Ubuntu)
Fix Released
High
Matthew Paul Thomas
ubuntu-system-settings (Ubuntu RTM)
New
Undecided
Unassigned

Bug Description

Right now, only Bluetooth legacy pairing (and I think SSP - JustWorks) is supported by the system settings. That means, newer keyboards, requiring Secure Simple Pairing with DisplayPin/EnterPin modes can't be paired from the ui.

This is the dialog that's missing on the touch version of system settings in order to pair "newer" keyboards: http://i.imgur.com/TetqbWJ.png

At the moment, it is required to use bluez-simple-agent from commandline to pair such a keyboard. For completeness, this is the steps required to pair from command line:

* put keyboard into discovery mode
* hcitool scan
* bluez-simple-agent hci0 <device-addr>
* now bluez-simple-agent will instruct you to enter that pin, like the missing dialog should do
* qdbus --system org.bluez /org/bluez/hci0/<device-addr> org.bluez.Input.Connect()
* Now go to the system settings app, and check the "Connect automatically when detected" box

Tags: bq

Related branches

Will Cooke (willcooke)
Changed in ubuntu-system-settings (Ubuntu):
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
Revision history for this message
Sebastien Bacher (seb128) wrote :

Does anyone has a recommendation for a cheap bluetooth device supporting ssp pairing? Googling it seems that the microsoft "Wedge Mobile Keyboard" does, what are others testing with?

Changed in ubuntu-system-settings (Ubuntu):
importance: Undecided → High
Revision history for this message
Michael Zanetti (mzanetti) wrote :

I'm quite happy with this one: http://logitech.com/k480

Will bring it to the sprint. You can give it a try if you want.

Changed in ubuntu-system-settings (Ubuntu):
assignee: Canonical Desktop Team (canonical-desktop-team) → Matthew Paul Thomas (mpt)
Revision history for this message
Sebastien Bacher (seb128) wrote :

I did a first implementation, using the current desktop design since we don't have a new design yet, merge request attached to the bug, feedback is welcome

Changed in ubuntu-system-settings (Ubuntu):
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-system-settings - 0.3+15.04.20150209-0ubuntu1

---------------
ubuntu-system-settings (0.3+15.04.20150209-0ubuntu1) vivid; urgency=medium

  [ CI Train Bot ]
  * Resync trunk

  [ Mathieu Trudel-Lapierre ]
  * [bluetooth] Display address for device in main list if name hasn't
    been discovered yet.

  [ Sebastien Bacher ]
  * security-privacy: display the password mismatch warning when the new
    text and the confirmation have the same length and different
    content, without requiring for the user to hit the validation button
  * security: use new i18n.ctr rather than qsTr which doesn't use
    gettext (LP: #1418537)
  * bluetooth: use the correct signature for the DisplayPasskey callback
  * bluetooth: implement simple secure pairing dialog (LP: #1415509)
 -- Ubuntu daily release <email address hidden> Mon, 09 Feb 2015 15:47:11 +0000

Changed in ubuntu-system-settings (Ubuntu):
status: In Progress → Fix Released
tags: added: bq
Revision history for this message
Nephilim1973 (nephilim1973-e) wrote :

@ Michael...

Infortunatelly, my MEDION keyboard generates a random 6-digit PIN and I am not able to see this PIN via "bluez-simple-agent" on commandline. Any suggestions ?

Regards

Revision history for this message
Michael Zanetti (mzanetti) wrote :

hmm... bluez-simple-agent still should show the pin... It might be a bit hidden between some other output though.

Revision history for this message
Nephilim1973 (nephilim1973-e) wrote :

$ hcitool scan
Scanning ...
 90:7F:61:8E:B6:55 Medion BT Keyboard
phablet@ubuntu-phablet:~$ bluez-simple-agent hci0 90:7F:61:8E:B6:55
/usr/bin/bluez-simple-agent:123: PyGIDeprecationWarning: MainLoop is deprecated; use GLib.MainLoop instead
  mainloop = GObject.MainLoop()
RequestPinCode (/org/bluez/828/hci0/dev_90_7F_61_8E_B6_55)
Enter PIN Code:

--> No PIN code :-(

Revision history for this message
Michael Zanetti (mzanetti) wrote :

In which case I would think you need to enter one here, and then enter the same on the keyboard, followed by pressing the enter key. Anyhow, this bug report is not about how to use bluez-simple-pairing. Please use the ubuntu-phone mailing list or one of our IRC channels on freenode for help if you can't get it connected.

Revision history for this message
Nephilim1973 (nephilim1973-e) wrote :

Sorry, but I don't think, that this is a handling issue...

```
$ bluez-simple-agent hci0 90:7F:61:8E:B6:55
/usr/bin/bluez-simple-agent:123: PyGIDeprecationWarning: MainLoop is deprecated; use GLib.MainLoop instead
  mainloop = GObject.MainLoop()
RequestPinCode (/org/bluez/828/hci0/dev_90_7F_61_8E_B6_55)
Enter PIN Code: 1111
Release
New device (/org/bluez/828/hci0/dev_90_7F_61_8E_B6_55)
```
After this, the BT keyboard is connected for some seconds and then it automatically disconnects.

In system settings app it is not possible to reconnect, but the keyboard is a known device.

Regards.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Bug attachments

Remote bug watches

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