suin.io

Apple Wireless Keyboard トラブル&Tips

suin2008年12月29日

Bluetoothキーボードがほしくて

最近、Bluretoothに凝っているsuinです。

マウス、オーディオレシーバに続いて、キーボードもBluretooth化したかったので、AmazonでBluretooth対応のキーボードを探していました。

数あるBluetoothキーボードのなかで、どれにするか迷いましたが、デザイン重視でApple Wireless Keyboard (US)を買うことにしました。

Apple Wireless Keyboardの中でも、JIS配列とUS配列があって、使い慣れたJIS配列にするか、そうではないUS配列にするかも悩まされました。

いろいろ悩んだ結果、せっかくデザインがすばらしいので、ごちゃごちゃしたJIS配列を買ったら負けだなと思い、アルファベットだけがシンプルに刻まれたUS配列のキーボードを選択しました。

私のマシンはWindows Vista(SONY VAIO Type F)でmac用に作られたキーボードだけに、本当に買って問題ないか、おっかなびっくりなところもありました。

US配列として認識されない問題

最初からトラブルが発生しました。

US配列のApple Wireless Keyboardなのですが、いざペアリングしてキーをたたいてみると、どうやらJIS配列として認識されているらしく、キーボードに印字されている記号と実際入力される記号が異なり、かなり使いにくい状態になってしまいました。

Googleで、「キーボード US配列 変更」などで検索したら、情報が出てきました。

なんでも、レジストリを修正すれば、US配列として認識してくれるらしいです。

  1. スタート → ファイル名を指定して実行 → regedit
  2. 次の場所を開く。
    KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
  3. 次のキーを変更する。
    名前 種類 データ
    OverrideKeyboardIdentifier REG_SZ PCAT_101KEY
    LayerDriver JPN REG_SZ kbd101.dll

  4. リブートする。

これでApple Wireless Keyboardが英語配列のキーボードとして使えるようになりました。

と、思いきや、VAIOのキーボードまで英語配列になってしまいました。

これは使いにくいと思い、あちこち探したら「USJP Pro for Vista 32bit - 英語配列エミュレーションドライバ」というシェアウェアを見つけました。

日本語(JIS)配列のノートPCで、PS/2ドライバを入れ替えることなく、英語(US)配列をキートップ通りに入力可能にします。

2000円ほどで使えるようになるので、購入を検討しましたが、よくアナウンスを読んでみたら、Bluetoothキーボードは別料金を支払って対応してもらう必要があるとのこと、もっぱら私の場合は、Bluetoothアダプタを内蔵しているタイプだったので、このソフトでは対応できないということがわかりました。

Bluetoothデバイス個別対応について
価格改定としてUSBキーボードのみの利用者に開発費用をいただかず、少数のBluetooth対応希望者に個別にいただく事といたしました。製品価格と別に対応作業・ユーザサポート費用を頂き、対応させていただきます。インストーラでデバイス情報を取得してサポートページからお問い合わせください。
(重要)PCにBluetoothアダプタが内蔵して専用のスタックドライバがあらかじめインストールされている場合ご対応差し上げることができません。本製品は標準ドライバで動作している場合のみインストール/動作いたします。

USJP Proをあきらめ、もう少しググってみると、Windowsではキー配列の異なるキーを共存できないという情報が。

ところが、一方ではWindowsXPからは配列の異なるキーボードを共存することができるというTipsが出てきたので、そちらを信じてみることにしました。

ここではVistaでデバイスインスタンスIDを探す手順を紹介します。

  1. スタート → コントロールパネル → デバイスマネージャを開く。
  2. 「キーボード」の+を開き、Bluetoothで接続された「HIDキーボードデバイス」を選択し、右クリック「プロパティ」。
  3. プロパティが開いたら詳細タブを開き、「プロパティ」のプルダウンから「デバイス インスタンス パス」を選択。
  4. そこに表示された文字列がデバイスインスタンスIDになる。
  5. その後のレジストリを変更するのは、配列の異なるキーボードを同時に使う方法 - Gamer's Gadget Memo:で説明されている手順で行う。

再起動後、これでApple Wireless KeyboardだけUS配列で使えるようになりました。

日本語入力切り替えが遠い?

US配列を使ってみての感想ですが、いくらローマ字入力でもずっとJIS配列だった人にとって、ある日突然US配列に乗り換えることはそんなに楽ではないです。

特に、記号の配置はJIS配列とUS配列で全然違います。

最初は、全角半角の変換の仕方もわかりませんでした。ググったら、Alt+`でできるということがわかりました。

Alt+`だとさすがに遠いので、もう少し便利にならないかとググってみたところ、macでの日本語入力変換キーである「コマンド + スペース」をWindows環境でも再現するソフト「CmdSpace」に出会った。

ずっと、macを使ってこなかった私にとっても、「コマンド+スペース」で日本語入力を切り替えるキーのほうがしっくりきました。

など、「CmdSpace」はコマンドキーだけでなく、AltやControlにも割り当てることができるので便利です。

これで日本語入力の切り替えで困ることがなくなりました。

Windows環境でももっと使いやすく!

Apple Wireless Keyboardには、FnキーやEjectキーなどがあるのですが、Windows環境ではこれらのキーが使えないのが残念なところです。

そんな難点を一挙に解決してくれるユーティリティが、Apple Wireless Keyboard Helperです。

Apple Wireless Keyboard(アルミニウム型)のFnキーやEjectキーなどの特殊キーをWindows上で扱えるようにするためのヘルパーアプリケーションです。

通常Apple Wireless KeyboardをWindows コンピュータに接続してもFnキーやEjectキーを利用することはできません。 そんなとき、このアプリケーションを起動しておけば(標準の設定で)Fn+F7,F8,F9を押すことでiTunesを操作でき、Fn+F10,F11,F12で音量を操作できるようになります。

Fnキーとの組み合わせなら、自分で設定を変更することもできます。

ちなみに設定ファイルはPythonで書かれています。

Pythonをさわってみるのは初めてだったのですが、Google先生に教わりながら、設定をいじってみました。

なお、設定ファイルは、/Scripts/Default.py.sampleをコピーして、好きな名前にリネームします。

拡張子が.pyであれば、どのようなファイル名でもよいみたいです。

ファイルを編集するには、EmEditorなどのエディタを使います。

まず、手始めにFn+F5には何も処理が割り当てられてなかったので、Firefoxをたちあげる処理を追加してみました。


def OnDown_Fn_F5():
  Process.Start("S:/Suin/applications/_app/FirefoxPortable3/FirefoxPortable.exe", "")

つぎに、Ejectキーは使わないので、Windowsでいう「Delete」キーを割り当てました。


def OnDown_Eject():
  Util.SendInput(Keys.Delete)

Apple Wireless Keyboard Helperなら、ソースを読んだ限りFnキーとの組み合わせなら、どのキーでもイベントを設定できるようなので、CmdSpaceで対応した日本語入力切り替えを、Apple Wireless Keyboard Helperだけで実装してみました。


def OnDown_Fn_Space():
  Util.SendInput(Keys.KanjiMode) # IME on/off

上の関数は、もとの設定ファイルには無いので、自分で追加します。

これで、Fn+Spaceで日本語入力切り替えができるようになりました。

最後に、Apple Wireless Keyboard Helperをスタートアップに追加して完了です。

キーが押しっぱなし状態になるトラブル

一難去ってまた一難です。

順調に使えていたApple Wireless Keyboardでしたが、ときどき、キーが押しっぱなしになるようになりました。

タイピングしていると、接続が切れるのか、フリーズするのか知りませんが、「あああああああああああああ」や「っっっっっっっっっっs」などの文字を延々と入力し続けるようになるのです。

そのような状態になってしまうと、Apple Wireless Keyboardのどのキーを押しても止めることができません。

その場は、Apple Wireless Keyboardの電源を切って、再度接続し直すことで対処できました。

何度もこのような現象が起こるので、Googleで「キーボード 押しっぱなし」などで探してみたら、そのような問題はキーボードのハード的なトラブルなので修理する以外に無いという書き込みを見つけました。

Apple Wireless Keyboardは買ったばかりだったので、初期不良と考え、Appleのサポートセンターに問い合わせてみました。

Appleのお姉さんが電話に出て、対応してくれましたが、Apple Wireless Keyboardが押しっぱなしになるトラブルの問い合わせが今までなかったのか、かなり戸惑った様子でした。

専門スタッフに問い合わせるためにかなり待たされましたが、結果的に初期不良ということになり、交換にて対応してくれました。

交換で解決できればそれでよかったのですが、交換して届いたキーボードでも結局また同じトラブルが発生したのです。

初期不良とばかり思っていたこのトラブルですが、2回も同じトラブルが起こったので、Apple Wireless Keyboardに限ってこのようなトラブルが起こった報告がないか検索してみました。

すると、どうやらハード的なトラブルというより、Bluetoothスタックとの相性が合わないと、起こる模様です。

上のブログによると、「Bluetooth Stack for Windows by Toshiba」というBluetoothスタックをアンインストールして、Windows標準のスタックを使えばいいとのこと。

ところが私のマシンはVAIOで、Bluetooth Stack for Windows by Toshibaというスタックは使ってない様子。

よく探してみたら、私のマシンは「WIDCOMM」のBluetoothスタックを使っていたので、これをアンインストールしてみました。

それ以来、キーが押しっぱなしになる問題は起きていません。

いくらmac専用のキーボードであっても、Bluetoothスタックとの相性テストくらいしておいてほしいものです。

Appleのサポートフォーラムでも話題にあがってるんですから。

余談

Apple Wireless KeyboardのUS配列で満足だけど、KOR版(ハングル)でもよかったな~。

JIS配列ほどごちゃごちゃしていないし、US配列とほとんど変わらないし、個人的に韓国語を打ち込む機会も多いし。

ちなみに、韓国でこのKOR版を買うと8万ウォンらしい。

今は信じられないほどのウォン安だから、日本円にして5600円ほど。

日本で買うのの半額ってどういうことよ。

参考

RELATED POSTS