[sane-devel] Scanimage only detects Canon LiDE20 once

James Fowkes jamesfowkes at gmail.com
Fri Jun 22 01:08:44 UTC 2012


Hello all,

I am running Debian Squeeze with a Canon LiDE20 scanner directly connected
via USB. I initially install sane via aptitude, but I've now removed that
and built sane-backends 1.0.22 from source. I hoped that building the
latest version of SANE might solve the problems I was experiencing, but
they remain.

I have added the udev rules tom tools/udev to my /etc/udev/rules.d folder.

I have added the USB vid/pid to the plustek.conf file:

[usb] 0x04a9 0x220d
device auto

After plugging in the scanner, the resulting dmesg output is:

[10997.384059] usb 4-1: new full speed USB device using ohci_hcd and
address 11
[10997.551108] usb 4-1: New USB device found, idVendor=04a9, idProduct=220d
[10997.551118] usb 4-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[10997.551125] usb 4-1: Product: CanoScan
[10997.551129] usb 4-1: Manufacturer: Canon
[10997.552853] usb 4-1: configuration #1 chosen from 1 choice

sane-find-scanner is always successful at finding the scanner:

james at jamespc:~$ sane-find-scanner
< snip text >
found USB scanner (vendor=0x04a9, product=0x220d, chip=LM983x?) at
libusb:004:011
  # Your USB scanner was (probably) detected. It may or may not be
supported by
  # SANE. Try scanimage -L and read the backend's manpage.

scanimage -L works once:

james at jamespc:~$ SANE_DEBUG_DLL=128 scanimage -L
[dll] sane_get_devices: found 1 devices
device `plustek:libusb:004:014' is a Canon CanoScan N670U/N676U/LiDE20
flatbed scanner
[dll] sane_exit: exiting

I should note that this operation takes about 30 seconds to find the
scanner.

Subsequent attempts to use scanimage do not find the scanner:

james at jamespc:~$ scanimage -L

[dll] sane_get_devices: found 0 devices

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

I can repeat this process over again by unplugging/plugging in the scanner.

If I try scanimage > test.pnm on the first attempt (instead of -L), the
output is:

[dll] sane_get_devices: found 1 devices
[dll] sane_open: trying to open `plustek:libusb:004:015'
[dll] sane_open: open successful
[dll] sane_get_option_descriptor(handle=0x9915678,option=0)
[dll]
sane_control_option(handle=0x9915678,option=0,action=0,value=0xbfc96160,info=(nil))
[dll] sane_get_option_descriptor(handle=0x9915678,option=0)
[dll]
sane_control_option(handle=0x9915678,option=0,action=0,value=0xbfc9408c,info=(nil))
[dll] sane_get_option_descriptor(handle=0x9915678,option=1)
[dll] sane_get_option_descriptor(handle=0x9915678,option=2)
[dll] sane_get_option_descriptor(handle=0x9915678,option=3)
[dll] sane_get_option_descriptor(handle=0x9915678,option=4)
[dll] sane_get_option_descriptor(handle=0x9915678,option=5)
[dll] sane_get_option_descriptor(handle=0x9915678,option=6)
[dll] sane_get_option_descriptor(handle=0x9915678,option=7)
[dll] sane_get_option_descriptor(handle=0x9915678,option=8)
[dll] sane_get_option_descriptor(handle=0x9915678,option=9)
[dll] sane_get_option_descriptor(handle=0x9915678,option=10)
[dll] sane_get_option_descriptor(handle=0x9915678,option=11)
[dll] sane_get_option_descriptor(handle=0x9915678,option=12)
[dll] sane_get_option_descriptor(handle=0x9915678,option=13)
[dll] sane_get_option_descriptor(handle=0x9915678,option=14)
[dll] sane_get_option_descriptor(handle=0x9915678,option=15)
[dll] sane_get_option_descriptor(handle=0x9915678,option=16)
[dll] sane_get_option_descriptor(handle=0x9915678,option=17)
[dll] sane_get_option_descriptor(handle=0x9915678,option=18)
[dll] sane_get_option_descriptor(handle=0x9915678,option=19)
[dll] sane_get_option_descriptor(handle=0x9915678,option=20)
[dll] sane_get_option_descriptor(handle=0x9915678,option=21)
[dll] sane_get_option_descriptor(handle=0x9915678,option=22)
[dll] sane_get_option_descriptor(handle=0x9915678,option=23)
[dll] sane_get_option_descriptor(handle=0x9915678,option=24)
[dll] sane_get_option_descriptor(handle=0x9915678,option=25)
[dll] sane_get_option_descriptor(handle=0x9915678,option=26)
[dll] sane_get_option_descriptor(handle=0x9915678,option=27)
[dll] sane_get_option_descriptor(handle=0x9915678,option=28)
[dll] sane_get_option_descriptor(handle=0x9915678,option=29)
[dll] sane_get_option_descriptor(handle=0x9915678,option=30)
[dll] sane_get_option_descriptor(handle=0x9915678,option=31)
[dll] sane_get_option_descriptor(handle=0x9915678,option=32)
[dll] sane_get_option_descriptor(handle=0x9915678,option=33)
[dll] sane_get_option_descriptor(handle=0x9915678,option=34)
[dll] sane_get_option_descriptor(handle=0x9915678,option=35)
[dll] sane_get_option_descriptor(handle=0x9915678,option=36)
[dll] sane_get_option_descriptor(handle=0x9915678,option=37)
[dll] sane_get_option_descriptor(handle=0x9915678,option=38)
[dll] sane_get_option_descriptor(handle=0x9915678,option=39)
[dll] sane_get_option_descriptor(handle=0x9915678,option=40)
[dll] sane_get_option_descriptor(handle=0x9915678,option=41)
[dll] sane_get_option_descriptor(handle=0x9915678,option=42)
[dll] sane_get_option_descriptor(handle=0x9915678,option=43)
[dll] sane_get_option_descriptor(handle=0x9915678,option=44)
[dll]
sane_control_option(handle=0x9915678,option=10,action=0,value=0x8052820,info=(nil))
[dll]
sane_control_option(handle=0x9915678,option=8,action=0,value=0xbfc94088,info=(nil))
[dll]
sane_control_option(handle=0x9915678,option=11,action=0,value=0x8052824,info=(nil))
[dll]
sane_control_option(handle=0x9915678,option=9,action=0,value=0xbfc94088,info=(nil))
[dll]
sane_control_option(handle=0x9915678,option=8,action=0,value=0xbfc96158,info=(nil))
[dll] sane_get_option_descriptor(handle=0x9915678,option=10)
[dll]
sane_control_option(handle=0x9915678,option=10,action=1,value=0xbfc96154,info=0xbfc9408c)
[dll]
sane_control_option(handle=0x9915678,option=9,action=0,value=0xbfc96158,info=(nil))
[dll] sane_get_option_descriptor(handle=0x9915678,option=11)
[dll]
sane_control_option(handle=0x9915678,option=11,action=1,value=0xbfc96154,info=0xbfc9408c)
[dll] sane_start(handle=0x9915678)
scanimage: sane_start: Error during device I/O
[dll] sane_cancel(handle=0x9915678)
[dll] sane_close(handle=0x9915678)
[dll] sane_exit: exiting

I have not found any reference to this particular problem with scanimage
(only working once).

I do not believe the scanner is physically damaged in any way. I don't have
immediate access to another other PCs to try it on.

I appear to have two version of libusb:

james at jamespc:~$ dpkg -l | grep libusb
ii  libusb-0.1-4                             2:0.1.12-16
     userspace USB programming library
ii  libusb-1.0-0                             2:1.0.8-2
     userspace USB programming library

Not sure if this is an issue or not.

Thanks in advance for any help!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20120622/c31aee45/attachment.html>


More information about the sane-devel mailing list