[sane-devel] Help Please with Nikon Super Coolscan 4000 ED

abel deuring adeuring at gmx.net
Sun Mar 18 15:52:32 UTC 2018

Am 06.03.2018 um 23:34 schrieb Bob Louden:
> Dear mailing list.  Please excuse me if I am not using this mailing list
> properly.
> I created a request for help a few days ago in the Linux Mint Hardware
> forum but have not had any luck with responses.  
> I have this very nice, albeit old, scanner that I cannot get to work --
> though I feel like I am very close to having it work.  Alas, I am on the
> brink of giving up on it.  I also have this not-as-good Plustek scanner
> that I've started messing with and it was from searching for help with
> it that I found your mailing list.
> Anyway, if there is anyone out there who might be able to help me, here
> is a link to my Linux Mint forum
> post:  https://forums.linuxmint.com/viewtopic.php?f=51&t=264978
> Please feel free to respond to me via either email or in the forum.


after reading the conversation on the Mint forum it seems to me that the
host machine and the scanner have a, let's say, very serious
communication problem: The excerpt from syslog after "UPDATE2" in your
first post there shows the message "scsi host6: scsi scan: INQUIRY
result too short (7), using 36".

The "inquiry" command is the first command sent by a SCSI host to a SCSI
device when the host detects a new SCSI device. (I know, the scanner is
connected via Firewire, not via a physical SCSI interface, but Firewire
uses the SCSI commands for several device types.)

When a SCSI device receives this comamnd, it should send back a
description of itself: What type of device (disk, optical drive, tape
drive, scanner etc) it is, its vendor vendor name, product name and
other stuff. A SCSI device must send at least 36 bytes to the host
computer, and the content of these 36 bytes is well standardized.

You can find a description of the inquiry command for example on pages
90-99 of this file:


(it is hard to find a "generic" description of the SCSI commands, so I
just opened the first result of a Google search for "scsi protocol
specification". As already said, the first 36 bytes inquiry command are
well standardized, so it does not matter much that this PDF describes
the wrong device type.)

The type of the device is described in bits 0-4 of byte 0 in the inquiry
data (page 92 of the aforementioned PDF) – and, according to syslog,
they say that the device is a disk which is obviously wrong. Another
oddity in the syslog messages: The scanner has apparently sent only 7
bytes, not the expected 36 bytes. But it seems that the product name
("LS-4000 ED"), stored in bytes 16-31 of the inquiry data, has been sent
to the host anyway.

In other words: The communication between the computer and the scanner
is really messed up. Hence I think that the idea to replace the firewire
controller and driver chips (as you mention in the forum under "NEWS
FLASH") is technically reasonable – but I also understand that doing
this on a "commercial basis" is somewhat unreasonable.

But before you consider this (despite the costs...) you should
double-check that the Firewire interface of your computer works: Try to
connect another Firewire device to the computer and check if it works
better. Similary, you could check if the scanner shows similar symptoms
when it is connected to another computer. Since we suspect a hardware
problem, you could try any other machine that runs under Linux, MacOS or


More information about the sane-devel mailing list