[sane-devel] Canon CS 8000F, USB and VMWare

Sergey Berezin berezin@stanford.edu
08 Jun 2003 15:12:41 -0700


I recently acquired Canon CanoScan 8000F (USB 2.0), which is not
supported by SANE yet, and I'm thinking of writing a backend for it.
Or at least try to reverse-engineer the protocol...

So the first question is, has anyone worked on this scanner yet?
(Vendor=04a9 ProdID=220f, other details from /proc/bus/usb are at the
end).  Web search hasn't produced anything useful for me yet, except
consistent complaints that Canon wouldn't release even the name of the
chipset, saying nothing of the specs...

Now, about breaking the protocol.  I'm running VMWare (win2k) through
USB v.1, and the scanner seems to be working fine.  I installed
SnoopyPro on the Windows side, but it stops snooping after the the
first 120+ tiny control messages right after the scanner is plugged
in.  No data is logged when it actually scans.  According to some
other random source, it probably gets confused by the first bulk

As an alternative, I've read in many places (including the archives of
this mailing list) that it's possible to log USB messages from VMWare
directly from the linux kernel module.  Since I'm not familiar with
the kernel code, I wonder if someone has already done this and can
share the experience or a hacked usb module with me.



PS. The relevant portion of /proc/bus/usb/devices:

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 20 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs=  1
P:  Vendor=04a9 ProdID=220f Rev= 3.01
S:  Manufacturer=Canon
S:  Product=Scanner
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 10mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=83(I) Atr=03(Int.) MxPS=   1 Ivl=8ms