PIC24FのUSBHOSTにandroidを接続

海外にはマイコンをUSBでandroidに接続して外部ポートのように使えるものがあるらしい
USBHOSTがあれば作れるのか??

SparkFun IOIO for Android makes Arduino-style hacks simple | Android Community

microbridge - Android Debug Bridge (ADB) implementation for microcontrollers. - Google Project Hosting


xperiaをUSBデバックを有効にしてPCに接続するとこんな感じに認識される

Device Descriptor:
bcdUSB:             0x0200
bDeviceClass:         0x00
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x40 (64)
idVendor:           0x0FCE
idProduct:          0x212E
bcdDevice:          0x0224
iManufacturer:        0x01
iProduct:             0x02
iSerialNumber:        0x03
bNumConfigurations:   0x01

ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed:     Full
Device Address:       0x07
Open Pipes:              4

Endpoint Descriptor:
bEndpointAddress:     0x82
Transfer Type:        Bulk
wMaxPacketSize:     0x0200 (512)
bInterval:            0x00

Endpoint Descriptor:
bEndpointAddress:     0x02
Transfer Type:        Bulk
wMaxPacketSize:     0x0200 (512)
bInterval:            0x00

Endpoint Descriptor:
bEndpointAddress:     0x81
Transfer Type:        Bulk
wMaxPacketSize:     0x0200 (512)
bInterval:            0x00

Endpoint Descriptor:
bEndpointAddress:     0x01
Transfer Type:        Bulk
wMaxPacketSize:     0x0200 (512)
bInterval:            0x01

VIDが0x0FCEでPIDが0x212E
Endpointが4つあるみたい 0x82,0x02がINかOUTかな


xperiaをPIC24FのUSBHOSTに接続してみた
VIDとPIDをソースに追加して実行すると認識されたっぽい

GEN: USB Generic Client Initalized: flags=0x00 address=1 VID=0x0FCE PID=0x212E
Generic demo device attached - event, deviceAddress=1


adbのコマンドを送ってみた ちょっと内容が怪しいけどなんか返ってきた!!

Applications started.
Write2: 43 4E 58 4E 00 00 00 01 DD A3 00 00 02 00 00 00 40 00 00 00 BC B1 A7 B1
Write2: 40 00
R2: 43 4E 58 4E 00 00 00 01 00 10 00 00 09 00 00 00 E4 02 00 00 BC B1 A7 B1
R2: 64 65 76 69 63 65 3A 3A 00

もうちょっとadbプロトコルを勉強する必要がある