前回はmicrobridgeのlogcatを使って動作確認を行った。今回は、tcp:4567ポートを使ってAndroid側アプリと、ARM側ファームを繋いでみる。ARM側はサンプルのDemoアプリを流用。下記の様に、tcp:4567を指定して接続要求を出しています。Android側はServoControlのDemoのアプリをそのまま利用
Android側のソースをちゃんと読んでないので理解不十分ですが、ServoControlにはServerアプリとClientアプリが同梱されている??
// Open an ADB stream to the phone's shell. Auto-reconnect
connection = ADB_addConnection("tcp:4567", true, adbEventHandler_tcp);


まあとにかくARMとAndroid間の通信はできたので、通信内容を設計すれば、いろんな目的に応用できる。といいつつ、今回は、マイコンとAndroidの接続テストが目的だったので、次にこれを使ってやりたいことはすぐにないのであった。。目的と手段を取り違えているかも。言ってみればPCとAndroidはやれることは基本的に同じなので、PCでできることをわざわざAndroidで実装する必要はなく、携帯端末ならではの応用を考えたいとは思います。無難なところとしては、タッチによるUIや各種内蔵センサーの応用、フィールドでのネットワーク接続、マイコン側スイッチ、AD/DAコンバータとの連携といったあたりでしょうか。
■追記 111002
Android(携帯端末)のアドバンテージとは。。とりえあず以下だろうか
・すぐに起動できる(PCだったらブート必要)
・サイズがコンパクト、人に寄り添う、体に密着できる(ポケットに入れたり持ち歩いたり。自分が端末に向かうのではなくて、端末が体の一部である)
・優れたUI(タッチパネルやバイブレーション)
・各種センサー(加速度、方位、GPS)
・Googleクラウドとの親和性(これはかなり情緒的な話)