予想外に苦戦しましたが、成功しました!

wii-beryl-0

←Wiiリモコンで動かしています。ビデオカメラがないため、一応、イメージということで…


Bluetoothアダプタの認識はOKだったので、すんなり出来るのでは?と思ったのも束の間。Wiiリモコンを動作させるプログラムの導入にかなり苦戦しました。

想定していたpythonやperlのスクリプトを利用した方法はいずれも失敗して、半ばあきらめかけていたのですが、偶然にもdebianパッケージを発見。無事にWiiリモコンでマウスカーソルが動いてくれました!

ロウソクや赤外線LEDはまだ使っていないので、非常に使いづらいですけど、ここまでくれば大成功です。

とりあえず、今回は導入方法をまとめておきます。

【使用したハードウェア】
■ Ubuntu6.10(Edgy)をインストールしたPC
■ Bluetooth USBアダプタ:PLANEX BT-01UDE
■ Wiiリモコン


Wii本体は必要ありません。

【Bluetoothの認識】
ひょっとすると、デフォルトで認識してくれたかも知れませんが…。一応、いろいろな情報をもとにして、以下のパッケージを導入しておきました。

■ bluez-utils
■ libbluetooth2
■ libbluetooth2-dev
■ python-dev
■ python-xlib
■ python-xlib-doc
■ python-bluez
■ gnome-bluetooth
■ PyBluez

最後のPyBluezは下のサイトからソース(pybluez-src-0.9.2.tar.gz)をダウンロードして、展開・インストールします。

pybluez-src-0.9.2.tar.gz

$ tar zxvf pybluez-src-0.9.2.tar.gz
$ cd pybluez-src-0.9.2
$ sudo python setup.py install


これでBluetooth USBアダプタの設定は終了。きちんと認識されていれば、次のコマンドを実行すると、

$ hcitool scan
Scanning ...


という表示が出るはずです。ここで、Wiiリモコンを用意しておき「Syncボタン」を押すと、Macアドレスが表示されます。

$ hcitool scan
Scanning ...
   00:19:1D:5E:6D:4F Nintendo RVL-CNT-01


このMacアドレスは後で使いますので、メモしておきましょう。なお、Macアドレスは固有のものなので、実際には上と違う値になっていると思います。ちなみに「Syncボタン」は、裏蓋の中の電池ボックスの右下にある赤いボタンです。

【xorg.confの設定】
/etc/X11/xorg.confの内容を次のように変更します。

■ 次の4行を追加

Section "InputDevice"
Identifier "Wiimote"
Driver "evdev"
Option "Name" "Nintendo Wiimote"
EndSection


■ Section "ServerLayout"の中に次の1行を追加

  InputDevice "Wiimote" "AlwaysCore"

【Wiiリモコンのドライバ導入法】
下記のサイトからDebianパッケージを入手してインストールします。

http://www.rastageeks.org/~toots/cwiid/

必要なパッケージは下の3つです。上から順番にインストールして下さい。クリックすればインストーラが起動しますが、もしも起動しなかったらダウンロードして次の形のコマンドでインストールしましょう。

$ sudo dpkg -i ….deb

■ libwiimote0_0.5.00-1_i386.deb
■ libwiimote0-dev_0.5.00-1_i386.deb
■ wminput_0.5.00-1_i386.deb


wmgui_0.5.00-1_i386.debはインストールできませんでしたが、結果的に不要でした。

【Wiiリモコンの起動】
以上の設定が済んだら、再起動して次のコマンドを実行します。

$ sudo modprobe uinput
$ sudo wminput 00:19:1D:5E:6D:4F


ここではあらかじめ調べておいたMacアドレスを指定します。
次のような表示が出たら成功です!

$ sudo wminput 00:19:1D:5E:6D:4F
Put Wiimote in discoverable mode now (press 1+2)...


あとは表示にある通り、Wiiリモコンの1ボタンと2ボタンを押せば、リモコンの動きに合わせてマウスカーソルが動きます。Aボタンが左クリックの役割をしているようです。ボタンの割り当てについてはもう少し調べてみます。

さて、今日は秋葉原に出向いて、赤外線LEDを買ってこようと思っています。1個30円(訂正)で売っているらしい…

自由に操れるようになれば、Berylを2倍楽しむことが出来るでしょう。


ninkiblog