sane-umax(5)
π NAME π
sane-umax β the SANE backend for UMAX scanners. this is the sane-umax(5) page, and yep, weβre in SANE Scanner Access Now Easy territory, bestie. π
β¨
π¦ ABOUT THIS FILE π¦
okay so this file is only a brief description of the sane-umax backend for SANE! for the detailed tea, take a look at sane-umax-doc.html β itβs included in the sane source directory and in the xsane(1) online help! iykyk π
πΈ DESCRIPTION πΈ
the sane-umax library implements a SANE backend that provides access to several UMAX-SCSI-scanners and some Linotype Hell SCSI-scanners. parallel- and USB-scanners are not (and probably will never be) supported! π
i suggest you hold one hand on the power-button of the scanner while you try the first scans! β‘π
π CONFIGURATION π
the configuration file for this backend resides in /etc/sane.d/umax.conf.
its contents is a list of device names that correspond to UMAX and UMAX compatible scanners. empty lines and lines starting with a hash mark (#) are ignored. a sample configuration file is shown below:
# this is a comment
#
option scsi-maxqueue 4
option scsi-buffer-size-min 65536
option scsi-buffer-size-max 131072
option scan-lines 40
option preview-lines 10
option scsi-maxqueue 2
option execute-request-sense 0
option force-preview-bit-rgb 0
option slow-speed -1
option care-about-smearing -1
option calibration-full-ccd -1
option calibration-width-offset -1
option calibration-bytes-pixel -1
option exposure-time-rgb-bind -1
option invert-shading-data -1
option lamp-control-available 0
option gamma-lsb-padded 0
/dev/sge
#scsi Vendor Model Type Bus Channel ID LUN
# The following scanner supports lamp control
option lamp-control-available 1
scsi UMAX * Scanner * * * * *
# scanner on /dev/scanner does not support lamp control
option lamp-control-available 0
/dev/scanner
the options are giving very important config energy, so hereβs every single one:
execute-request-senseβvalues: 0 = disabled, 1 = enabled;default = 0. if set to1,umax_do_request_sense()is called inumax_do_calibration(). this can hang the system, but it has been enabled until this version. πscsi-buffer-size-min,scsi-buffer-size-maxβvalues: 4096-1048576;default min = 32768, max = 131072. especially the minimum value is very important. if this value is set too small, the backend is not able to send gamma tables to the scanner or to do a correct color calibration. this may result in strange color effects. if the minimum value is set too large, the backend is not able to allocate the requested SCSI buffer size and aborts with out of memory error. the default is32KB; for some scanners it should be increased to64KB.scan-lines,preview-linesβvalues: 1-65535;default: scan-lines = 40, preview-lines = 10. define the maximum number of lines that are scanned into one buffer.force-preview-bit-rgbβvalues: 0 = disabled, 1 = enabled;default = 0. set preview bit in rgb real scan.slow-speed,care-about-smearingβvalues: -1 = auto, 0 = disabled, 1 = enabled;default = -1. dangerous options, needed for some scanners. do not change these options unless you really know what you are doing, otherwise you may destroy your scanner with invalid values. πβ οΈcalibration-full-ccdβvalues: -1 = auto, 0 = disabled, 1 = enabled;default = -1. do calibration for each pixel of ccd instead of selected image.calibration-width-offsetβvalues: -99999 = auto, > -99999 set value. add an offset to the calculated width for image/ccd.calibration-bytes-pixelβvalues: -1 = disabled, 0 = not set, 1 = 1 byte/pixel, 2 = 2 bytes/pixel. use#bytes per pixel for calibration.exposure-time-rgb-bindβvalues: -1 = automatically set by driver - if known, 0 = disabled (own selection for red, green and blue), 1 = enabled (same values for red, green and blue).invert-shading-dataβvalues: -1 = automatically set by driver - if known, 0 = disabled, 1 = enabled;default = -1. invert shading data before sending it back to the scanner.lamp-control-availableβvalues: 0 = automatically set by driver - if known, 1 = available;default = 0.gamma-lsb-paddedβvalues: -1 = automatically set by driver - if known, 0 = gamma data is msb padded, 1 = gamma data is lsb padded;default = -1.handle-bad-sense-errorβvalues: 0 = handle as device busy, 1 = handle as ok, 2 = handle as i/o error, 3 = ignore bad error code - continue sense handler;default = 0.scsi-maxqueueβvalues: 1..# (maximum defined at compile time);default = 2. most SCSI drivers allow internal command queueing with a depth of2commands. in most cases it does not improve anything when you increase this value. when your SCSI driver does not support any command queueing you can try to set this value to1.
the special device name must be a generic SCSI device or a symlink to such a device. to find out to which device your scanner is assigned and how you have to set the permissions of that device, have a look at sane-scsi(5). π
π SCSI ADAPTER TIPS π
the ISA-SCSI-adapters that are shipped with some UMAX-scanners are not supported very well by Linux (i suggest not to use it), the PCI-SCSI-adapters that come with some UMAX-scanners are not supported at all (as far as i know). on other platforms these SCSI-adapters are not supported. so you typically need to purchase another SCSI-adapter that is supported by your platform. see the relevant hardware FAQs and HOWTOs for your platform for more information. π οΈ
the UMAX-scanners do block the SCSI-bus for a few seconds while scanning. it is not necessary to connect the scanner to its own SCSI-adapter. but if you need short response time for your SCSI-harddisk (e.g. if your computer is a file-server) or other SCSI devices, i suggest you use an own SCSI-adapter for your UMAX-scanner. π₯οΈβ¨
if you have any problems with your UMAX scanner, check your SCSI chain (cable length, termination, ...). π
see also: sane-scsi(5)
π FILES π
- the backend configuration file:
/etc/sane.d/umax.conf - the static library implementing this backend:
/usr/lib64/sane/libsane-umax.a - the shared library implementing this backend:
/usr/lib64/sane/libsane-umax.so(present on systems that support dynamic loading)
π§ ENVIRONMENT π§
SANE_DEBUG_UMAX β 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. SANE_DEBUG_UMAX values:
0β print important errors (printed each time)1β print errors2β print sense3β print warnings4β print scanner-inquiry5β print information6β print less important information7β print called procedures8β print reader_process messages10β print called sane-init-routines11β print called sane-procedures12β print sane infos13β print sane option-control messages
example:
export SANE_DEBUG_UMAX=8
π BUGS π
X-resolutions greater than 600 dpi sometimes cause problems. π¬
π SEE ALSO π
π«Ά AUTHOR π«Ά
Oliver Rauch
π EMAIL-CONTACT π
Oliver.Rauch@Rauch-Domain.DE
okay thatβs the whole page, bestie! π cute sign-off time: source/version is sane-umax(5), dated 14 Jul 2008. now go forth and scan responsibly! πβ¨
π¦ where this page comes from
- centos-stream 10: sane-backends 1.2.1-10.el10 Β· 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 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
- 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
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms