Hi, On Mon, Jun 10, 2002 at 04:33:12PM -0400, Kip Iles wrote: > I am new to this list and also new to SANE on Solaris 8 so please be gentle > with me if this question has been asked a million times already.
If it had been asked, you would maybe find the answer in the mailing list archive. But I don't think so :-) I don't use Solaris for scanning (only test-compiling) so my knowledge is very limited in this area. Nevertheless: > Why must the SGEN (or other generic SCSI device) driver be used in SANE to > connect a (or any) scanner in Solaris 8? It's used for accessing SCSI scanners. You need some sort of interface to connect these scanners and SANE can use any of scg, sg or sgen. At least that's what README.solaris says. I think I will add a comment about missing/unknown parport, USB and other support. > Must it be used even if the scanner I am connecting is a USB device? I don't think so. To be more exact I think you can't use it to connect USB scanners. The only way to use a SCSI generic driver would be some sort of converter in the kernel and a USB scanner that is accessed over SCSI commands. I don't know if souch a converter (SCSI-over-USB) exists for Solaris. As far as I know there is currently no SANE support for USB for Solaris. If I remember correctly, nobody has yet asked for it or implemented it. > Does SANE support the libusb or Javax.usb API's and if so, which one is > more mature. If not - then what are my alternatives. The interface used by most backends is sanei/sanei_usb.c. It's build around the assumption that there is one single device file that represents an USB scanner. So you need a kernel driver fo this job. Currently I know that this works with Linux, OpenBSD and FreeBSD. The epson backend also uses this approach but accesses the device file directly (without the sanei_usb layer). The sm3600 backend uses libusb. However, I don't think Solaris is supported by libusb, is it? As far as I know, only Linux and the BSDs currently work. At least that's what a quick look at http://libusb.sourceforge.net/ reveals. I have never heard from that Java API and I don't think it's supported by SANE. So I think there are two approaches: 1) Find out if there is a general kernel scanner driver in Solaris like the Linux scanner module or FreeBSD's uscanner driver. If such driver is available, SANE may run out-of-the-box or with some tweaking. 2) If there is a Solaris-compatible libusb: Rewrite sanei/sanei_usb.c to support this way of access. Probably not easy. Bye, Henning
