Latest revision |
Your text |
Line 1: |
Line 1: |
- | Bluetooth keyboards are [[Fremantle_Unsupported_Bluetooth_profiles|not officially supported]] on the [[Nokia N900|N900]], that is Maemo [[Open development/Maemo roadmap/Fremantle|Fremantle]], but it is possible to get them working with some hacking. | + | Bluetooth keyboards are [[Fremantle_Unsupported_Bluetooth_profiles|not officially supported]] on the [[Nokia N900|N900]], i.e. Maemo Fremantle, but it's possible to get them working with some hacking. |
| | | |
| == Devices == | | == Devices == |
| | | |
- | {| class="wikitable sortable" | + | {| class="wikitable" |
- | |+ Bluetooth keyboards
| + | |
| |- | | |- |
| ! Device | | ! Device |
- | ! class="unsortable" | Product Link | + | ! Product Link |
- | ! class="unsortable" | Success Reports | + | ! Success Reports |
| |- | | |- |
| | iGo Stowaway Keyboard | | | iGo Stowaway Keyboard |
Line 19: |
Line 18: |
| |- | | |- |
| | Neos BluSlim Bluetooth Compact Keyboard BTK-1 | | | Neos BluSlim Bluetooth Compact Keyboard BTK-1 |
- | | Neos: [http://www.neos-world.com/] | + | | ECT: [http://www.ect.com.hk/1/en/enduser/product_details.php?id=534&category_id=66] |
| | [http://talk.maemo.org/showpost.php?p=613850&postcount=267] | | | [http://talk.maemo.org/showpost.php?p=613850&postcount=267] |
- | |-
| |
- | | Rocketfish RF-BTKB2
| |
- | | Rocketfish: [http://www.rocketfishproducts.com/pc-85-3-rocketfish-wireless-multimedia-bluetooth-keyboard-and-laser-mouse-blacksilverred.aspx]
| |
- | | [http://talk.maemo.org/showpost.php?p=659720&postcount=273]
| |
- | |-
| |
- | | Apple Wireless Keyboard
| |
- | | Amazon: [http://www.amazon.com/Apple-Wireless-Keyboard-Retail-Packaging/dp/B002TMRZOQ/ref=sr_1_1?ie=UTF8&s=electronics&qid=1277022601&sr=1-1]
| |
- | | [http://talk.maemo.org/showthread.php?p=722367#post722367]
| |
- | |-
| |
- | | Leasun Electronic Technology MP-0118+
| |
- | | [http://www.made-in-china.com/showroom/darian88/product-detailuoEmwfydbkWn/China-Bluetooth-Keyboard-MP-0118-.html] (bought off eBay)
| |
- | | [http://talk.maemo.org/showpost.php?p=730597&postcount=294]
| |
- | |-
| |
- | | Logitech Cordless MediaBoard Pro(TM)
| |
- | | Logitech: [http://www.logitech.com/en-us/keyboards/keyboard/devices/3616]
| |
- | | -
| |
- | |-
| |
- | | Freedom Universal Bluetooth Keyboard 2 (German layout)
| |
- | | Amazon: [http://www.amazon.de/Freedom-Universal-Keyboard-Smartphone-BlackBerry/dp/B004480ILA/]
| |
- | | [http://talk.maemo.org/showpost.php?p=905888&postcount=148]
| |
| |} | | |} |
| | | |
Line 46: |
Line 25: |
| | | |
| * Enable HID support as described [[Fremantle_Unsupported_Bluetooth_profiles|here]]. Note that the DisablePlugins line needs to be there, but it should not include the "input" keyword. | | * Enable HID support as described [[Fremantle_Unsupported_Bluetooth_profiles|here]]. Note that the DisablePlugins line needs to be there, but it should not include the "input" keyword. |
- | * As root, download the tar file from [http://talk.maemo.org/showpost.php?p=441444&postcount=3 here] and extract it: | + | * As root, download the tar file from [http://talk.maemo.org/showpost.php?p=441444&postcount=3|here] and extract it: |
| | | |
| sudo gainroot | | sudo gainroot |
Line 68: |
Line 47: |
| After running this command, press any key on the N900's internal keyboard, and you should be able to type numbers and symbols on the bluetooth keyboard. | | After running this command, press any key on the N900's internal keyboard, and you should be able to type numbers and symbols on the bluetooth keyboard. |
| | | |
- | The Freedom Universal Keyboard 2 runs with EXTKBD (see below) version 1.3 out of the box. Just install EXTKBD via program manager and you will find the setup in "personalise" of the "settings" tool.
| + | == References == |
- | Other keyboards will run as well.
| + | |
| | | |
- | == Setting Layout Automatically == | + | General procedure: [http://talk.maemo.org/showthread.php?p=490777#post490777] |
| | | |
- | There is a python script written by jakoleh which seems to work. Copy it out of this post and save it as bluetooth-keyboard.py:
| + | DisablePlugins is required: [http://talk.maemo.org/showpost.php?p=385463&postcount=3] |
| | | |
- | http://talk.maemo.org/showthread.php?p=525721
| + | Installing the tarball: [http://talk.maemo.org/showpost.php?p=441137&postcount=1] |
- | | + | |
- | You need to set the KEYBOARDNAME, DEVICE, MODEL and LAYOUT parameters for your keyboard. To do this go to the /var/lib/bluetooth directory. There should be a directory there named after your device's bluetooth ID, such as "08:00:69:02:01:FC". Change into that directory and find your keyboard in the file called "names". For example:
| + | |
- | | + | |
- | 00:03:C9:3D:7D:B0 Think Outside Keyboard
| + | |
- | | + | |
- | In this case, you would set
| + | |
- | | + | |
- | KEYBOARDNAME = "Think Outside Keyboard"
| + | |
- | DEVICE = "dev_00_03_C9_3D_7D_B0"
| + | |
- | | + | |
- | The MODEL and LAYOUT depend on your keyboard. For a standard 105-key layout, you might do:
| + | |
- | | + | |
- | MODEL = "pc105"
| + | |
- | LAYOUT = "us"
| + | |
- | | + | |
- | Now open a terminal and run the command in the background like this:
| + | |
- | | + | |
- | python bluetooth-keyboard.py &
| + | |
- | | + | |
- | Now whenever you connect the keyboard it should automatically set the correct layout. It should also give you a helpful yellow notification message saying that the keyboard connected.
| + | |
- | | + | |
- | == Starting daemon script automatically ==
| + | |
- | | + | |
- | Put this in /etc/init.d/bluetooth-keyboard. You need to replace bluetooth-keyboard.py with the absolute path.
| + | |
- | | + | |
- | <source lang="bash">
| + | |
- | #!/bin/sh
| + | |
- | | + | |
- | case "$1" in
| + | |
- | start)
| + | |
- | python bluetooth-keyboard.py &
| + | |
- | ;;
| + | |
- | stop)
| + | |
- | kill $(ps ax | grep 'python bluetooth-keyboard.py' | grep -v grep | awk '{print $1}')
| + | |
- | ;;
| + | |
- | restart)
| + | |
- | echo "$0: not implemented"
| + | |
- | exit 1
| + | |
- | ;;
| + | |
- | force-reload)
| + | |
- | echo "$0: not implemented"
| + | |
- | exit 1
| + | |
- | ;;
| + | |
- | *)
| + | |
- | echo "Usage: $0 {start|stop}"
| + | |
- | exit 1
| + | |
- | ;;
| + | |
- | esac
| + | |
- | </source>
| + | |
- | Make it executable and hook into init system
| + | |
- | | + | |
- | chmod a+x /etc/init.d/bluetooth-keyboard
| + | |
- | update-rc.d bluetooth-keyboard start 99 1 2 3 4 5 . stop 99 0 6
| + | |
- | | + | |
- | == Next steps ==
| + | |
- | | + | |
- | It would be nice to build a package to do all of this:
| + | |
- | Here is first version of packaged version: [http://talk.maemo.org/showpost.php?p=794981&postcount=319 BlueKlase].
| + | |
- | | + | |
- | Another approach is the package "[http://maemo.org/packages/view/extkbd/ extkbd]" (currently in [[Extras]]) which simplifies the usage of external keyboards. It has an UI to select keyboard layout and language. See [http://talk.maemo.org/showthread.php?t=65577 this post] for some usage instructions on extkbd.
| + | |
- | | + | |
- | == References ==
| + | |
| | | |
- | * General procedure: [http://talk.maemo.org/showthread.php?p=490777#post490777]
| + | Special copy commands: [http://talk.maemo.org/showthread.php?p=490777#post490777] |
- | * DisablePlugins is required: [http://talk.maemo.org/showpost.php?p=385463&postcount=3]
| + | |
- | * Installing the tarball: [http://talk.maemo.org/showpost.php?p=441137&postcount=1]
| + | |
- | * Special copy commands: [http://talk.maemo.org/showthread.php?p=490777#post490777]
| + | |
- | * Script to automatically run the setxkbmap command: [http://talk.maemo.org/showthread.php?p=525721#post525721]
| + | |
| | | |
- | [[Category:Bluetooth]]
| + | Script to automatically run the setxkbmap command: [http://talk.maemo.org/showthread.php?p=525721#post525721] |
- | [[Category:Fremantle]]
| + | |