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