[sane-devel] Epson 1650 on Solaris 8

Henning Meier-Geinitz henning@meier-geinitz.de
Tue, 25 Jun 2002 20:41:41 +0200


Hi,

On Tue, Jun 25, 2002 at 01:12:29PM -0400, Kip Iles wrote:
> While comparing output from an Epson Perfection 1650 Photo scanner via 
> Solaris 8's generic usb_mid (multi-interface driver), I receive the 
> following debug output ....
> 
> $ scanimage -d epson -T -v
> [sanei_debug] Setting debug level of epson to 128.
> [epson] sane_init: sane-backends 1.0.8
> [epson] sane_init, ># epson.conf<
> [epson] sane_init, >#usb /dev/usb/epsonscan0<
> [epson] sane_init, >usb /dev/usb/device0<
> [epson] sane_init, >usb /dev/usb/device0<
> [epson] attach(usb /dev/usb/device0)
> [epson] SANE Epson Backend v0.2.21 - 2002-04-22
> [epson] attach(usb /dev/usb/device0)
> [epson] attach: opening usb /dev/usb/device0
> [epson] send buf, size = 2
> [epson] buf[0] 1b .
> [epson] buf[1] 40 @
> [epson] error in receive - status = 6

[...]

> How do I really interpret this. I see that an INIT was sent but an error 
> (status=6) was returned and -1 was the size of the receive buffer. Does 
> this mean that the scanner is just not answering (nobody home)? 

Probably the kernel driver just doesn't understand what you want.
Most (all?) SANE USB backends assume that you have a kernel driver,
that provide a device file. This device file can be written to,
resulting in a USB bulk write and can be read from, resulting in a
bulk read from the device. If your device driver works different (e.g.
using ioctrls or other mechanisms or data formats) this is the
expetced result.

> Sane-find-scanner DOES see a device at this device node ...

Yes, because it simply opens the device file. It does try to identify
the device, but this won't work on Solaris.

Try "touch /tmp/scanner; sane-find-scanner /tmp/scanner". You will see
sane-find-scanner finding a new USB scanner :-)

So I guess without rewriting sanei_usb/epson.c to support Solaris you
won't have much luck.

Bye,
  Henning