PIC24FのUSBHOSTにandroidを接続 その2

前回は、つないだだけで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供給してみようかな