#

# sane-mustek_pp_ccd.5

    sane-mustek_pp_ccd(5)    SANE Scanner Access Now Easy    sane-mustek_pp_ccd(5)

## NAME

           sane-mustek_pp_ccd  - SANE backend for Mustek CCD parallel port flatbed
           scanners

## DESCRIPTION

           The sane-mustek_pp_ccd library implements a SANE  (Scanner  Access  Now
           Easy)  backend that provides access to Mustek CCD parallel port flatbed
           scanners.  The following scanners might work with this backend:

                  Model:               ASIC ID:  CCD Type:  works:
                  -------------------- --------- ---------- -------
                  SE 6000 P            1013      00          yes
                  SM 4800 P            1013/1015 04/01       yes
                  SE 1200 ED Plus      1015      01          partly
                  SM 1200 ED Plus      1015      01          partly
                  600 III EP Plus      1013/1015 00/01       yes
                  SE 600 SEP           1013      ??          yes
                  MD9848               1015      00          yes
                  Gallery 4800         ????      ??          yes
                  Viviscan Compact II  1013      00          yes

           Other scanners, especially scanners using a CIS  type  sensor  are  not
           supported by this backend. Have a look at the sane-mustek_pp(5) backend
           for CIS scanners.

           Please note that this backend is still under construction. I don't know
           which scanners work or which will work in future releases.

           You have to enable the backend explicitly in your dll.conf. Just remove
           the hash mark in the line "mustek_pp_ccd".

           Some scanners work faster when EPP/ECP is enabled in the BIOS.

           Note that the backend needs to run as root. To allow user access to the
           scanner run the backend through the network interface (See saned(1) and
           sane-net(5)). Note also that the backend does not support parport shar-
           ing , i.e. if you try printing while scanning, your computer may crash.

## DEVICE NAMES

           This backend expects device names of the form:

                  port addr

           Where addr is the base address of the port your scanner is attached to.
           Known  ports  are 0x378 (lp1) 0x278 (lp2) and 0x3BC (lp0). Note that if
           you are using a Kernel 2.2.x or better and you have only  one  parallel
           port  this  port  is named lp0 regardless of the base address. However,
           this backend requires the base address of your port.  If  you  are  not
           sure  which  port  your  scanner  is  connected to, have a look at your
           /etc/modules.conf.

           If libieee1284 is available, its naming scheme can  be  used.  Example:
           "port parport0".

           You can rename any device using the

                  name devname
                  model model
                  vendor vendor

           options. These options aply to the last port option.

## CONFIGURATION

           Please make sure to edit mustek_pp_ccd.conf before you use the backend.

           The contents of the mustek_pp_ccd.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.

           The  nine  options  supported  are  io-mode,  wait-bank,  strip-height,
           niceload, auth, wait-lamp, bw, use600, and buffer.

           Option  io-mode defines the mode of the sanei_pa4s2 interface. Possible
           values are try_mode_uni and alt_lock.  This option may appear for  each
           possible value. try_mode_uni allows the UNI port mode, however this may
           disable the (better) EPP mode. alt_lock toggles between  two  different
           ways to lock the port for scanner access.  This option must come before
           any port definition or it won't have the effect you'd expect.

           Option wait-bank defines the maximal time in msecs  the  backend  waits
           for  the  bank  to  change. The default value is 700. If this option is
           given after the port option, only this  device  is  affected.  If  this
           value  is  to low, you will get wrong colors and stripes in the scanned
           image.

           Option strip-height is a option that limits the maximum height  of  the
           strip  scanned  with a single read command.  The height is specified in
           lines. If this option is given after the port option, only this  device
           is affected. A strip-height of zero allows to scan as much as fits into
           the scan buffer.

           Option niceload tries to avoid to heavy load. Note  that  this  reduces
           scan speed. This is a global option.

           Option  auth  turns on user authentification for this scanner. Use this
           if you want access control and if you  have  enabled  this  at  compile
           time.  This  option  must come after a port option. At the moment, this
           option isn't really supported.

           Option wait-lamp allows you to control the time the backend  waits  for
           the  lamp  to warm up. The time is specified in secs. The default value
           is 5 secs. Some scanners need longer to warm up. A value of 0 makes the
           backend  start without waiting.  However the backend will wait at least
           2 secs before turning the lamp off again. If this option is given after
           a port option it affects only this device.

           Option  bw  defines the maximal color value that is considered black in
           lineart scans.  The default value is 127. Possible values are between 0
           and  255.  If  this option is given after a port option it affects only
           this device.

           Option use600 enables the 600 dpi handling code. It's not  possible  to
           detect  wether  a  scanner  has an optical resolution of 300x600 dpi or
           600x1200 dpi. The default is to use the  300x600  dpi  code.  Use  this
           option  only if your scanner has an optical resolution of 600x1200 dpi.
           This is a local only option.

           Option buffer allows you to change the size of  the  scan  buffer.  The
           size  must  be  specified in bytes. The default value is 1 megabyte. If
           this opttion is given after  the  port  option,  only  this  device  is
           affected.  If  you  have limited the strip-height, you only need a scan
           buffer of

                  8.5 * dpi * 3 * strip-height bytes.

           A sample configuration file is shown below:

                  # GLOBAL #

                  # enable this option, if you think your scanner
                  # supports the UNI protocol
                  # note however that this might disable the better
                  # EPP protocol
                  #option io-mode try_mode_uni

                  # choose between two different ways to lock to port
                  option io-mode alt_lock

                  # set the maximal height (in lines) of a strip
                  # scanned (default: no limit)
                  #option strip-height 0

                  # wait n msecs for bank to change (default: 700
                  # msecs) if this value is to low, stripes my appear
                  # in the scanned image
                  #option wait-bank 700

                  # size (in bytes) of scan buffer (default:
                  # 1 megabyte)
                  #option buffer 1048576

                  # try to avoid to heavy load. Note that this
                  # reduces scan speed
                  option niceload

                  # Define the time the lamp has to be on before
                  # scan starts (default 5 secs)
                  #option wait-lamp 5

                  # DEVICES #

                  # specify the port your scanner is connected to.
                  # Possible are 0x378 (lp1) 0x278 (lp2) and
                  # 0x3bc (lp0)
                  port 0x378

                  # the following options are local to this scanner

                   # scan maximal 16 lines for one sane_read() call
                   option strip-height 16

                   # we just need 16 * 3 * 300 * 8.5 bytes
                   option buffer 122400

                   # this scanner needs max 250 msecs to change
                   # the bank
                   option wait-bank 250

                   # My scanner is a MD9848 from Medion using the
                   # Mustek chipset
                   name MD9848
                   vendor Medion

                   # Enable this option, if you want user
                   # authentification *and* if it's enabled at
                   # compile time
                   #option auth

                   # Some scanners (especially ASIC 1013) need
                   # longer to warm up. This option specifies
                   # the time to wait for the lamp to get hot
                   #option wait-lamp 15

                   # Use this option to define the maximal
                   # black value in lineart scans
                   #option bw 127

                   # Use this option for 600 dpi scanners
                   # for example ScanExpress 1200 ED Plus
                   #option use600

## FILES

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

           /usr/local/lib/sane/libsane-mustek_pp_ccd.a
                  The static library implementing this backend.

           /usr/local/lib/sane/libsane-mustek_pp_ccd.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.  Under UNIX, the directories
                  are separated by a colon (`:'), under OS/2, they  are  separated
                  by a semi-colon (`;').  If this variable is not set, the config-
                  uration file is searched in two default directories: first,  the
                  current     working     directory     (".")    and    then    in
                  /usr/local/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 directo-
                  ries.   For  example,  setting SANE_CONFIG_DIR to "/tmp/config:"
                  would   result   in   directories   "tmp/config",    ".",    and
                  "/usr/local/etc/sane.d" being searched (in this order).

           SANE_DEBUG_MUSTEK_PP_CCD
                  If  the  library  was  compiled with debug support enabled, this
                  environment variable controls the debug level for this  backend.
                  E.g.,  a  value  of 128 requests all debug output to be printed.
                  Smaller levels reduce verbosity.

                  level   debug output
                  ------- ------------------------------
                   0       nothing
                   1       errors
                   2       warnings & minor errors
                   3       additional information
                   4       debug information
                   5       code flow (not supported yet)
                   6       special debug information

           SANE_DEBUG_SANEI_PA4S2
                  This variable sets the debug level for the  SANE  interface  for
                  the  Mustek chipset A4S2. Note that enabling this will spam your
                  terminal with some million lines of debug output.

                  level   debug output
                  ------- -------------------------------
                   0       nothing
                   1       errors
                   2       warnings
                   3       things nice to know
                   4       code flow
                   5       detailed code flow
                   6       everything

## SEE ALSO

           sane(7),    sane-mustek_pp(5),     sane-mustek_usb,     sane-mustek(5),
           sane-net(5), saned(1)

           For latest bug fixes and information see
                  http://www.penguin-breeder.org/?page=mustek_pp

## AUTHOR

           Jochen Eisinger <jochen.eisinger@gmx.net>

## BUGS

           Too       many...       please       send      bug      reports      to
           sane-devel@lists.alioth.debian.org (note that  you  have  to  subscribe
           first  to  the  list before you can send emails... see http://www.sane-
           project.org/mailing-lists.html)

                  * 1013 support isn't bullet proofed
                  * 1505 support isn't even present
                  * 1015 only works for CCD type 00 & 01 (01 only bw/grayscale)

## BUG REPORTS

           If something doesn't work, please contact me. But I need some  informa-
           tion about your scanner to be able to help you...

           SANE version
                  run "scanimage -V" to determine this

           the backend version and your scanner hardware
                  run  "SANE_DEBUG_MUSTEK_PP_CCD=128 scanimage -L" as root. If you
                  don't get any output from the mustek_pp_ccd backend, make sure a
                  line      "mustek_pp_ccd"      is     included     into     your
                  /usr/local/etc/sane.d/dll.conf.  If your scanner isn't detected,
                  make  sure  you've  defined  the  right  port  address  in  your
                  mustek_pp_ccd.conf.

           the name of your scanner/vendor
                  also a worthy information. Please also include the optical reso-
                  lution  and  lamp type of your scanner, both can be found in the
                  manual of your scanner.

           any further comments
                  if you have comments about the documentation (what could be done
                  better),  or  you  think I should know something, please include
                  it.

           some nice greetings

    sane-backends 1.0.13              3 Oct 2003             sane-mustek_pp_ccd(5)