Hi all,
I was looking for a USB newbies mailing list but this url claims
linux-usb-users is now defunct http://www.linux-usb.org/mailing.html
Given this list seems to contain all the gory details of USB hope my
newbie question is not going to irritate many.
I'm working on an embedded device which our customers can configure (and
run some diagnostics) using serial port. The new version of the device
has an USB port instead and there is an issue how to let the customers
use it to perform configuration in a similar fashion. BTW the customers,
for all practical purposes, *always* run Windows on their PCs.
After a bit of searching the net an obvious solution was to use the
gadget serial module. That worked -- to a degree. When the host was
running GNU/Linux everything was fine. However when the host was running
Windows (XP) the comms would lock up after a while, usually a few
minutes but sometimes in less than a minute. To get the comms working
again we needed to disable/enable the USB port on the host side and
restart the application on the device, not something that would be
acceptable.
The second attempt was to use file-backed storage gadget module, with a
vague idea of having one 'request' file and one 'response' file that
would exchange data between the host and device. (The host would clearly
need a wrapper application around it but that's not a problem.) However
an ominous warning from this page
http://www.linux-usb.org/gadget/file_storage.html says no to do
something like that, and a quick test confirmed that file changes on one
side are not seen by the other side.
I'm currently playing with the GadgetFS approach and the sample usb.c
code (http://www.linux-usb.org/gadget/) when compiled and executed on
the device does "something" that Windows host reacts to, but i'm not
sure what kind of driver would Windows PC require for this to work.
As I'm going nowhere fast I'd like to hear if other people have done
something similar and what approach has worked. Any pointers greatly
appreciated.
--
Rgds, Bernardo
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html