MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


SANE Scanner Access Now Easy                        sane-sharp(5)



NAME
     sane-sharp - SANE backend for SHARP scanners

DESCRIPTION
     The sane-sharp library implements a SANE (Scanner Access Now
     Easy)  backend  that provides access to Sharp SCSI scanners.
     This backend should be considered beta-quality software!  In
     the current state it is known to work with JX-610 and JX-250
     scanners. It is prepared for usage with  the  JX-330  series
     scanners, but we are not able to test it with these devices.

     For other Sharp scanners, it may or may not work.

     At present, the following scanners are known  to  work  with
     this backend.

          Vendor  Product id:
          -----   -----------
          Sharp   JX-610
          Sharp   JX-250
          Sharp   JX-320
          Sharp   JX-330
          Sharp   JX-350

     The following scanners are detected by the backend, but  not
     tested:

          Vendor  Product id:
          -----   -----------
          Sharp   JX-325

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. The special device name
     must be a generic SCSI device or a symlink to such a device.
     Under  Linux,  such  a  device  name  could  be  /dev/sga or
     /dev/sge, for example.  See sane-scsi(5) for details.


SCAN OPTIONS
     Scan Mode (parameter --mode for  scanimage).  Possible  set-
     tings:
          Lineart (1 bit black & white scans),
          Gray (8 bit gray scale scans),
          Lineart Color (bi-level color scans),
          Color (8 bit RGB scans).
     The default value is Color.




sane-backends 1.0.19Last change: 21 Nov 2000                    1






SANE Scanner Access Now Easy                        sane-sharp(5)



     Halftone Pattern (parameter --halftone-pattern  for  scanim-
     age). Available only for the JX-330 series scanners.  Possi-
     ble settings:
          none
          Dither Bayer
          Dither Spiral
          Dither Dispersed
          Error Diffusion
     The default value is none.

     Paper Source (parameter --source for scanimage). This option
     is  only  available,  if  an  automatic document feeder or a
     transparency adapter is installed. Possible settings:
          Flatbed
          Automatic Document Feeder
          Transparency Adapter
     If an ADF or a transparency adapter is installed,  using  it
     is the default selection.

     Custom Gamma (parameter --custom-gamma for scanimage).  This
     option  determines whether a builtin or a custom gamma-table
     is used. Possible settings:
          yes enables custom gamma tables
          no enables a built gamma table

     Gamma (parameter --Gamma for scanimage). This option is only
     available, if Custom Gamma is set to no. Possible values:
          1.0
          2.2
     The default value is 2.2. (The JX-250  and  JX-350  have  no
     built  in gamma correction; for these scanner, a gamma table
     is downloaded to the scanner by the backend.)

     Gamma Table (parameter --gamma-table for scanimage). Allowed
     values:  0..255;  256  numbers  must be defined. The default
     values are 0, 1, 2, .. 255 (i.e., gamma == 1). This table is
     only used for gray scale scans.

     Red Gamma Table (parameter --red-gamma-table for scanimage).
     Allowed  values:  0..255;  256 numbers must be defined.  The
     default values are 0, 1, 2, .. 255 (i.e., gamma == 1).

     Green Gamma Table (paramter --green-gamma-table for  scanim-
     age).  Allowed  values: 0..255; 256 numbers must be defined.
     The default values are 0, 1, 2, .. 255 (i.e., gamma == 1).

     Blue Gamma Table (paramter  --blue-gamma-table  for  scanim-
     age).  Allowed  values: 0..255; 256 numbers must be defined.
     The default values are 0, 1, 2, .. 255 (i.e., gamma == 1).

     Resolution in pixel per  inch  (parameter  --resolution  for
     scanimage).  Selects  the  resolution  of the scanned image.



sane-backends 1.0.19Last change: 21 Nov 2000                    2






SANE Scanner Access Now Easy                        sane-sharp(5)



     Allowed values:
          30..600 (JX-330, JX-350 and JX-610) resp. 30..400  (JX-
          250)
     The default value is 150.

     Scan Window

     The possible settings depend on the scanner model  and,  for
     the  JX-250  and  the  JX-350,  also  on  the  usage  of the
     automatic document feeder resp.  the  transparency  adapter.
     Please  refer to the values allowed by xscanimage, or xsane.
     With scanimage, enter one of the following commands:

          scanimage -d sharp --source "Automatic Document Feeder"
          --help

          scanimage -d sharp --source Flatbed --help

          scanimage -d sharp --source "Transparency  Adapter"  --
          help

     in order to see the allowed parameter values  for  the  scan
     window.

     The scan window parameters are:

          Top-left x position of  scan  area  (parameter  -l  for
          scanimage);
          Top-left y position of  scan  area  (parameter  -t  for
          scanimage);
          bottom right x position of scan area (parameter -x  for
          scanimage);
          bottom right y position of scan area (parameter -y  for
          scanimage);

     Edge emphasis (parameter  --Edge  emphasis  for  scanimage).
     This  option is not available for the JX-250 and the JX-350.
     Possible settings:
          None
          Middle
          Strong
          Blur
     The default value is None.

     Threshold (parameter --threshold for  scanimage).  Sets  the
     threshold for black and white pixels in lineart mode. Possi-
     ble values:
          1..255
     The default value is 128. This option is only  available  in
     scan mode lineart.

     Threshold Red  (parameter  --threshold-red  for  scanimage).



sane-backends 1.0.19Last change: 21 Nov 2000                    3






SANE Scanner Access Now Easy                        sane-sharp(5)



     Sets  the  threshold  for the red component of a pixel in in
     lineart color scan mode. Possible values:
          1..255
     The default value is 128. This option is only  available  in
     scan mode color lineart.

     Threshold Green (parameter --threshold-green for scanimage).
     Sets  the threshold for the green component of a pixel in in
     lineart color scan mode. Possible values:
          1..255
     The default value is 128. This option is only  available  in
     scan mode color lineart.

     Threshold Blue (parameter --threshold-blue  for  scanimage).
     Sets  the  threshold for the blue component of a pixel in in
     lineart color scan mode. Possible values:
          1..255
     The default value is 128. This option is only  available  in
     scan mode color lineart.

     Light Color (parameter --LightColor for scanimage). Sets the
     color of the light source. Possible values:
          white
          red
          green
          blue
     The default value is white. This option is only available in
     scan modes lineart color and color.


ADF USAGE
     If a paper jam  occurred,  the  maintenance  cover  must  be
     opened  and  closed, even if the jammed paper can be removed
     without opening the maintenance cover. Otherwise, the  error
     condition cannot be cleared.


CONFIGURATION
     The contents of the sharp.conf file is a list of options and
     device  names that correspond to Sharp scanners. Empty lines
     and lines beginning with a hash mark (#)  are  ignored.  See
     sane-scsi(5) for details about device names.

     Lines setting an option start with the key word option, fol-
     lowed  by  the  option's  name  and  the  option's value. At
     present, three options are defined: buffers, buffersize, and
     readqueue.

     Options defined at the start of sharp.conf apply to all dev-
     ices; options defined after a device name apply to this dev-
     ice.




sane-backends 1.0.19Last change: 21 Nov 2000                    4






SANE Scanner Access Now Easy                        sane-sharp(5)



     The options buffers and readqueue are  only  significant  if
     the backend has been compiled so that for each scan a second
     process is forked (switch USEFORK in sharp.c ).  This  pro-
     cess  reads  the  scan data from the scanner and writes this
     data into a block of  shared  memory.   The  parent  process
     reads the data from this memory block and delivers it to the
     frontend. The options control the size  and  usage  of  this
     shared memory block.

     option buffers defines the number of buffers used. The smal-
     lest number allowed is 2.

     option buffersize defines the size of one buffer. Since each
     buffer  is  filled  with  a  single read command sent to the
     scanner, its size  is  limited  automatically  to  the  size
     allowed  by the operating system or by the Sane SCSI library
     for SCSI read commands. A buffer size of 128 kB or 256 kB is
     recommended for scan resolutions of 300 dpi and above.

     option readqueue defines how many read commands to  be  sent
     to the scanner are queued. At present, the Sane SCSI library
     supports queued read commands only for for Linux. For  other
     operating  systems, option readqueue should be set to 0. For
     Linux, option readqueue should be set to  2.  Larger  values
     than  2  for  option  readqueue  are  not reasonable in most
     cases.  option buffers should be greater than  option  read-
     queue.


Performance Considerations
     This  section  focuses  on  the  problem  of  stops  of  the
     scanner's  carriage  during  a  scan.  Carriage stops happen
     mainly with the JX-250. This scanner has  obviously  only  a
     small internal buffer compared to its speed. That means that
     the backend must read the data as fast as possible from  the
     scanner in order to avoid carriage stops.

     Even the JX-250 needs only less than 10 seconds  for  a  400
     dpi  A4  gray  scale  scan, which results in a data transfer
     rate of more than 1.6 MB per second.  This  means  that  the
     data  produced by the scanner must be processed fairly fast.
     Due to the small internal buffer of the JX-250, the  backend
     must issue a read request for the next data block as soon as
     possible after reading a block of data  in  order  to  avoid
     carriage stops.

     Stops of the carriage can be caused by  the  following  rea-
     sons:

          - too much "traffic" on the SCSI bus
          - slow responses by the backend to the scanner,
          - a program which processes the data  acquired  by  the



sane-backends 1.0.19Last change: 21 Nov 2000                    5






SANE Scanner Access Now Easy                        sane-sharp(5)



          backend too slow.

     Too much "traffic" on the SCSI bus: This happens  for  exam-
     ple, if hard disks are connected to the same SCSI bus as the
     scanner, and when data transfer  from/to  these  hard  disks
     requires  a considerable part of the SCSI bandwidth during a
     scan. If this is the case, you should  consider  to  connect
     the scanner to a separate SCSI adapter.

     Slow responses by the backend to the scanner: Unfortunately,
     Unix-like  operating  systems  generally  have  no real time
     capabilities.  Thus there is no guarantee that  the  backend
     is  under  any  circumstances  able  to communicate with the
     scanner as fast as required. To minimize this  problem,  the
     backend should be compiled so that a separate reader process
     is forked: Make sure that USEFORK is defined when you  com-
     pile  sharp.c. If slow responses of the backend remain to be
     problem, you could try to reduce the  load  of  the  system.
     Even  while  the  backend and the reader process need only a
     minor amount of processor time, other running processes  can
     cause  an increase in the time delay between two time slices
     given to the reader process.  On  slower  systems,  such  an
     increased  delay can be enough to cause a carriage stop with
     the JX-250.  For Linux, the usage of the SG  driver  version
     2.1.36 or above is recommended, because it supports, in com-
     bination with the SCSI library of Sane version  1.0.2,  com-
     mand  queueing within the kernel.  This queueing implementa-
     tion, combined with a buffer size of at least 128 kB, should
     avoid most carriage stops.

     Slow processing of the scan data: An example for this situa-
     tion  is  the  access to the scanner via a 10 MBit Ethernet,
     which is definitely too slow to transfer the  scan  data  as
     fast as they are produced by the scanner. If you have enough
     memory available, you can increase option buffers,  so  that
     an entire image can be stored in these buffers.

     In order to see, if the  backend  is  too  slow  or  if  the
     further processing of the data is too slow, set the environ-
     ment variable SANEDEBUGSHARP to 1. When  a  scan  is  fin-
     ished,  the backend writes the line "buffer full conditions:
     " nn" to stderr. If nn is zero, carriage stops are caused by
     too  slow  responses of the backend or too much "traffic" on
     the SCSI bus. If nn is greater than zero, the backend had to
     wait nn times until a buffer has been processed by the fron-
     tend. (Please note that option buffers must be greater  than
     option  readqueue  in order to get useful output for "buffer
     full conditions".)


FILES
     /etc/sane.d/sharp.conf



sane-backends 1.0.19Last change: 21 Nov 2000                    6






SANE Scanner Access Now Easy                        sane-sharp(5)



          The backend configuration file.

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

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

ENVIRONMENT
     SANEDEBUGSHARP
          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.

KNOWN PROBLEMS
     1. ADF Mode
          After several ADF scans, the scanner moves the carriage
          back  to  the  idle position and back to ADF scan posi-
          tion, before a scan starts. We do not know, if this  is
          a  problem  of  the scanner, or if this is a bug of the
          backend. At present, the scanner must power off and  on
          to stop this annoying behaviour.

     2. Threshold level does not work (only JX-610)

     3. The maximum resolution is limited to 600 dpi(JX-610  sup-
     ported to 1200 dpi) resp. 400 dpi (JX-250)

     4. If the JX250 is used with an ADF, the following situation
     can  occur:  After  several  scans, the scanner moves, after
     loading a new sheet of paper, the carriage to the idle posi-
     tion, and then back to the position used for ADF scans. This
     happens for every scan,  in  contrast  to  the  calibration,
     which is done after 10 scans. (For the calibration, the car-
     riage is also moved to the idle position.) We do  not  know,
     if this behavior is caused by the backend, or if it is a bug
     in the firmware of the scanner.

     5. Usage of a transparency adapter (film scan unit) is  sup-
     ported, but not tested.


SEE ALSO
     sane(7), sane-scsi(5)

AUTHORS
     Kazuya Fukuda, Abel Deuring

CREDITS
     The Sharp backend is based on the Canon backend  written  by



sane-backends 1.0.19Last change: 21 Nov 2000                    7






SANE Scanner Access Now Easy                        sane-sharp(5)



     Helmut Koeberle

     Parts of this man page are a plain copy of sane-mustek(5) by
     David   Mosberger-Tang,  Andreas  Czechanowski  and  Andreas
     Bolsch

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:

     
       ATRIBUTE TYPE     ATRIBUTE VALUE 
    
     Availability         SUNWsane-backend
    
     Interface Stability  Uncommitted     
    

NOTES
     Source for SANE is available on http:/opensolaris.org.



































sane-backends 1.0.19Last change: 21 Nov 2000                    8



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™