SET BT BDADDR 00:07:80:4b:bb:ca SET BT NAME WT32-A SET BT CLASS 000580 SET BT IDENT BT:47 f000 4.0.0 Bluegiga iWRAP SET BT LAP 9e8b33 SET BT PAGEMODE 4 2000 1 SET BT PAIR 04:0c:ce:e2:9c:f7 94666d1b9b40cf2e9b139e402ef1787f SET BT POWER 4 4 4 SET BT ROLE 0 f 7d00 SET BT SNIFF 0 20 1 8 SET BT SSP 3 0 SET BT MTU 667 SET CONTROL AUDIO INTERNAL INTERNAL SET CONTROL BAUD 115200,8n1 SET CONTROL CD 00 0 SET CONTROL CODEC SBC JOINT_STEREO 44100 0 SET CONTROL ECHO 5 SET CONTROL ESCAPE 43 00 1 SET CONTROL GAIN 8 8 SET CONTROL MICBIAS b 0 SET CONTROL MSC DTE 00 00 00 00 00 00 SET CONTROL PREAMP 1 1 SET CONTROL READY 00 SET CONTROL VREGEN 1 00 SET PROFILE HID HID SET
iWRAP4では、HIDデバイスとしてキーボード、マウス、あるいはその複合でバイスを作ることができますが、基本的な機能のデバイスしか実現できません。詳細を説明したドキュメントが無いのですが、例えばマウスではボタン3つの基本的なマウス機能を提供するだけで、ホイール機能は実現できないようですし、キーボードについてもLEDによるロック状態表示を持たせることはできません。このあたりの機能がちゃんと追加されたWT32用のiWRAP5βが提供されるのを待っているのですが、まだ連絡が入りません。そこで今回の実験では、iWRAP4をつかってX, Y座標の変化のみをレポートすることで、画面上でマウスカーソルの表示が移動することを確認するこ実験を行ってみました。
WT32のApplication Noteの説明のとおりに、Raw形式でMouse reportを出力してみたのですが、マウスカーソルは全く動いてくれませんでした。WT32に対して送信したASCII文字はBTキーボード入力として認識されるので、Raw形式で送信しているMouse reportが正しく認識されていないようです。そこで、Mouse reportの出力形式を次のように修正してやると、マウスカーソルが動くようになりました。
0xa1 | 0x02 | buttons | x-step | y-step |
---|
ジョイスティックの傾け具合に応じて、レポートで出力するXとYの変位の大きさを変化させるのですが、大きな値を出すとマウスカーソルが大きく飛んでしまいます。違和感無く使えるようにするためには、レポートの送信間隔とともに調整してやる必要がありそうです。
こんなことをやっているうちに、注文してあったヌンチャクアダプタが届いてしまいました。今後のHDIの実験にはヌンチャクを使うようにしてやろうかと思います。