[sane-devel] HP Scanjet 3690 support

Bertrik Sikken bertrik@zonnet.nl
Thu, 15 Jan 2004 22:00:35 +0100

adrianpj@users.sourceforge.net wrote:

> Hi!
>    Henning, could you take a look to the hp3670 SnoopyPro logs? It seems to
> follow the low level protocol of the gl646; at least the protocol in 
> genesys_bulk_write_register() (genesys_low.c:131):
>   outdata[0] = BULK_OUT;          /* 0x01 */
>   outdata[1] = BULK_REGISTER;     /* 0x00 */
>   outdata[2] = 0x00;
>   outdata[3] = 0x00;
>   outdata[4] = (size & 0xff);          /* length of the bulk data stuff */
>   outdata[5] = ((size >> 8) & 0xff);
>   outdata[6] = ((size >> 16) & 0xff);
>   outdata[7] = ((size >> 24) & 0xff);
>   The logs are in http://www.alezan.org/hp3670/, in SnoopyPro binary format.  I 
> tried to use usblogdump in Linux but it doesn't work very well for me.  I had to
> analyze them in Windoze using SnoopyPro.
>   So maybe if sane-find-scanner.c ignores device descriptors and just probe
> the gl646 protocol using the present USB endpoints it will tell us if really
> HP3690, HP2300, HP2400 and maybe other scanners are based in such chipset?

I know this format. It's also used in some other USB scanners to start
bulk transfers for image data (haven't been able to look at the other
logfiles, they're binary, do you have text files?).
You may have some luck searching the archives for canon 630u, hewlett
packard hp2300c, hp3300c, hp3400c, hp4300c, pacific image electronics
primefilm 1800i, agfa snapscan touch.

There are some perl-scripts floating around that can do simple analysis
of the original USB snoopy text files, to make them much more readable.
I also have a modified version of the original snoopy that does not log
USB bulk transfer contents, thereby preventing log overflow.