I am continuing experiments with ChipKIT WF32 working as Android Accessory in USB Host mode as described here: viewtopic.php?f=16&t=2862
And I have met a very weird problem. WF32 does not work with one particular Android smartphone I have - YotaPhone (http://yotaphone.com).
The problem is not only with accessory mode, but at lower level - I am running debug application which prints info about any USB device attached to the board and all events on the USB bus:
https://github.com/1i7/snippets/tree/ma ... it_usbhost
I can attach 2 Android smarphones (Samsung and Htc) and also USB flash disk to WF32 - all they print some events to UART like:
Code: Select all
USB event Application: VBUS REQUEST POWER: current=254, max current=500 USB HOST Initialize: address=1; flags=0 bLength=18, bDescriptorType=1, bcdUSB=512, bDeviceClass=0, bDeviceSubClass=0, bDeviceProtocol=0, bMaxPacketSize0=64, idVendor=0x4E8, idProduct=0x685E, bcdDevice=1024, iManufacturer=1, iProduct=2, iSerialNumber=3, bNumConfigurations=1
YotaPhone works just fine when I connect it to PC. And even more - it works as USB accessory with ChipKIT Max32+NetworkShield just fine.
- WF32 + any USB or Anroid device (except YotaPhone) = OK
- YotaPhone + Max32/NetworkShield = OK
- WF32+YotaPhone = FAIL
Tested with 2 WF32 boards with same result. I have no idea what can be a reason of such incompatibility and how to digg it further, would appreciate any intput.