Q: porting driver for USB scanner - where to start?

Kuba Ober kuba at mareimbrium.org
Fri Jan 28 15:00:52 CST 2005

> Interfacing directly with the scanner might work using Wine's brand new
> and very incomplete USB interface (I believe part of it is in setupapi)
> but that would probably be more code and you would still end up writing
> what is essentially a driver.

Nope. On "client" side it would be just the regular windows application + its 
usb driver. On wine side, it would be the WDM hooks to forward usb requests 
and replies to libusb.

I presume that a good starting point would be to have a look at 
ndiswrapper.sourceforge.net. They implement USB WDM (amongst others) from 
scratch, so maybe even the code would be compatible with wine (dunno about 
licensing, though).

> In other words in either case you will 
> probably need the hardware specifications.

Hardware specs are unexistent for most of today's scanner hardware. For 
reasons known to them, the manufacturers won't ever release them. I.e. good 
luck if you feel like getting the specs.

I presume that everything that wine needs could be implemented using libusb. 
Just forward the libusb functionality over via the WDM to clients running in 
wine. That's the only sensible approach I see.


More information about the wine-devel mailing list