sane-hs2p(5) SANE Scanner Access Now Easy sane-hs2p(5)
sane-hs2p - SANE backend for Ricoh SCSI flatbed/ADF scanners
The sane-hs2p library implements a SANE (Scanner Access Now Easy) back‐
end that provides access to the Ricoh IS450 family of scanners. Should
also work with the IS420, IS410, and IS430 scanners, but these are
untested. Please contact the maintainer or the sane-devel mailing list
if you own such a scanner.
This backend is alpha-quality. It may have bugs and some scanners
haven't been tested at all. Be careful and pull the plug if the scanner
causes unusual noise.
This backend expects device names of the form:
Where special is either the path-name for the special device that cor‐
responds to a SCSI scanner. The program sane-find-scanner helps to find
out the correct device. Under Linux, such a device name could be
/dev/sg0 or /dev/sga, for example. See sane-scsi(5) for details.
The contents of the hs2p.conf file is a list of device names that cor‐
respond to SCSI 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 backend configuration file (see also description of
The static library implementing this backend.
The shared library implementing this backend (present on systems
that support dynamic loading).
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).
If the library was compiled with debug support enabled, this
environment variable controls the debug level for this backend.
A value of 255 prints all debug output. Smaller values reduce
The hs2p backend is now in version 1.00. All major scanning-related
features are supported, except for those features requiring the
optional IPU. Scanning from the flatbed or ADF (either simplex or
duplex) is supported. Lineart, halftone, 4-bit gray, and 8-bit gray are
supported. Pre-set gamma tables and halftone patterns are supported, as
well as brightness, threshold, contrast. Also supported is scan wait
mode, binary and gray filtering, negative scanning, and absolute or
relative white setting. Printing with the optional endorser also is
This scanner can scan from the ADF in continuous simplex mode. Sur‐
prisingly, many scanners scan an entire document from the ADF into mem‐
ory before ejecting the sheet. Thus if the document is too long, the
scanner cannot hold the entire image data in memory. But if the scan‐
ner would send its image data when its memory got full, and then read
the next buffer's worth of data, continuous scanning could be achieved.
The SCSI commands for uploading (2AH) or downloading (28H) custom
halftone patterns (02H) and gamma vectors (03H) should work, but
require implementing the SANE Option-Value code to allow the user to
create the tables to be uploaded to the scanner. No support for Mainte‐
nance Data (80H) is planned as this functionality is more suited to a
stand-alone utility to be used by a technician when replacing the lamp
or ADF unit. Nor is support for reading or changing IPU (93H) parame‐
ters and adjustments planned, since my IS450 lacks such a unit. The
31-byte Auto Photo/Letter struct and 21-byte Dynamic threshold struct
are documented in the hs2p-scsi.h file should someone wish to use their
IPU for image data processing.
sane(7), sane-find-scanner(1), sane-scsi(5),
Maintained by Jeremy Johnson <email@example.com>
13 Jul 2008 sane-hs2p(5)
Man(1) output converted with