SCSI scanner problem

dogone has tested a SCSI scanner with 4.1alpha7, detected but unusable.

Question: is the 'sg' module loaded?
Run 'lsmod' in a terminal to find out.

I have never tried this, but it seems that you can start xsane specifying what device to use, for example:

# xsane microtek2:/dev/sg3

I think to, you can link /dev/scanner to the device you want to use. Perhaps try this one first:

# ln -sf /dev/sg3 /dev/scanner
then start xsane:
# xsane


Posted on 28 Aug 2008, 8:24


Comments:

Posted on 28 Aug 2008, 13:52 by dogone
scanner problem
My scanner problem has been "resolved". For reasons unknown, both scanners are now detected. sane-find-scanner locates the HP at /dev/sg3. It finds the Microtek at /dev/sg3 through /dev/sg9 (mystery #1). In each cases, Xsane indicates it's found the device at every node between sg3 and sg63 (mystery #2). Selecting the correct node is made almost impossible by the fact that Xsane's selection list begins at /dev/sg63 (top) and descending to /dev/sg43 before disappearing beyond the bottom of the dialog box (mystery #3). I discovered by accident that the selection cursor wraps. One can select /dev/sg3 by placing the cursor on /dev/sg63 and pressing the UP arrow. The selection then wraps to the bottom of the list (not visible) and highlights /dev/sg3 (mystery #4). Click OK and everything then works.

What baffles me completely is how a project as mature as Xsane can't even design a working GUI (mystery #5).

I can't say I'm "pleased" with this, but as it doesn't appear to be Puppy's fault, I'll take what I can get.

Anyone having an easier time of it?


Posted on 28 Aug 2008, 22:45 by dogone
scanner investigation
SCSI interfaces support eight devices, as represented by Logical Unit Number (LUNs) 0 through 7. Zero is typically reserved for the host adapter - the Adaptec 2940 in my case. Depending upon the SCSI device involved, the LUN is either "hard coded" via a switch on the device or assumed by the device after sensing other devices on the cable. I have two SCSI scanners. My Microtek's LUN is selected via a switch. My HP self-selects a LUN.

With the Adaptec 2940 installed and recognised but no SCSI devices connected, /dev contains exactly what I expect, "sg0" through "sg7" - one for each available LUN. However, running "sane-find-scanner", nodes "sg8" through "sg66" immediately appear. It 's the presence of these extra sg nodes that causes Xsane's device selection dialog to over-flow and become unusable. I decided to manually delete these extra nodes before starting Xsane. Sure enough, Xsane's device selection list contained just 5 devices, dev/sg3 through dev/sg7. I selected the lowest available, "sg3", and the scanner worked perfectly.

Why 5 devices and not 7? Why is the only attached scanner not detected as dev/sg2, sg1 or sg0? That's remains a mystery. Those nodes appear to be unavailable to either "sane-find-scanner" or Xsane.

We could be looking at compatibility issues between legacy SCSI software and newer kernels. Sane and Xsane may not have kept up with changes in the kernel. This would explain their behavior. It doesn't explain nodes dev/sg8 through sg66. We could also then be looking at a kernel problem.

My solution will be a script that runs "sane-find-scanner" to generate those bogus "sg" nodes, deletes nodes sg8 through sg66 and runs Xsane. Xsane's device seletion dialog will then be useable.


Posted on 28 Aug 2008, 23:12 by dogone
sane update available
Does alpha7 include the latest sane and xsane releases? Sane current is 1.0.19.

http://www.sane-project.org/


Posted on 28 Aug 2008, 24:03 by dogone
Xscanimage - Xcam
While powerful and flexible, Xsane's UI is daunting and dated. I suggest we consider Xscanimage. It's user friendly, can run standalone or as a Gimp plug-in. That done, perhaps Xcam could replace GTKam.

http://freshmeat.net/projects/sane-frontends/



Posted on 16 Sep 2008, 6:19 by Aitch
Scsi Scanners
@dogone

Whilst I have been away awhile things are moving on, thanks Barry
Re: lun assignment, you are referring only to 50pin scsi1 assignment using 8/16bit code, as the scsi2/3 16/32bit code for pci cards as opposed to isa types, can assign 16 devices
by finding 66 device assignments it appears to somehow be using scsi3 pci-x 64bit [server card] code, with everything upshifted by a couple of luns, 00,01,10, if that makes sense? though I thought the card was prioritised as 111 [7]?
Maybe I need to spend more time actually building my scsi setup, & digging out my scanner, too, wink :) to test the theory?
PS: I now own a Sun Ultrascsi 7x18Gb h/d array, bought on ebay for 23, and a 146Gb 15000rpm scsi3 drive for 27.50 - thank you very much :D


Posted on 16 Sep 2008, 13:00 by dogone
SCSI scanners
Barry, I believe Aitch may on to something here. 66 is appropriate as is the "upshifted" LUNs (as reported by sane-find-scanner).

I am able to start xsane from the prompt and in truncated device selection windows, press the up arrow once. The selection then roles from the top, 66, to the bottom (off screen) to what one would assume is 00. This doesn't exactly square with what sane-find-scanner reports, but it does work.