[sane-devel] Sane Problem Canoscan 5600F
Stef
stef.dev at free.fr
Thu Mar 20 06:05:28 UTC 2014
On 19/03/2014 12:29, Rowan Liddane wrote:
> Hi jef & Joel,
> Family problems kept me from my computer but I am now back.
>
> Stef,
> Happy to try modifying and testing the back end for the Canon 5600F as
> I have the scanner. I have no idea where to begin but very happy to
> learn. I am not sure where to begin so if you like to point me in the
> right direction for some information this will be a first for me.
>
> Rowan
>
>
Hello,
to make the 5600F work you'll have to modify the following files:
- genesys_devices.c
- genesys_gl847.h
- genesys_gl847.c
- genesys.c
In the 2 first files you'll have to either update or create entries
for this scanner with values from logs and test, and in genesys_gl847.h.
I expect you'll have to add a specific sensor and motor description for
this model. For genesys_gl847.c, you'll certainly have to add specific
case for the sensor you'll add. genesys.c will have to be modified for
the new sensor when generating and sending shading calibration.
The 2 very first things to do are:
- have a windows environment where you can use usbsnoop to monitor
usb activity. The usb log will be processed with the appended scripts.
- clone SANE's git tree so you can generate patches that can be
easily included. Doxygen doc for the backend is generated by 'doxygen
doxygen-genesys.conf' in the doc/ subdirectory.
Roughly the process is to capture an USB log, run the same test
with the genesys backend, explain and fix differences until the scanner
work. Review the git history of these files for LiDE 700F addition, that
will give you some idea of what has to be done. The first goal is to
have uncalibrated low resolution scan working, ie a 75 or 100 dpi color
preview.
I never install the code I am debugging, I run it with a script
that use LD_PRELOAD to use the freshly compiled version, see the
appended run-genesys script. Another thing is to compile with debugging
enabled with (/usr/lib64 on 64 bit system, /usr/lib on 32 bit system):
CFLAGS="-ggdb" ./configure \
--prefix=/usr \
--sysconfdir=/etc \
--libdir=/usr/lib64 \
--enable-parport-directio \
--enable-pnm-backend \
--enable-libusb_1_0 \
--enable-pthread \
--enable-locking \
--with-group=scanner \
--without-snmp
The main stumbling block is that the 5600F is a CCD, not a CIS
scanner, and that type of sensor isn't handled at all in the gl847 code.
You may have a look to the gl843 code to see how it can be supported.
Regards,
Stef
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gl847-scripts.tar.gz
Type: application/x-gzip
Size: 3361 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20140320/4092a888/attachment.bin>
-------------- next part --------------
#!/bin/bash
#======================================================
export SANE_DIR=/replace/with/exact/path/sane-backends
export BIN_DIR=$SANE_DIR/frontend
export SO_DIR=$SANE_DIR/backend/.libs
export SANE_DEBUG_GENESYS=255
export SANE_DEBUG_GENESYS_LOW=255
export SANE_DEBUG_GENESYS_GL646=255
export SANE_DEBUG_GENESYS_GL841=255
export SANE_DEBUG_GENESYS_GL843=255
export SANE_DEBUG_GENESYS_GL847=255
export SANE_DEBUG_GENESYS_GL124=255
#export SANE_DEBUG_SANEI_USB=255
#export SANE_DEBUG_SANEI_MAGIC=255
export LD_PRELOAD=$SO_DIR/libsane-genesys.so
$BIN_DIR/scanimage -d genesys --resolution 75 --preview --mode Color 2>preview.log >preview.pnm
More information about the sane-devel
mailing list