sane-fujitsu(5)
π NAME π
sane-fujitsu β the SANE backend for Fujitsu and Ricoh fi series scanners, bestie. yes it's a manual page, no it's not boring, stay with me π
β¨ DESCRIPTION β¨
okay so the sane-fujitsu library is a SANE (Scanner Access Now Easy, iconic name honestly) backend, and it gives you access to most Fujitsu flatbed and ADF scanners, plus the Ricoh models that came after them. slay.
This doc right here describes backend version 140. π
π SUPPORTED HARDWARE π
This version supports every known model that speaks the Fujitsu SCSI and SCSI-over-USB protocols. fr fr, all of them. Specifically:
- the SCSI
M309xandM409xseries - the SCSI fi-series
- most of the USB fi-, ScanSnap, & iX series scanners
The full list lives at http://www.sane-project.org/sane-supported-devices.html if you wanna go look, bestie. π
This backend may also support other Fujitsu or newer Ricoh scanners β the way to find out is literally just to test the scanner directly, or to collect a trace of the windows driver in action. Please contact the author for help or with your test results, they want the data π«Ά
π UNSUPPORTED HARDWARE π
These scanners are known NOT to work with this backend. not a vibe check fail on your part, it's just that they have an unsupported chipset, or an unsupported interface type. Some of them may be supported by another backend, so don't fully spiral.
--------------------------------------
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 these:
source sβ picks the source for the scan. Options may include"Flatbed","ADF Front","ADF Back","ADF Duplex","Card Front","Card Back","Card Duplex". yes, duplex is the main character here.mode mβ picks the mode for the scan. Options may include"Lineart","Halftone","Gray", and"Color".resolution,y-resolutionβ controls scan resolution. Setting--resolutionalso sets--y-resolution, though this behavior is overridden by some frontends. (frontends stay meddling, smh)tl-x,tl-y,br-x,br-yβ sets the scan area upper left and lower right coordinates. These get renamed tot,l,x,yby some frontends. rude but okay.page-width,page-heightβ sets paper size. The scanner uses this 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, and those with a printer will have a whole group of endorser options. it's giving build-your-own-adventure π
π¦ the 'software' 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, which lets smaller machines have similar capabilities. so cute of them.
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. goodbye dead space β¨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 ofXdiameter 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. iykyk.
π 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. no cap, zero 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 supported 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
(35 really said "useless noise" and meant it. iconic.)
π 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. not even a little bit.
π CREDITS π
the whole squad, in order:
- 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>
okay that's the whole page, you ate it, go scan something gorgeous π this was version 140 of the backend, page dated 24 Mar 2023, and yes bestie this is sane-fujitsu(5), mwah πβ¨
π¦ where this page comes from
- alpine 3.24: sane-doc 1.4.0-r4 Β· GPL-2.0-or-later GPL-2.0-or-later-with-sane-exception Public-Domain
- arch rolling: sane 1.4.0-4 Β· GPL-2.0-or-later AND LicenseRef-GPL-2.0-or-later-with-linking-exception
- debian trixie: libsane-common 1.3.1-3 Β· GPL-2.0-or-later WITH sane exception
- fedora 43: sane-backends 1.4.0-4.fc43 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- fedora 44: sane-backends 1.4.0-6.fc44 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- nixos 26.05: sane-backends 1.4.0
- nixpkgs unstable: sane-backends 1.4.0
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- ubuntu questing: libsane-common 1.3.1-4build1
- ubuntu resolute: libsane-common 1.4.0-1ubuntu1 Β· GPL-2.0-or-later WITH sane exception
- ubuntu stonking: libsane-common 1.4.0-1ubuntu2 Β· GPL-2.0-or-later WITH sane exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms