I've just got a new ThinkOutside stowaway bluetooth keybard, actually the fourth of these I've owned now. So I know for a fact that they sometimes work, and even started a wiki page about them:
This new keyboard has trouble pairing. I put the keyboard into pairing mode, with the LED flashing. On the N900 I select "Devices", "New", "Think Outside Keyboard", then "Pair". Then I type the code into the keyboard. The N900 reports "Pairing complete" and adds it to the list of devices. But then the keyboard immediately reverts to flashing its LED, and the bluetooth icon is white.
Now, if I select "Think Outside Keyboard" from the list of Bluetooth devices and tap "Edit", it has a greyed-out "Disconnect" button. So I can't connect and I can't disconnect. That's pretty weird, right? What does it mean when a device is in this state?
As I say, this is my fourth of these keyboards. Sometimes they're branded ThinkOutside, sometimes iGo. And I have another of these keyboards at home that behaves the same way. I thought it was broken, but now I'm thinking that there could be a different version of the firmware that behaves slightly differently.
My question is: does anyone know what the greyed-out Disconnect button means, and does anyone have any suggestions for making it work?
I am now, finally, in a position to answer both of my own questions. For my own amusement if nothing else, I'll give them here.
First of all, what's it all about with the greyed out "Disconnect"? It turns out that the Bluetooth dialogs map fairly directly onto the dbus interface. The dbus interface is actually lots of interfaces. All devices have a org.bluez.Device interface. Keyboards have a org.bluez.Input interface. Headphones have org.bluez.AudioSink interface, and so on.
It turns out that the "Disconnect" method belongs to the org.bluez.Device interface, which all devices have. That's why you can always see it, no matter what kind of device. But the "Connect" method belongs to the individual device types: so there's org.bluez.AudioSink.Connect, org.bluez.Input.Connect, and so on. Presumably this is because some devices, such as headsets, can be connected in different ways: org.bluez.AudioSink.Connect to connect as stereo headphones, org.bluez.Headset.Connect to connect as a headset. But disconnecting is the same regardless of what kind of device you have, so that goes in the common interface.
Since the N900 doesn't officially support HID, it doesn't understand org.bluez.Input.Connect. So that's why it doesn't display the "Connect" button. The best it can do is display the "Disconnect" button, and grey it out since it can't be used. Lame user interface design, yes, but ultimately it's the lack of support for bluetooth keyboards that is lame.
So how to actually get the thing to connect? The best ideas so far are in this thread:
Bottom line: it's extremely finicky but it works in the end. The trick for me came down to: use fresh batteries. It's unbelievable, but the stowaway keyboards seem to require a significantly higher battery voltage to complete all the necessary handshaking than they need to re-connect an existing connection and start typing. I found 1.37V didn't work but 1.39V did. Strange but true. YMMV.
http://wiki.maemo.org/Fremantle_Blue...eyboard_Layout
This new keyboard has trouble pairing. I put the keyboard into pairing mode, with the LED flashing. On the N900 I select "Devices", "New", "Think Outside Keyboard", then "Pair". Then I type the code into the keyboard. The N900 reports "Pairing complete" and adds it to the list of devices. But then the keyboard immediately reverts to flashing its LED, and the bluetooth icon is white.
Now, if I select "Think Outside Keyboard" from the list of Bluetooth devices and tap "Edit", it has a greyed-out "Disconnect" button. So I can't connect and I can't disconnect. That's pretty weird, right? What does it mean when a device is in this state?
As I say, this is my fourth of these keyboards. Sometimes they're branded ThinkOutside, sometimes iGo. And I have another of these keyboards at home that behaves the same way. I thought it was broken, but now I'm thinking that there could be a different version of the firmware that behaves slightly differently.
My question is: does anyone know what the greyed-out Disconnect button means, and does anyone have any suggestions for making it work?