Arduino UNOの互換ボードとUSB Host Shield 2.0互換ボードをAmazonで入手。
Arduino + USB Host Shield 2.0 + USB Bluetoothドングルと、このライブラリを使うと、PS3コントローラやWiiリモコンがArduinoで使えるようになるらしいので試してみた。
PS4 controllerも対応してるらしい。
・felis-USB_Host_Shield_2.0 · GitHub
まず、Wiiリモコンの接続を試してみた。
接続できた。
ただし、接続がうまくいくBluetoothドングルとうまくいかないドングルがあるので注意。
うまくいったのはこれ。
・PLANEX BT-MICRO4
・iBUFFALO BSBT4D09BK
PS3コントローラを試そうと思ったがずっと放置してたので充電不能になってる。orz
仕方がないので有線で接続してみた。
うまくいった。
なんとかPS3コントローラの充電が出来たのでBT接続を試してみたらこちらもうまく行った。
ただし、接続がうまくいくBluetoothドングルとうまくいかないドングルがあるので注意。
うまくいったのはiBUFFALO BSBT4D09BK 。(PLANEX BT-MICRO4は試していない)
メモ:How to Connect a PS3 controller to an Arduino with a USB host shield and Bluetooth dongle
Arduino Leonardoでも試してみたが、メモリ不足で書き込めなかった。
PS3コントローラでRCサーボを動かしてみた。
RCサーボの電源は写真のようにArduinoから取ると電流不足で誤動作する可能性があるので注意。
動画はこちら。こちらはちゃんとRCサーボの電源を外部からとるようにしている。
Bluetooth SPP接続、Win7の時はmbedやGR-SAKURA相手でもうまくいっていたのに、Win8にしてからうまくいかなくなってしまった。(BluetoothのドライバはWin8標準の物を使用)
SBDBTのSPPはWin8でもうまくいく。何が違うのかな。
Auduino + USBホストシールドでもWin8でBleutooth SPP接続を試したがこれもNG。
ペアリングはできるが、TeraTermから接続しようとするとエラーになる。mbedのときと同じ現象。
PS3コントローラでモータを回してみた。
Arduinoとシールドを組み合わせれば超簡単。
Adruino + Mortorシールド + USBホストシールド + USB Bluetoothドングル使用。
使用したMortorシールドはこれ。
動画はこちら。
参考リンク
・felis-USB_Host_Shield_2.0 · GitHub
・How to Connect a PS3 controller to an Arduino with a USB host shield and Bluetooth dongle