I am just starting to get into android soft dev and will be designing accessory hardware to interface the android device. It appears that there are some limitation in what USB modes can be used on the device dependent on the firmware. Based on a documentation on USB from the developer.android.com site. USB host mode is only supported on firmware versions 3.1 and up. However, it appears that the samsung galaxy 2 supports OTG (host mode), at least natively, as demonstrated in this youtube video : SGS2 OTG demo. It is critical that the phone be the host in order to supply a small amount of power to my externally connected hardware.
Can anyone verify whether there is any API access to USB host mode on android mobile phone devices? The reason that I question the android dev quote above is that there is clearly Host mode functionality being demonstrated on the SGS2 phone.
If I cannot access any of the USB host API functionality, is there any way to develop USB peripheral device hardware that can communicate with the phone? It appears that I could design hardware that uses the MSD classes, as appears to be natively supported in the above listed demo?
If there is no API USB host access currently, are there any future plans to add this to mobile phone hardware in the future?