[sane-devel] Re: FW: canon630u's gl640 forked for CanoScan3000 and others?
Tue, 31 May 2005 11:36:59 +0300
Content-Type: text/plain; charset="ISO-8859-1"
>From: Gerhard Jaeger <firstname.lastname@example.org>
>To: email@example.com, firstname.lastname@example.org
>Subject: [sane-devel] Re: FW: canon630u's gl640 forked for CanoScan3000
>Date: Tue, 31 May 2005 09:08:01 +0200
>>>I have been looking into CanoScan 3000(F) sane backend creation, and
>>>so my question is that would it be possible to either simply cut'n'pas=
>>>some gl640-specific parts of the sources to be included to genesys-bac=
>>>or to a independent backend?
>>>Or better yet, canon630u backend might move all gl640 sources to genes=
>>>and then just .h include them on the canon630u backend (that is an LM9=
>to be honest, I'm not sure what to answer. On one hand, I see, that the
>genesys sources are for the UMAX 4500 and therefore they should somehow
>with the CanoScan 3000 (work means, the communication should work), one
>hand, it seems, that there are some diffs. I didn't follow the latest di=
>about that on sane-devel, but I'd like to hear from the genesys-experts
>It would be also a good idea to check the USB logs...
I have the normal usbsnoop-3000f-plugin.log, usbsnoop-3000f-preview.log
and few extra-small-scan-logs parsed with both experimental/usbsnoop/pars=
and experimental/usbsnoop/spike4.pl so been comparing them with gl640 and=
there seem to be some strange reg address offsets, I'll try to include a
quick (possibly not even accurate) hash of the docs as far as I can see
(based on genesys's public .pdf files).
And it's kinda funny that both canon630u and niash have HP ScanJet 3300C
backend at least partly defined, which one is the actually working one,
or both? :-)
At least gl640/gl660 should be separated (and shared by backends mentione=
above) so it would make it simpler to just #include necessary interface
chip communication protocols, perfect example being lm9830.h (part of can=
funnily enough) and niash_xfer.h that seems to be a partial GL640 impleme=
compared to canon630u-common.c or u12-io.c...
As far as I can see (up to looking into GL660's pins 24 and 26 to see it'=
hardwired to IEEE-1284 mode) that why CanoScan 3000 and some of the other=
do report themself's slightly differently is because they simply have sli=
differently offsetted registers. ;-)
Trying to make a proof-of-concept of recognizing the CanoScan's chips cor=
(configuring the EPP-part and bulk write-read cycles to different memory
locations on the scanner-side, just like on ct_D646U.c, ct-backend (canon=
I'm making some very rough hacks to canon630c-backend as it seems to have=
the closest usb logs I have gotten my hands on.
Content-Disposition: attachment; filename="GL640-GL660_differences.txt"