complete PDF
Complete EPUB
One page


7_scsi PDF

(pdf) (epub) (1 page)
1 Intro
2 What is Sane?
3 Buying a scanner
4 How do I install
5 It doesn't work
6 Scanner specifics
7 . SCSI problems
8 Paralel port scanners
9 USB Problems
10 Network-scanning
11 I can make a scan! Great, what's next?

7. . SCSI problems

First read "man sane-scsi"!!! This gives the answer to many questions you might have.

7.1. What SCSI-card should I buy?

Generaly speaking: any "good" SCSI-card that is supported by your operatingsystem and the SG-drivers should work. Some SCSI cards have a history of problems that have not been resolved:

The cards that come with the scanner are often not complete SCSI-cards. Symbios Logic with Sym53C400A BusLogic cards

7.2. What about the SCSI-card I got with my scanner?

Most scanners give a just barely functional SCSI-card with their scanner. See the UMAX-section of this FAQ for hints on getting their SCSI-card to work. For the card you get with HP scanjets, see http://www.kirchgessner.net/pub/sane/53c416.txt

7.3. AM53c/974 problems (o.a. Tekram DC390, DawiControl 2974)

Tekram DC390 cards have caused some problems in the past. Use the newest version for the tmscsim.o, at least version 2.0f

 insmod tmscsim.o

If you have an old kernel, you may try

 insmod AM53C974.o

instead of the tmscsim-module. Note that the Nikon coolscan and LS-series will crash the machine with this module. On the otherhand, the DawiControl 2974 seems to need the tmscsim.o module. Be sure to use a recent version.

7.4. SCSI kernel/modules blues

On Linux, your kernel needs to recognise SCSI, either in the kernel or as modules. If you're using modules, you'll need to add the following lines in one of the boot-files:

 insmod the_driver_for_my_card
 insmod sg

Note that some distributions of LinuxPPC seem to come without the sg modules or without the source for the correct version of the modules. In that case you'll need to download the source for a new kernel. There have been reports that SCSI over IDE causes trouble. Remove the ide-scsi module if you can

 rmmod ide-scsi

On Solaris, use the sg-drivers. Please read the README.solaris that came with Sane.

7.5. Linux 2.4-kernel problems or Mandrake 8.0

The sg-driver changed in the 2.4 Linux-kernel. This may cause some problems.

Abel Deuring wrote:

The SG driver changed. But the guilty one is me; I used a too short timeout value for the new SG driver. In sane-backends-1.0.4/sanei/sanei_scsi.c, look for a line like

      req->sgdata.sg3.hdr.timeout = 10000;

(line 1892 for Sane 1.0.4), and change it to

      req->sgdata.sg3.hdr.timeout = 1000 * 10 * 60;

This patch may be forgotten in the Mandrake 8.0 distribution.

7.6. SCSI bus problems: it works sometimes/almost never/partially

Check the following:

Is the scsi bus terminated correct on both ends of the bus,

How long is the scsi bus (all scsi cables on both sides of the card together)? (max 1.5 meter)

Does every SCSI-device on the bus have a unique id? Check this by making a list of all devices and their SCSI-id.

Is the driver for your scsi controller up to date?

Is disconnect/reconnect disabled (this is a setup for your SCSI-card). Sometimes a configuration may work with the manufacturer's software under Windows, but not with SANE. In those cases, the cabling may be the problem because Windows may use a lower data-transfer range.

7.7. I'm using IDE over SCSI and I keep getting IO-error under xsane.

The IDE via SCSI driver seems to create problems. Please advise the mailing list.

7.8. My scanner was off during reboot. Do I have to boot again to get my scanner to work?

Fortunately, Linux provides a simple mechanism to probe a SCSI device on demand. Suppose you have a scanner connected to SCSI bus 1 (which is the second SCSI-bus) and the scanner has a SCSI id of 5. When the system is up and running and the scanner is turned on, you can issue the command:

 echo "scsi add-single-device 1 0 5 0" > /proc/scsi/scsi
 #                            ^   ^
 #                            |   |
 #                 SSCI-bus --+   +-----  SCSI-id

and the kernel will probe and recognize your scanner This needs to be done as root. (The first zero stands for the first SCSI-channel on your adapter and the last one for the LUN)

Another method (if you're using modules and if the scanner is the only device on the bus) is to unload the modules (SCSI-card and SG) and reload them.

Take a look at scsidev, a utility that comes with Debian distributions. http://www.garloff.de/kurt/linux/scsidev/ SuSe nowadays comes with a script rescan-scsi-bus.sh. And finaly, Oliver Rauch has a tool available. See http://www.rauch-domain.de