Hi Nathan, ----- Origineel Bericht ----- Van: nathan rutman <[email protected]> > Continuing preliminary work on the driver for the Canon FB630U, > I've posted the code I have so far to > http://www.gordian.com/~nathan/linux.html > > I have all the USB communication with the scanner working. I > think I > have all the calibration messages captured as well, but could use some > help in figuring out their purpose.
The USB communication is almost identical to what I see between my PC and my HP3300c scanner (which is actually a parallel port scanner-on-a-chip with a IEEE1284-USB bridge built-in). In function fb630u_write_byte you remark: /* I'm just gonna call this sequence "write" for shorthand. I'm not 100% positive that's what it is, but evidence seems strong. I'm not sure what purpose the index value serves. */ I wondered too about the index value. In my testcode for the HP3300 I just the index to 0 and it works fine. It looks like you are using a customised scanner.c module. I need to do that too for my HP3300c, because I need to do control transfers. A few other scanners also seem to require a custom module. Perhaps we can make a proposal for a set of new semi-official IOCTLs for this purpose so that custom scanner.c modules are no longer needed. Kind regards, Bertrik
