Does the USB host need to know anything about it's client?

Thread Starter


Joined Oct 29, 2009
Not sure if this is off topic or the right forum but I will give it a shot since there are a lot of really smart people around here.

A little background. I developed a software library that makes the very complicated Garmin protocol simple for the programmer to transfer waypoints, tracks,routes etc to and from the Garmin GPS.

My software works with both USB and RS232. The USB communication requires that a driver be installed. The USB communicates using DeviceIOControl, WriteFile and Readfile Windows API calls.

Move forward a few years. I purchased a Nexus 7 that runs on android. I want to be able to communicate to the Garmin over usb. I already have some java classes I wrote long ago for the protocol that I can dust off.

But the problem is that there is no driver for the Android form Garmin. Android is supposed to have an API for USB devices. But since there is no driver for Android, what am I in for? What do I need to know about a USB device to communicate to it?