2012年3月15日木曜日

Android携帯でIOIO(よーよー)ボードを動かす

Arduino(アルデュイーノ)で遊んでいると、リモート(遠隔)に何か(例えばロボット)を動かしたくなります。そんな折、「IOIO(よーよー)ボード」を見つけました。スイッチサイエンスで5,000円弱で手に入ります。

このIOIOは、Android(アンドロイド)携帯のアプリから制御できます。基本的には双方のUSBボートをつないで制御するのですが、Bluetoothに換えることが出来る!ということを知り、これに挑戦することにしました。

結果は見事にアンドロイド携帯からBluetoothを通じてIOIOボードを制御することに成功しました。以下、この経緯を紹介します。

1)アンドロイド携帯
私の所有するアンドロイド携帯は「HTC desire」で少々古いのですが、いわゆる野良ROMである「MildWild V-2.9.5」に入れ替えAndoroidバージョンは「2.3.7」に上げています。元々はSIMフリー機として英国から直輸入したもので、昨今はiPhone4Sの使い勝手が良いのでお役ご免になっていましたが、この度再び登場させることが出来ました。
Androidアプリは、以前、少しいじったことがあり、今回は紹介されていたデモアプリに少し手を加えるだけで使うことができました。

2)IOIO
IOIOボードは購入したてはハダカの状態で、電源さえつなぐことが出来ません。この基盤にヘッドソケットをハンダ付けする必要があります。私は基盤の裏側に電源ソケットを付け、15VのDCアダプタで給電しています。

なお、初期のIOIOボードではファームウエアが古く、Bluetoothを扱えないものだったようですが、スイッチサイエンスで購入したものは最新のファームウエアが入っていることを確認いたしました。


3)Bluetoothドングル(アダプタ?)

左図は、左から
     2.0
     2.1
     3.0

最も苦労したのが、Bluetoothドングルでした。
「ドングル」と「アダプタ」とはどう違うのか?未だにわからないのですが、最近売っている Bluetooth 3.0 や少し前に売られていた 2.1 などはアダプタと名前がついています。今は近所の量販店で聞いても見つからない Bluetooth 2.0 はドングルと呼ばれているようです。
私は、国内で購入できる「3.0」と「2.1」を試したのですがうまくいきませんでした。そこで何とか「2.0」(約500円)を探し出し接続に成功しました。どうやらIOIOボードに入っているファームウエアは「2.0」なら認識するようです。動作実績に上げられている「3.0」もあるのですが、発売元が中国か香港のようで、値段は安いが手に入れるには数週間かかりそうです。

4)デモビデオ

デモビデオです