NAME

sane-fujitsu - SANE backend for Fujitsu flatbed and ADF scanners
 

DESCRIPTION

The sane-fujitsu library implements a SANE (Scanner Access Now Easy) backend which provides access to most Fujitsu flatbed and ADF scanners.
 
This document describes backend version 139, which initially shipped with SANE 1.1.2.
 

SUPPORTED HARDWARE

This version supports every known model which speaks the Fujitsu SCSI and SCSI-over-USB protocols. Specifically, the SCSI M309x and M409x series, the SCSI fi-series, and most of the USB fi-, ScanSnap, & iX series scanners are supported. Please see the list at http://www.sane-project.org/sane-supported-devices.html for details.
 
This backend may support other Fujitsu scanners. The best way to determine level of support is to test the scanner directly, or to collect a trace of the windows driver in action. Please contact the author for help or with test results.
 

UNSUPPORTED HARDWARE

The following scanners are known NOT to work with this backend, either because they have a non-Fujitsu chipset, or an unsupported interface type. Some of these scanners may be supported by another backend.
--------------------------------------
SCSI:        SERIAL:      USB:
------------ ------------ ------------
ScanStation  M3093E/DE/EX fi-4110EOX/2
ScanPartner  M3096EX      fi-4010CU
SP-Jr        M3097E+/DE   S300/S300M
SP-10/10C    M3099A/EH/EX S1300/S1100
SP-15C/300C               fi-60F/65F
SP-600C/620C              fi-5015C
                          SP-2x/3x

OPTIONS

Effort has been made to expose all hardware options, including:
source s
Selects the source for the scan. Options may include "Flatbed", "ADF Front", "ADF Back", "ADF Duplex", "Card Front", "Card Back", "Card Duplex".
mode m
Selects the mode for the scan. Options may include "Lineart", "Halftone", "Gray", and "Color".
resolution, y-resolution
Controls scan resolution. Setting --resolution also sets --y-resolution, though this behavior is overridden by some frontends.
tl-x, tl-y, br-x, br-y
Sets scan area upper left and lower right coordinates. These are renamed t, l, x, y by some frontends.
page-width, page-height
Sets paper size. Used by scanner to determine centering of scan coordinates when using the ADF (Automatic Document Feeder) and to detect double feed errors.
Other options will be available based on the capabilities of the scanner: machines with IPC or DTC will have additional enhancement options, those with CMP will have compression options, those with a printer will have a group of endorser options.
 
Additionally, several 'software' options are exposed by the backend. These are reimplementations of features provided natively by larger scanners, but running on the host computer. This enables smaller machines to have similar capabilities. Please note that these features are somewhat simplistic, and may not perform as well as the native implementations. Note also that these features all require that the driver cache the entire image in memory. This will almost certainly result in a reduction of scanning speed.
swcrop
Requests the driver to detect the extremities of the paper within the larger image, and crop the empty edges.
swdeskew
Requests the driver to detect the rotation of the paper within the larger image, and counter the rotation.
swdespeck X
Requests the driver to find and remove dots of X diameter or smaller from the image, and fill the space with the average surrounding color.
 
Use 'scanimage --help' to get a list, but be aware that some options may be settable only when another option has been set, and that advanced options may be hidden by some frontend programs.
 

CONFIGURATION FILE

The configuration file fujitsu.conf is used to tell the backend how to look for scanners, and provide options controlling the operation of the backend. This file is read each time the frontend asks the backend for a list of scanners, generally only when the frontend starts. If the configuration file is missing, the backend will be unable to locate any scanners.
Scanners can be specified in the configuration file in 4 ways:
"scsi FUJITSU"
Requests backend to search all scsi buses in the system for a device which reports itself to be a scanner made by 'FUJITSU'.
"scsi /dev/sg0" (or other scsi device file)
Requests backend to open the named scsi device. Only useful if you have multiple compatible scanners connected to your system, and need to specify one. Probably should not be used with the other "scsi" line above.
"usb 0x04c5 0x1042" (or other vendor/product ids)
Requests backend to search all usb buses in the system for a device which uses that vendor and product id. The device will then be queried to determine if it is a Fujitsu scanner.
"usb /dev/usb/scanner0" (or other device file)
Some systems use a kernel driver to access usb scanners. This method is untested.
The only configuration option supported is "buffer-size=xxx", allowing you to set the number of bytes in the data buffer to something other than the compiled-in default, 65536 (64K). Some users report that their scanner will "hang" mid-page, or fail to transmit the image if the buffer is not large enough.
Note: This option may appear multiple times in the configuration file. It only applies to scanners discovered by 'scsi/usb' lines that follow this option.
Note: The backend does not place an upper bound on this value, as some users required it to be quite large. Values above the default are not recommended, and may crash your OS or lockup your scsi card driver. You have been warned.

ENVIRONMENT

The backend uses a single environment variable, SANE_DEBUG_FUJITSU, which enables debugging output to stderr. Valid values are:
5 Errors
 
10 Function trace
 
15 Function detail
 
20 Option commands
 
25 SCSI/USB trace
 
30 SCSI/USB writes
 
31 SCSI/USB reads
 
35 Useless noise
 

KNOWN ISSUES

Flatbed units may fail to scan at maximum area, particularly at high resolution.
Any model that does not support VPD during inquiry will not function until an override is added to the backend.
CCITT Fax compression used by older scanners is not supported.
JPEG output is supported by the backend, but not by the SANE protocol, so is disabled in this release. It can be enabled if you rebuild from source.
Network interfaces are not supported on any scanner model.
 

CREDITS

m3091 backend: Frederik Ramm <frederik a t remote d o t org>
 
m3096g backend: Randolph Bentson <bentson a t holmsjoen d o t com>
 

(with credit to the unnamed author of the coolscan driver)
 
fujitsu backend, m3093, fi-4340C, ipc, cmp, long-time maintainer:
 

Oliver Schirrmeister <oschirr a t abm d o t de>
 
m3092: Mario Goppold <mgoppold a t tbzpariv d o t tcc-chemnitz dot de>
 
fi-4220C and basic USB support: Ron Cemer <ron a t roncemer d o t com>
 
fi-4120, fi-series color, backend re-write, jpeg, current maintainer:
m. allan noah: <kitno455 a t gmail d o t com>
 
JPEG output and low memory usage support funded by:
Archivista GmbH www.archivista.ch
 
Endorser support funded by:
O A S Oilfield Accounting Service Ltd
1500, 840 - 7th Avenue S.W.
Calgary, Alberta
T2P 3G2 Canada
1-403-263-2600 www.oas.ca
 
Automatic length detection support funded by:
Martin G. Miller mgmiller at optonline.net
 
Hardware donated, software image enhancement and fi-6/7xxx support funded by:
PFU America, Inc. fujitsuscanners.com
 
iX500 support funded by:
Prefix Computer Services www.prefixservice.com
 

SEE ALSO

sane(7), sane-scsi(5), sane-usb(5), sane-sp15c(5), sane-avision(5), sane-epjitsu(5)
 

AUTHOR

m. allan noah: <kitno455 a t gmail d o t com>

Recommended readings

Pages related to sane-fujitsu you should read also: