前回は、つないだだけでVIDとPIDで認識させたけど
PIC24FのUSBHOSTにandroidを接続 - hrdakinoriのいろいろ
いろんな機種があるだろうからclassでadb interfaceを認識させてみた
androidのソースとかを参考にadbの通信をマイコンに実装
マイコンからandroidのLocalSocketのサーバにadbで接続することにした
(正常系のみ、データサイズなど縮小して固定)
androidアプリで文字を入力して送信ボタンを押すとPIC24FのUARTで文字を確認できました
はまったところ
・adbのOPENコマンドが資料(core/adb/protocol.txt)と少し変わっていた
・LocalSocketのアドレスの命名規則をいろいろ探したけどよくわからなかった
・headerとpayloadを分けて送受信するのがUSBフレームワーク的に大変だった
ソースとか
これで正しい実装なのか不安ではあるけど、マイコン側とandroid側のソースを公開しておきます
PIC24FJ256GB106用プロジェクトがADB_PICでandroid用アプリプロジェクトがTestServer
hrdakinori/ADB_PIC24F - GitHub
確認した端末
xperia X10はUSBが5Vなくても動くらしいNexus Sは認識されない
5V供給してみようかな