WiiリモコンでArduino(Japanino)を無線化 その1

Wiiリモコンを使い、Arduino(互換機)をPCと無線接続する実験、、、の予備調査。
本体を持ってないのに、リモコンだけ買っちゃいました(汗

Arduinoの無線化といえば、普通はXBeeなどのパーツを使います。が、今回、面白い作例があったのでチャレンジしてみることに。

参考ページ

http://www.amazon.co.jp/exec/obidos/ASIN/4274067505/tamc-22/ref=nosim/

WiiリモコンをPCで認識する

WiiリモコンはBluetoothという規格を介してPCに接続します。
Windowsの場合、「コントロールパネル>>Bluetooth>>ワイヤレスデバイスの追加」で行うことになります。ペアリングは、Wiiリモコンの1ボタン2ボタンを同時に押し、LEDが点滅した状態で行います。

今回の実験用のPCのスペックは

  • OS Windows Vista 32bit
  • Truemobile 355 Bluetoothアダプタ (本体購入時付属)
  • デバイスドライバ PCベンダ付属品 (Dell)
  • プロトコルスタック マイクロソフト(OS付属)

うまく認識してくれないときにやることリスト

  • Bluetoothコントロールパネルにて、 ペアリング済みのWiiリモコン(Nintendo RVL-CNT-01)を削除 ( 「ワイヤレスデバイスの削除」) して、 ペアリングをやりなおす
  • デバイスマネージャーにて、プロトコルスタック (Microsoft Bluetooth Enumrator)を一度無効にして、 再度 有効に。
  • PCとWiiリモコンの電源を落として、しばらく待つ。
    Wiiリモコンの電池を抜く。 これでもうまくいかないと、ちょっと泣けてきます。

PC側のプログラムを用意

いろいろと調べた結果、今回はC#用のライブラリを使用。今回、実験予定にはありませんが、多分、IronPythonからも使えると思います。

  • WiimoteLib v1.8 Beta 1
    モーションプラスを使うには、こちらのv1.8ベータが必要です
  • WiimoteLib
    モーションプラスを使わない場合は、v1.7を使うように、とのこと。

今回はC#のプログラミングにVisual C#ではなく、SharpDevelopを使用することに。
理由はサイズがコンパクトだし、動作も軽いので。

Python用のライブラリ Pywiimoteが手元の環境でうまく動かなかったので、今回は不使用。VistaになってHIDまわりの使用が変更になったことが理由みたいですが詳細不明です。

WiiリモコンとArduino (Japanino)を接続

接続用のコネクタは、ヌンチャクをつぶさないとならないみたいです。


というわけで、現在、C#でWiiリモコンと通信するチュートリアルを勉強中。Arduinoとの接続は、まだしばらく先になりそうです。

コメントを残す

メールアドレスが公開されることはありません。