Hello Xiaofan

On 13/10/2012 11:33, Xiaofan Chen wrote:
> It may not be as difficult as you think to make your firmware a
> USB composite device. In you case, you need to add a second
> interface (say Interface 1) without any endpoint associated
> (basically just using the control endpoint).
>
> In this case, you can use winusb/libusbx with this Interface 1
> and USB Mass Storage with Interface 0. In that case, you
> use interface 1 for your intended configuration data communication
> through the control endpoint.
>
> Reference:
> http://www.osronline.com/showthread.cfm?link=191818
>
> What you need to change in your firmware are like the following.
> 1) descriptor change to add Interface 1
> 2) in your firmware sections which deals with set-interface standard
> request, you need to take care of both interface 0 and 1.
> 3) For the vendor specific request (through control transfer), you
> can deal it just like there is no interface 1.
>
> This is not a full-blown composite device framework but you
> do not need that anyway.
>
>

Ah - now that sounds very promising. What I still do not get is how the 
WinUSB driver co-exists with the in-box mass storage stack? Can you load 
the WinUSB driver for the same VID/PID but use the 2nd interface while 
mass storage is loaded too?



------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
libusbx-devel mailing list
libusbx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusbx-devel

Reply via email to