dwww Home | Manual pages | Find package

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

NAME
       sane-canon_pp  -  SANE  backend for Canon CanoScan Parallel Port flatbed
       scanners

DESCRIPTION
       The sane-canon_pp library implements a SANE (Scanner  Access  Now  Easy)
       backend that provides access to the following Canon flatbed scanners:

              CanoScan FB320P
              CanoScan FB620P
              CanoScan FB330P
              CanoScan FB630P
              CanoScan N340P
              CanoScan N640P
              CanoScan N640P ex

       No  USB scanners are supported and there are no plans to support them in
       the future.  Other projects are working on support for USB scanners. See
       the PROJECTS file for more detail.  The FB310P and FB610P are  re-badged
       Avision  scanners  which use a different command set, so are unlikely to
       be supported by this backend in the future.

       IMPORTANT: this is alpha code. While we have made every effort  to  make
       it  as reliable as possible, it will not always work as expected.  Feed-
       back is still appreciated.  Please send any bug reports to the maintain-
       ers as listed on the web page (listed in SEE ALSO below).

DEVICE NAMES
       This  backend  expects  device  names  of  the  form  presented  by  li-
       bieee1284(3).   These names are highly dependent on operating system and
       version.

       On Linux 2.4 kernels this will be of the form parport0 or older (2.2 and
       before) kernels may produce names like 0x378 (the base address  of  your
       port)  or  simply  0  depending on your module configuration.  Check the
       contents of /proc/parport if it exists.  If you don't want to specify  a
       default port (or don't know its name), the backend should be able to de-
       tect which port your scanner is on.

CONFIGURATION
       The contents of the canon_pp.conf file is a list of options for the dri-
       ver to use.  Empty lines and lines starting with a hash mark (#) are ig-
       nored.

       The  supported options are currently ieee1284, calibrate, init_mode, and
       force_nibble

       ieee1284 port-name
              Defines which port to use.  The format of port-name is OS  depen-
              dent,  based  on  the  names presented by libieee1284(3).  Please
              only have one of these lines, or all but one will be ignored.

       calibrate cal-file [port-name]
              Defines which calibration file to use on a  per-port  basis.   If
              you  only have one parport, the port-name argument may be omitted
              - but be careful as this will  cause  problems  on  multi-scanner
              systems.   You  may  have  as many of these lines as you like, as
              long as each has a unique port name.  The tilde  (`~')  character
              is acceptable and will be expanded to the value of the HOME envi-
              ronment variable.

       init_mode <AUTO|FB620P|FB630P> [port-name]
              Defines  which initialisation (wake-up) mode to use on a per-port
              basis.  If you only have one parport, the port-name argument  may
              be  omitted - but be careful as this may cause problems on multi-
              scanner systems.  You may have as many  of  these  lines  as  you
              like, as long as each has a unique port name.  The valid initial-
              isation  modes are FB620P (which strobes 10101010 and 01010101 on
              the data pins), FB630P (which strobes 11001100  and  00110011  on
              the  data  pins)  and AUTO, which will try FB630P mode first then
              FB620P mode second.  The FB620P mode is also used by the  FB320P.
              The FB630P mode is used by the FB330P, N340P, and N640P.

       force_nibble
              Forces the driver to use nibble mode even if ECP mode is reported
              to  work  by libieee1284(3).  This works-around the rare issue of
              ECP mode being reported to work by the library, then not working.

TIPS
       Hit the "Calibrate" button before  scanning.   It  vastly  improves  the
       quality of scans.

       To  enable automatic detection of your scanner, uncomment the "canon_pp"
       line from /etc/sane.d/dll.conf

FILES
       /etc/sane.d/canon_pp.conf
              The backend configuration file (see also description of SANE_CON-
              FIG_DIR below).

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

       /usr/lib/x86_64-linux-gnu/sane/libsane-canon_pp.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  direc-
              tories are separated by a colon (`:'), under OS/2, they are sepa-
              rated  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_CANON_PP
              If  the library was compiled with debug support enabled, this en-
              vironment variable controls the debug  level  for  this  backend.
              Higher debug levels increase the verbosity of the output.

              Example: export SANE_DEBUG_CANON_PP=4

NOTES
       Features available in the Windows interface

       Brightness and Contrast
              These are not implemented, and probably never will be.  These ap-
              pear to be implemented entirely in software.  Use GIMP or a simi-
              lar program if you need these features.

       Descreen Mode
              This  appears  on our first analysis to be just oversampling with
              an anti-aliasing filter.  Again, it seems to be  implemented  en-
              tirely in software, so GIMP is your best bet for now.

       Gamma Tables
              This is under investigation, but for now only a simple gamma pro-
              file (ie: the one returned during calibration) will be loaded.

       Communication Problems

       ECP  mode  in libieee1284(3) doesn't always work properly, even with new
       hardware.  We believe that this is a ppdev problem.  If you  change  the
       configuration  file  to include force_nibble , the problem will go away,
       but you will only be able to scan in nibble mode.

       Sometimes the scanner can be left in a state where our code  cannot  re-
       vive  it.  If the backend reports no scanner present, try unplugging the
       power and plugging it back in.  Also try unplugging  printers  from  the
       pass-through port.

       The  scanner  will  not respond correctly to our commands when you first
       plug in the power.  You may find if you try a scan very soon after plug-
       ging in the power that the backend will incorrectly report that you have
       no scanner present.  To avoid this, give it about 10  seconds  to  reset
       itself before attempting any scans.

       Repeated Lines

       Sometimes  at  high resolutions (ie. 600dpi) you will notice lines which
       appear twice.  These lines correspond to points where the  scanner  head
       has  stopped  during  the  scan  (it  stops every time the internal 64kb
       buffer is full).  Basically it's a mechanical problem inside  the  scan-
       ner,  that  the  tolerance of movement for a start/stop event is greater
       than 1/600 inches.  I've never tried the windows driver so I'm not  sure
       how  (or  if)  it works around this problem, but as we don't know how to
       rewind the scanner head to do these bits  again,  there's  currently  no
       nice way to deal with the problem.

       Grey-scale Scans

       Be  aware that the scanner uses the green LEDs to read grey-scale scans,
       meaning green coloured things will appear lighter than normal,  and  red
       and  blue coloured items will appear darker than normal.  For high-accu-
       racy grey-scale scans of colour items, it's best just to scan in  colour
       and convert to grey-scale in graphics software such as the GIMP.

       FB620P/FB320P Caveats

       These  models  can not be reset in the same way as the others.  The win-
       dows driver doesn't know how to reset them either - when  left  with  an
       inconsistent scanner, it will start scanning half way down the page!

       Aborting  is  known to work correctly on the FB*30P models, and is known
       to be broken on the FB*20P models.  The FB620P which I tested on  simply
       returns  garbage after a scan has been aborted using the method we know.
       Aborting is able to leave the scanner in a state where it  can  be  shut
       down, but not where another scan can be made.

SEE ALSO
       sane(7), sane-dll(5), libieee1284(3),
       http://canon-fb330p.sourceforge.net/

AUTHOR
       This  backend is primarily the work of Simon Krix (Reverse Engineering),
       and Matthew Duggan (SANE interface).

       Many thanks to Kevin Easton for his comments and help, and Kent A.  Sig-
       norini for his help with the N340P.

                                  11 Jul 2008                  sane-canon_pp(5)

Generated by dwww version 1.16 on Sat Oct 3 06:27:00 CEST 2026.