[sane-devel] CanoScan Lide20 not working

Jeronimo Pellegrini pellegrini at mpcnet.com.br
Wed Aug 3 12:43:25 UTC 2005


Hello.

I'm trying to setup a CanoScan Lide20 and I'm having problems.
Maybe someone can tell me what I'm doing wrong?

The box is an Athlon running on an Asus A7V8X-X motherboard, and
I'm running Debian sid.

I have sane, sane-utils, xsane, hotplug, libusb-0.1-4, all installed.


$ cat /etc/sane.d/dll.conf
plustek

In /etc/sane.d/plustek.conf, I have (besides the other options, which I did 
not touch):
[usb] 0x04a9 0x220d
device auto

I also tried removing the vendor and product IDs, but that made no difference.


So, if I connect the scanner, my kernel.log says it's been detected:

Aug  3 09:23:45 socrates kernel: hub 4-0:1.0: state 5 ports 6 chg 0000 evt 0040
Aug  3 09:23:45 socrates kernel: ehci_hcd 0000:00:10.3: GetStatus port 6 status 001803 POWER sig=j  CSC CONNECT
Aug  3 09:23:45 socrates kernel: hub 4-0:1.0: port 6, status 0501, change 0001, 480 Mb/s
Aug  3 09:23:45 socrates kernel: hub 4-0:1.0: debounce: port 6: total 100ms stable 100ms status 0x501
Aug  3 09:23:45 socrates kernel: ehci_hcd 0000:00:10.3: port 6 full speed --> companion
Aug  3 09:23:45 socrates kernel: ehci_hcd 0000:00:10.3: GetStatus port 6 status 003801 POWER OWNER sig=j  CONNECT
Aug  3 09:23:45 socrates kernel: hub 4-0:1.0: port_wait_reset: err = -107
Aug  3 09:23:45 socrates kernel: uhci_hcd 0000:00:10.2: wakeup_hc
Aug  3 09:23:45 socrates kernel: hub 3-0:1.0: state 5 ports 2 chg 0000 evt 0004
Aug  3 09:23:45 socrates kernel: uhci_hcd 0000:00:10.2: port 2 portsc 0093,00
Aug  3 09:23:45 socrates kernel: hub 3-0:1.0: port 2, status 0101, change 0001, 12 Mb/s
Aug  3 09:23:45 socrates kernel: hub 3-0:1.0: debounce: port 2: total 100ms stable 100ms status 0x101
Aug  3 09:23:45 socrates kernel: usb 3-2: new full speed USB device using uhci_hcd and address 4
Aug  3 09:23:46 socrates kernel: usb 3-2: ep0 maxpacket = 8
Aug  3 09:23:46 socrates kernel: usb 3-2: default language 0x0409
Aug  3 09:23:46 socrates kernel: usb 3-2: new device strings: Mfr=1, Product=2, SerialNumber=0
Aug  3 09:23:46 socrates kernel: usb 3-2: Product: CanoScan
Aug  3 09:23:46 socrates kernel: usb 3-2: Manufacturer: Canon
Aug  3 09:23:46 socrates kernel: usb 3-2: hotplug
Aug  3 09:23:46 socrates kernel: usb 3-2: adding 3-2:1.0 (config #1, interface 0)
Aug  3 09:23:46 socrates kernel: usb 3-2:1.0: hotplug
Aug  3 09:23:46 socrates kernel: usbserial_generic 3-2:1.0: usb_probe_interface
Aug  3 09:23:46 socrates kernel: usbserial_generic 3-2:1.0: usb_probe_interface - got id


Now if either root or my user (who is in the scanner group) runs sane-find-scanner,
 everything seems to be OK:


socrates ~ 0 :: sane-find-scanner 

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a SCSI driver for your SCSI adapter.

found USB scanner (vendor=0x04a9 [Canon], product=0x220d [CanoScan], chip=LM9832/3) at libusb:003:004
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.


But "scanimage -L" doesn't always work. This time it worked:

socrates ~ 0 :: scanimage -L
device `plustek:libusb:003:004' is a Canon N670U/N676U/LiDE20 USB flatbed scanner


However, if I try to preview or scan, it only sometimes works, but most of the time
it fails with "Error during read: Error during device I/O".

I tried this with Debian's 2.6.8-2-k7 kernel, and the logs did show this:

 Aug  3 01:01:26 socrates kernel: usb 3-2: control timeout on ep0out


Then I tried with my own 2.6.12.3 kernel (pristine, from kernel.org), and got this:

 Aug  3 09:28:48 socrates kernel: uhci_hcd 0000:00:10.2: uhci_result_control: failed with status 440000
 Aug  3 09:28:48 socrates kernel: [f7707240] link (377071e2) element (28e0d000)
 Aug  3 09:28:48 socrates kernel: 0: [e8e0d000] link (28e0d040) e0 Stalled CRC/Timeo Length=7 MaxLen=7 DT0 EndPt=0 Dev=4, PID=2d(SETUP) (buf=350511a0)
 Aug  3 09:28:48 socrates kernel: 1: [e8e0d040] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1 EndPt=0 Dev=4, PID=69(IN) (buf=00000000)
 Aug  3 09:28:48 socrates kernel: 


After the first failure, all frontends complain either that no scanner has been found, or
that there was the same I/O error. Usually, I can only use the scanner once, and then I have
to disconnect/reconnect the USB cable or reboot so I'll be able to use it again -- and sometimes
not even re-plugging the cable helps. 
(For example, if I preview an image, I can't scan it). After the failure, scanimage -L does 
not find a scanner anymore.

I don't know if this is relevant, but the scanner is being used as a USB1.1 device (should it be 2.0?)
I checked this using usbview.

So... Does anyone know what may be happening? Is there any other information I should send?

Thanks a lot!
J.




More information about the sane-devel mailing list