Provided by: libsane-common_1.3.1-4build1_all bug

NAME

       sane-mustek - SANE backend for Mustek SCSI flatbed scanners (and some other devices)

DESCRIPTION

       The  sane-mustek  library  implements  a  SANE  (Scanner Access Now Easy) backend that provides access to
       Mustek (and some relabeled Trust and  Primax)  SCSI  and  parport  flatbed  scanners.   At  present,  the
       following scanners are known to work more or less with this backend:

              Paragon MFS-6000CX
              Paragon MFS-12000CX
              Paragon MFC-600S, 600 II CD, ScanMagic 600 II SP
              Paragon MFC-800S, 800 II SP
              Paragon MFS-6000SP
              Paragon MFS-8000SP
              Paragon MFS-1200SP, MFS-12000SP
              ScanExpress 6000SP
              ScanExpress 12000SP, 12000SP Plus, Paragon 1200 III SP, ScanMagic 9636S, 9636S Plus
              Paragon 1200 LS
              ScanExpress A3 SP
              Paragon 1200 SP Pro
              Paragon 1200 A3 Pro
              Paragon 600 II EP
              Paragon 600 II N
              Trust Imagery 1200
              Trust Imagery 1200 SP
              Trust Imagery 4800 SP
              Trust SCSI Connect 19200
              Primax Compact 4800 SCSI

       More      details      can      be      found     on     the     Mustek     SCSI     backend     homepage
       http://www.meier-geinitz.de/sane/mustek-backend/.

       Don't mix up MFS (Paragon), Pro and ScanExpress models! They're completely  different.  Check  the  exact
       model name!

       Note  that  most  of the above scanners come with a SCSI interface.  The only non-SCSI scanners that have
       some support at this point is the 600 II N and 600 II EP scanners. The former  one  comes  with  its  own
       parallel port adapter (i.e., it does not attach to the printer port). Both scanners use the SCSI protocol
       internally,  too.  More  info  on  how  to use these parallel port scanners can be found below in section
       PARALLEL PORT SCANNERS.  Other parallel port scanners are not supported by this backend but  you  may  be
       successful  using  the  Mustek  parallel port backend mustek_pp, see sane-mustek_pp(5).  USB scanners are
       also not supported by this backend but the ma1509,  mustek_usb,  gt68xx,  and  plustek  backends  include
       support for some of them, see sane-ma1509(5), sane-mustek_usb(5), sane-gt68xx(5), and sane-plustek(5).

       Mustek  scanners  have no protection against exceeding the physical scan area height.  That is, if a scan
       is attempted with a height that exceeds the height of the scan surface, the scanner  begins  making  loud
       noises  and  the scan mechanism may be damaged.  Thus, if you hear such a noise, IMMEDIATELY turn off the
       scanner. This shouldn't happen if your  scanner  is  in  the  list  of  known  scanners.  There  is  more
       information in the /usr/share/doc/libsane/PROBLEMS file.

       If  you  own  a  Mustek (or Trust) scanner other than the ones listed above that works with this backend,
       please let us know by sending the scanner's exact model name (look at the front and back of the  scanner)
       and  a  debug  output to sane-devel@alioth-lists.debian.net.  You can get the debug output by setting the
       environment variable SANE_DEBUG_MUSTEK to 5 and showing the list of available scanners with scanimage -L.
       Please send all of it to the mailing list. You must be subscribed to sane-devel before you can send  mail
       to the list. See http://www.sane-project.org/mailing-lists.html for details.

DEVICE NAMES

       This backend expects device names of the form:

              special

       Where  special  is  either the path-name for the special device that corresponds to a SCSI scanner or the
       port number at which the parallel port scanners can be found (see section PARALLEL PORT SCANNERS  below).
       For  SCSI  scanners, the special device name must be a generic SCSI device or a symlink to such a device.
       The program sane-find-scanner(1) helps to find out the correct device. Under Linux, such  a  device  name
       could be /dev/sg0 or /dev/sg3, for example.  See sane-scsi(5) for details.

CONFIGURATION

       The  contents  of  the  mustek.conf  file is a list of options and device names that correspond to Mustek
       scanners.  Empty lines and lines starting with a hash mark (#) are ignored.  See sane-scsi(5) on  details
       of what constitutes a valid device name.

       The supported options are linedistance-fix, lineart-fix, legal-size, buffersize, blocksize, strip-height,
       disable-double-buffering, disable-backtracking, and force-wait.

       Options  come in two flavors: global and positional ones.  Global options apply to all devices managed by
       the backend whereas positional options apply just to the most recently mentioned device.  Note that  this
       means that the order in which the options appear matters!

       Option  linedistance-fix  is positional and works around a problem that occurs with some SCSI controllers
       (notably the ncr810 controller under Linux).  If color scans have horizontal stripes  and/or  the  colors
       are off, then it's likely that your controller suffers from this problem.  Turning on this option usually
       fixes the problem.

       Option  lineart-fix  is  positional  and  works  around a timing problem that seems to exist with certain
       MFS-12000SP scanners.  The problem manifests itself in dropped  lines  when  scanning  in  lineart  mode.
       Turning on this option should fix the problem but may slow down scanning a bit.

       Option  legal-size  is  positional and sets the size of the scan area to Legal format. Set this option if
       you own a Paragon 12000 LS. It can't be distinguished by software from a ScanExpress  12000  SP  (ISO  A4
       format).

       Option  buffersize  is  a positional option that overrides the default value set for the size of the SCSI
       buffer. The buffer size is specified in kilobytes. The default value is 128. Because of double  buffering
       the  buffer  actually  sent  to the scanner is half the size of this value. Try to increase this value to
       achieve higher scan speeds. Note that some ScanExpress scanners don't  like  buffer  sizes  above  64  kb
       (buffersize  = 128). If your sg driver can't set SCSI buffer sizes at runtime you may have to change that
       value, too. See sane-scsi(5) for details.

       Option blocksize is a positional option that overrides the default value set for the  maximum  amount  of
       data  scanned in one block. The buffer size is specified in kilobytes. Some scanners freeze if this value
       is bigger than 2048. The default value is 1 GB (so effectively no limit) for most scanners. Don't  change
       this value if you don't know exactly what you do.

       Option  strip-height is a global option that limits the maximum height of the strip scanned with a single
       SCSI read command.  The height is specified in inches and may contain  a  fractional  part  (e.g.,  1.5).
       Setting  the strip-height to a small value (one inch, for example) reduces the likelihood of encountering
       problems  with  SCSI  driver  timeouts  and/or  timeouts  with  other  devices  on  the  same  SCSI  bus.
       Unfortunately, it also increases scan times. With current SCSI adapters and drivers this option shouldn't
       be needed any more.

       Option  disable-double-buffering  is  a global option. If set, the backend will only send one buffer at a
       time to the scanner. Try this option if you have trouble while scanning, e.g. SCSI  errors,  freezes,  or
       the first few cm are repeated over and over again in your image.

       Option  disable-backtracking  is  a  positional option. If set, the scanner will not move back its slider
       after each SCSI buffer is filled (`backtracking'). Setting this option will lead to faster scans but  may
       also  produce  horizontal  stripes. This option doesn't work with every scanner (only some of the paragon
       models can modify backtracking).

       Finally, force-wait is a global option. If set, the backend will wait until the device  is  ready  before
       sending  the  inquiry  command.  Further  more  the  backend  will force the scan slider to return to its
       starting position (not implemented for all scanners). This option may be necessary with the 600 II  N  or
       when scanimage(1) is used multiple times (e.g. in scripts). The default is off (not set).

       A sample configuration file is shown below:

              # limit strip height of all scanners to 1.5 inches:
              option strip-height 1.5
              /dev/scanner    # first Mustek scanner
              # 1 MB buffer for /dev/scanner:
              option buffersize 1024
              /dev/sge        # second Mustek scanner
              # turn on fixes for /dev/sge:
              option lineart-fix
              option linedistance-fix

SCSI ADAPTER TIPS

       You need a SCSI adapter for the SCSI scanners. Even if the connector is the same as that of parallel port
       scanners, connecting it to the computers parallel port will NOT work.

       Mustek  SCSI  scanners  are typically delivered with an ISA SCSI adapter.  Unfortunately, that adapter is
       not worth much since it is not interrupt driven.  It is (sometimes) possible to get the supplied card  to
       work,  but without interrupt line, scanning will be very slow and put so much load on the system, that it
       becomes almost unusable for other tasks.

       If you already have a working SCSI controller in your system, you should consider that Mustek scanners do
       not support the SCSI-2 disconnect/reconnect protocol and hence tie up the SCSI bus while  a  scan  is  in
       progress.   This  means  that  no  other  SCSI  device on the same bus can be accessed while a scan is in
       progress.

       Because the Mustek-supplied adapter is not worth much and because Mustek  scanners  do  not  support  the
       SCSI-2 disconnect/reconnect protocol, it is recommended to install a separate (cheap) SCSI controller for
       Mustek  scanners.   For example, ncr810 based cards are known to work fine and cost as little as fifty US
       dollars.

       For Mustek scanners, it is typically  necessary  to  configure  the  low-level  SCSI  driver  to  disable
       synchronous   transfers  (sync  negotiation),  tagged  command  queuing,  and  target  disconnects.   See
       sane-scsi(5) for driver- and platform-specific information.

       The ScanExpress models have sometimes trouble with high resolution color mode. If you encounter  sporadic
       corrupted  images  (parts duplicated or shifted horizontally) kill all other applications before scanning
       and (if sufficient memory is available) disable swapping.

       Details  on  how  to  get  the  Mustek  SCSI  adapters  and  other  cards  running  can   be   found   at
       http://www.meier-geinitz.de/sane/mustek-backend/#SCSI.

PARALLEL PORT SCANNERS

       This  backend  has  support  for the Paragon 600 II EP and Paragon 600 II N parallel port scanners.  Note
       that the latter scanner comes with its own ISA card that implements  a  funky  parallel  port  (in  other
       words, the scanner does not connected to the printer parallel port).

       These  scanners  can  be configured by listing the port number of the adapter or the parallel port in the
       mustek.conf file.  Valid port numbers for the 600 II N are 0x26b,  0x2ab,  0x2eb,  0x22b,  0x32b,  0x36b,
       0x3ab,  0x3eb.   For  the  600 II EP use one of these: parport0, parport1, parport2, 0x378, 0x278, 0x3bc.
       Pick one that doesn't conflict with the other hardware in your computer. Put only one number on a  single
       line. Example:

              0x3eb

       Note  that for these scanners usually root privileges are required to access the I/O ports.  Thus, either
       make frontends such as scanimage(1) and xscanimage(1) setuid root (generally not recommended for security
       reasons) or, alternatively, access this backend through the network daemon saned(8).

       If the Mustek backend blocks while sending the inquiry command to the scanner, add the option  force-wait
       to mustek.conf.

       Also  note  that  after a while of no activity, some scanners themselves (not the SANE backend) turns off
       their CCFL lamps. This shutdown is not always perfect with the result that the lamp  sometimes  continues
       to glow dimly at one end. This doesn't appear to be dangerous since as soon as you use the scanner again,
       the  lamp  turns  back  on  to  the normal high brightness. However, the first image scanned after such a
       shutdown may have stripes and appear to be over-exposed.  When this happens, just take another scan,  and
       the image will be fine.

FILES

       /etc/sane.d/mustek.conf
              The backend configuration file (see also description of SANE_CONFIG_DIR below).

       /usr/lib/x86_64-linux-gnu/sane/libsane-mustek.a
              The static library implementing this backend.

       /usr/lib/x86_64-linux-gnu/sane/libsane-mustek.so
              The shared library implementing this backend (present on systems that support dynamic loading).

ENVIRONMENT

       SANE_CONFIG_DIR
              This  environment  variable  specifies  the list of directories that may contain the configuration
              file.  On *NIX systems, the directories are separated by a  colon  (`:'),  under  OS/2,  they  are
              separated  by a semi-colon (`;').  If this variable is not set, the configuration file is searched
              in two default directories: first, the current working directory (".") and  then  in  /etc/sane.d.
              If  the  value  of  the environment variable ends with the directory separator character, then the
              default directories are searched after the explicitly specified directories.  For example, setting
              SANE_CONFIG_DIR to "/tmp/config:" would result in directories tmp/config, ., and /etc/sane.d being
              searched (in this order).

       SANE_DEBUG_MUSTEK
              If the library was compiled with debug support enabled, this  environment  variable  controls  the
              debug level for this backend.  Higher debug levels increase the verbosity of the output.

              Value  Description
              0      no output
              1      print fatal errors
              2      print important messages
              3      print non-fatal errors and less important messages
              4      print all but debugging messages
              5      print everything

              Example: export SANE_DEBUG_MUSTEK=4

SEE ALSO

       sane(7),   sane-find-scanner(1),   sane-scsi(5),   sane-mustek_usb(5),  sane-gt68xx(5),  sane-plustek(5),
       sane-mustek_pp(5), sane-ma1509(5), scanimage(1), xscanimage(1)

       /usr/share/doc/libsane/mustek/mustek.CHANGES
       http://www.meier-geinitz.de/sane/mustek-backend/

AUTHOR

       David Mosberger, Andreas Czechanowski, Andreas Bolsch (SE extensions), Henning Meier-Geinitz, James Perry
       (600 II EP).

BUGS

       Scanning with the SCSI adapters supplied by Mustek is very slow at high resolutions and wide scan areas.

       Some scanners (e.g. Paragon 1200 A3 + Pro, SE A3) need more testing.

       The gamma table supports only 256 colors, even if some scanners can do more.

       More    detailed    bug    information    is    available    at    the    Mustek    backend     homepage:
       http://www.meier-geinitz.de/sane/mustek-backend/.

                                                   13 Jul 2008                                    sane-mustek(5)