sane-mustek_usb - SANE backend for Mustek USB flatbed scanners
The sane-mustek_usb library implements a SANE (Scanner Access Now Easy)
backend that provides access to Mustek (and some relabeled Trust) USB
flatbed scanners. At present, the following scanners are known to work
more or less with this backend:
Mustek 600 CU
Mustek 1200 UB
Mustek 1200 CU
Mustek 1200 CU Plus
Trust Compact Scan USB 19200
More details can be found on the Mustek backend homepage
The Mustek BearPaw 1200 and 2400 scanners are supported by the plustek
backend. See sane-plustek(5) for details.
This backend is based on the 1200ub backend provided by Mustek. It was
modified to fit into the SANE distribution, some bugs were fixed, support
for the 600 CU was added, and some features added.
This is BETA software. It currently only works on Linux and FreeBSD.
Other systems are untested. See BUGS for more information.
This backend can only work with scanners that are already detected by
the operating system. For Linux, it may be necessary to load the scanner
module with additional vendor/product parameters /see
/usr/src/linux/Documentation/usb/scanner.txt for details). With FreeBSD
upto 4.4 only the 1200 CU will work out-of-the box. For other scanners,
their ids must be added to the FreeBSD uscanner.c file and a new kernel
must be compiled.
If you own a Mustek (or Trust) scanner other than the ones listed above
that works with this backend, please let me know this by sending the
scanner's exact model name and the USB vendor and device ids (e.g. from
/proc/bus/usb/devices or syslog) to me.
This backend expects device names of the form:
Where special is a path-name for the special device that corresponds to
a USB scanner. With Linux, such a device name could be /dev/usb/scan-
ner0 or /dev/usbscanner1, for example.
For FreeBSD use /dev/uscanner0.
The contents of the mustek_usb.conf file is a list of options and
device names that correspond to Mustek USB scanners. Empty lines and
lines starting with a hash mark (#) are ignored. If a device name is
placed in mustek_usb.conf, it must be followed by a line containing the
keyword option and an option specifying the scanner type. The following
options can be used: 600cu, 1200cu, 1200cu_plus, 1200ub. For the Trust
Compact Scan USB 19200 use `option 1200ub'.
Instead of using the device name, the scanner can be autodetected by
usb vendor_id product_id statements which are already included into
mustek_usb.conf. This is only supported with Linux 2.4.8 and higher.
"vendor_id" and "product_id" are hexadecimal numbers that identfy the
scanner. If this doesn't work, a device name and the option specifying
the scanner type must be placed in mustek_usb.conf.
The global option max_block_size can be used to limit the amount of
data acquired in one turn from the USB system. It may be woth trying,
if USB errors occur.
A sample configuration file is shown below:
option max_block_size 1024
usb 0x055f 0x0001
The first line is ignored. The second line sets the buffer size to a
maximum of 1024 bytes. The third line tries to autodetect a scanner
with vendor id 0x055f and product id 0x0001 (Mustek 1200 CU). The
fourth line tells the backend to attach to /dev/usb/scanner0 and the
fifth line specifies that /dev/usb/scanner0 is a Mustek 600 CU.
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 configuration
file is searched in two default directories: first, the
current working directory (".") and then in /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 directories. For example, setting
SANE_CONFIG_DIR to "/tmp/config:" would result in directories
"tmp/config", ".", and "/etc/sane.d" being searched (in this
SANE_DEBUG_MUSTEK_USB [Toc] [Back]
If the library was compiled with debug support enabled, this
environment variable controls the debug level for this backend.
Higher debug levels increase the verbosity of the output.
0 no output
1 print fatal errors
2 print important messages
3 print non-fatal errors and less important messages
4 print all but debugging messages
5 print high level debugging messages
6 print medium level debugging messages
7 print low level debugging messages
sane(7), sane-usb(5), sane-mustek(5), sane-mustek_pp(5), sane-plustek(5)
Tom Wang (Mustek, original 1200ub backend), Henning Meier-Geinitz <email@example.com>
This is BETA software. That means that it may contain bugs.
FreeBSD support is shaky. Most of the time, scanning will work only in
the first xscanimage/xsane session. After closing the frontend, the
scanner will freeze. The reason is unknown until now.
More detailed bug information is available at the Mustek backend homepage
http://www.meier-geinitz.de/sane/. See also the CHANGES and TODO
files. Please contact me if you find a bug or missing feature: <firstname.lastname@example.org>
12 Jan 2002 sane-mustek(5)
[ Back ]