2006年 12月 22日

Wiiリモコン

posted in Computer, Game, 工作 |

自らのライトセーバーを作るべく、Wiiリモコンをコントロールするプログラムを作成中…
出来合いのドライバを使おうかと思ったけど、どうせなら複数認識させたいし、中身どうなってるのかようわからんので、DDKも何故かインストール済みだったので一から作ってみることに。

WiiリモコンはBluetoothのHIDデバイスになっていて、要はUSBのゲームコントローラーなんかと感覚は一緒つーことです。とはいっても、USBも装置側のファームウェアの方は触ったことあったけど、ホスト側のドライバは経験無し…
って思ってたけど、HIDデバイスってドライバ名取ってくれば普通にWin32APIのWriteFileとかReadFileとかで突っつけば良い訳なのね。

っていうわけで、久々にC++でもってmultimapにHIDデバイス名突っ込むクラスをこしらえ、そこからHIDデバイス入出力をするクラスをこしらえて、WiiリモコンのVendorIDとProductID突っ込んでみてアレコレやってみるが一向に反応なし…
なにやら時々値を返してくることもあるけども、全く意味不明。。。
やっぱJediの修行をもっと積まねばライトセーバーは作れないのだろうか…

そんなこんなで3日ほど経った今日。とあるページにて、「WindowsのGenericのBluetoothのプロトコルスタックはバグってるっぽいよーん」なんて書き込みが…(汗
そういや、前に出来合いのプログラムでライトセーバー試したときは別マシンで、そっちにはBTアダプタ付属のドライバが入れてあった…。GenericドライバでWirelessMightyMouse動いていたから安心してた…

早速ドライバ入れなおしてみたら、すんなり動きやんの…(汗
ああ、俺の3日間…

現在 “Wiiリモコン” には2 件のコメントがあります。

  1. 1 2006/12/25(月曜日) 22:12, SANZON :

    R&Dおつす :p

    ハードウエアを弄れる人=頭いい と無条件に思ってしまいますなぁ

  2. 2 2006/12/25(月曜日) 23:36, morisoba :

    重工なのにねw
    遊んでばかりであんまし進んでおりませぬ…:oops:
    リモコン複数認識、ボタン、加速度、電池残量、LED、振動制御あたりまではクラス化しました。
    スピーカーはまだあんまり解析されてないっぽいですね、、、って他人任せ(汗
    正月休みに少しいじってみようかな…

コメントをどうぞ!