Galileo7 ADK main board(続)

先日のADKボードの件Nexus Sで試しても、XOOM同様に処理が重い。原因がAndroid端末やアプリでは無いと分かったので、Arduino側のスケッチを再点検しました。原因はこのスケッチで、とても簡単なことでした。


Galileo7 ADK main boardの説明書に、DLしたスケッチのsetup関数内のinit_joystick(5); をコメントアウトするとあります。これはスケッチが、ジョイスティックを実装したシールドを使用する前提で書かれているからで、ここをコメントアウトしないと無限ループになるのです。
しかしコメントアウトするのは、これだけでは駄目でした。loop関数内に書かれた、ジョイスティックや(Galileo7のADKボードに)実装されてないセンサーにアクセスする箇所をさらにコメントアウトする必要があります。これらをコメントアウトしてないと、while文等で大幅な遅延が発生します。その遅延が、Android端末上の描画遅れになっていたと思われます。
上記のように、Arduino用スケッチに手を加えたところ、Nexus SでもXOOMでも高速で値が表示され、スライダも滑らかに操作できるようになりました。ということであっけなく解決。よかった〜。


※写真の人形は、サーボ内蔵のはちゅねロボ



さて、今後はこのADKボードというすばらしいものを使って、「何を」してゆくかですね。まだモヤモヤしてるので、具体的なネタ出しをしなきゃと思ってます。
それと、現時点でAndroid側のアプリ開発で参考になるのが、DemoKitアプリのソースコード位しかないのが厳しい。Android Open Accessoryに関する参考書やプログラミングガイドは是非とも欲しい。