SakamonWeb
New
Tools
Index
Edit
Android/Keybord
<<TK-FBP017EBK>> iPhone用キーボードだがBluetooth/HIDプロファイルに対応したAndroid端末からも接続可能。 接続方法とちょっとしたチューニング例を下記に示す。 <<<接続方法(F-12C)>>> まず、TK-FBP017EBKの右上のスイッチで電源ON ((br)) するとF-12C側でデバイス検出できるようになっているので確認する。 設定 > 無線とネットワーク > Bluetooth設定 > スキャン でTK-FBP017EBKが現れる。 ((br)) 次にペアリングを行う。TK-FBP017EBKの左上のBluetoothマークのあるボタンを押してペアリングモードにして、 すかさずF-12CでTK-FBP017EBKを選択する。 そうするとPINコードの入力が促されるのでソフトウェアキーボードで「1234」と入力。 ((br)) 続いてTK-FBP017EBK側でもPINを入力。 キーボードで直接「1234」と入力後に「Enter」を押せば良い。 ((br)) ペアリングが成功すると接続されたとメッセージが表示され、キーボードからの入力が可能となる。 但し、「Delete」キーや「Ctrl+X,C,V」などは標準では利用できないようだ。 ((br)) しかし、Android(F-12C)がrook化されていれば次の手順で「Delete」キーは使えるようになる。 ((br)) <<<キーコード修正>>> キーアサインが想定と異なる場合、Linuxではキーマップファイルの書き換えで対応できる。 Android(F-12C)でも端末側のキーマップの修正で「Delete」キーを有効化できないか検討してみる。 ((br)) ネットを調べてみたところキーマップファイルは接続するキーボードによって異なることが分かった。 設定ファイルがわからなくともデフォルトのファイル(F-12Cの場合は qwerty.kl)を書き換えれば多分大丈夫。TK-FBP017EBKのキーコードは調べてないが、Linuxでのxevのようなイベント検知プログラムで調べられそう。 ((br)) 1. イベント調査アプリ 「KeyEventDisplay」というアプリでKeyEventsが調べられるようだ。KeyEventsの他にもLogcatやKernelの情報も取得できるようなので、全てにチェックをいれて実行しTK-FBP017EBKを接続すると下記のようなメッセージが表示された。 <pre> ^ Logcat: W/KeyCharacterMap( 462): Can't open keycharmap file ^ Logcat: W/KeyCharacterMap( 462): Error loading keycharmap file '/system/usr/keychars/ELECOM_TK-FBP017E.kcm.bin'. hw.keyboards.524291.devname='ELECOM TK-FBP017E' ^ Logcat: W/KeyCharacterMap( 462): Using default keymap: /system/usr/keychars/qwerty.kcm.bin </pre> キーマップファイルが無いらしい。ということはTK-FBP017EBK用のファイルは「ELECOM_TK-FBP017E.kl」と「ELECOM_TK-FBP017E.kcm.bin」となる。ならばと両ファイルをデフォルトの qwerty.kl(kcm.bin)をコピーして作成して設定ファイルの雛形とする。 ((br)) ・/system/usr/keylayout/ELECOM_TK-FBP017E.kl ・/system/usr/keychars/ELECOM_TK-FBP017E.kcm.bin ((br)) 2. 「Delete」キーコード調べ 「keyEventDisplay」を実行中にTK-FBP017EBKの「DELETE」キーを押すと下記が表示された。 <pre> ^ KeyDown: action=0 code=0 repeat=0 meta=0 scancode=111 mFlags=8 label='' chars='null' number='' ^ KeyUp: action=1 code=0 repeat=0 meta=0 scancode=111 mFlags=520 label='' chars='null' number='' </pre> 「DELETE」キーのコードは「111」のようだ。 ((br)) 3. ELECOM_TK-FBP017E.klを修正 最終行に下記を追加 <pre> key 111 DEL </pre> ((br)) 4. 確認 キーボードを再接続して「Delete」キーが機能することを確認。 バックスペースとして扱われるようで使い勝手が非常によくなった。 ((br)) ※上記の同じ方法で、CapsLockをCONTROLキーとして設定してみたが機能しない。原因不明。
Sign:
freeze
sage
Attachment
New:
Sign:
Rename
Title:
Sign: