[sane-devel] HP 7450C USB scanner failure with ADF

Henning Meier-Geinitz henning@meier-geinitz.de
Wed, 25 Jun 2003 22:52:40 +0200


Hi,

On Wed, Jun 25, 2003 at 09:57:17AM -0700, Thomas Frayne wrote:
> Thanks.  I read the manual, found that permissions were not set
> correctly, set them in fstab as recommended.  Then sane-find-scanner and
> scanimage -L worked as a normal user.

Is the scanner found as USB device now? Something like "libusb:001:002"?

Please show us "sane-find-scanner -q".

I have to admitt that I'm a bit confused by the backend. It uses USB
interrupt transfers to get the status of the scanner. However that
only works with libusb, not the kernel scanner driver. So I don't
really know why the backend lists "usb /dev/ubs/scanner" in
avision.conf. Maybe the maintainer can enlighten me :-)

> However, the scanner still does not work. 

What exactly doesn't work?

> Messages indicated failure of usbdevfs, which is supposed to be
> obsolete.

The name "usbdevfs" is obsolete. It's called "usbfs" now. But that's
not your problem.

> /usr/local/etc/sane.d/avision.conf lists devices which do not
> exist. 

Usually the config files list all devices and device files the backend
supports. So it doesn't matter if there are additional ones.

The backend checks for all USB devices anymway, I don't think the
entries in avsion.conf are necessary at all.

> and xsane-0.91.tar.gz, and the kernel 2.4.20-18.9,

Those two shouldn't matter.

> I'll keep trying.  I have just done 
> modprobe scanner vendor=0x0001  product=0x0002,

These vendor and product ids are most probably wrong. If the scanner
driver works at all, try something like this:
rmmod scanner
modprobe scanner vendor=0x03f0 product=0x0801

> and I plan to reboot and continue debugging, starting with why
> /dev/usbscanner does not exist.

Some distributions use(d) /dev/usbscanner, some use /dev/usb/scanner0.
Shouldn't matter in your case.

> Jun 24 13:37:51 localhost kernel: hub.c: new USB device 00:07.2-1, assigned address 2
> Jun 24 13:37:51 localhost kernel: usb.c: USB device 2 (vend/prod 0x3f0/0x801) is not claimed by any active driver.

That's your scanner. It's ok that it's not "claimed by any active
driver" because in this case it's used by usbfs (libusb). You can also
try to load the USB scanner driver as mentioned above. Then you should
get a message from that driver.

> Jun 24 13:53:48 localhost kernel: usb_control/bulk_msg: timeout
> Jun 24 13:53:48 localhost kernel: usbdevfs: USBDEVFS_BULK failed dev 2 ep 0x82 len 1 ret -110
> Jun 24 13:54:18 localhost kernel: usb_control/bulk_msg: timeout
> Jun 24 13:54:18 localhost kernel: usbdevfs: USBDEVFS_BULK failed dev 2 ep 0x83 len 22 ret -110
> Jun 24 13:54:48 localhost kernel: usb_control/bulk_msg: timeout
> Jun 24 13:54:48 localhost kernel: usbdevfs: USBDEVFS_BULK failed dev 2 ep 0x1 len 6 ret -110
> Jun 24 13:55:18 localhost kernel: usb_control/bulk_msg: timeout
> Jun 24 13:55:18 localhost kernel: usbdevfs: USBDEVFS_BULK failed dev 2 ep 0x82 len 1 ret -110
> Jun 24 13:55:48 localhost kernel: usb_control/bulk_msg: timeout
> Jun 24 13:55:48 localhost kernel: usbdevfs: USBDEVFS_BULK failed dev 2 ep 0x1 len 6 ret -110

That doesn't look good. Your scanner doesn't seem to accept any input
on any endpoint (bulk in, out and interrupt). 

I recommend to unplug/replug your scanner before any test. Otherwise
it may be confuded by eralier tests.

> [root@localhost root]# ls -l /dev/usb/scanner0
> crw-------    1 tom      root     180,  48 Jan 30 02:24
> /dev/usb/scanner0

That's ok. YOu can add a link /dev/usb/scanner to that one but I don't
think it's necessary.

> /proc/bus/usb/devices

Those entries start with "T:" (topology).

>  48- 63: usbscanner

Is loaded but doesn't know about your scanner.

Bye,
  Henning