1sane-mustek_pp(5) File Formats Manual sane-mustek_pp(5)
2
3
4
6 sane-mustek_pp - SANE backend for Mustek parallel port flatbed scanners
7
9 The sane-mustek_pp library implements a SANE (Scanner Access Now Easy)
10 backend that provides access to Mustek parallel port flatbed scanners
11 and OEM versions.
12
13 There are 2 classes of Mustek parallel port scanners: regular CCD (cold
14 cathode device) scanners and CIS (contact image sensor) scanners.
15
16 The current version of this backend supports both CCD type scanners and
17 CIS type scanners.
18
19 The following scanners might work with this backend:
20
21
22 CCD scanners
23
24 Model: ASIC ID: CCD Type: works:
25 -------------------- --------- ---------- -------
26 SE 6000 P 1013 00 yes
27 SM 4800 P 1013/1015 04/01 yes
28 SE 1200 ED Plus 1015 01 no
29 SM 1200 ED Plus 1015 01 no
30 SE 12000 P 1505 05 no
31 600 III EP Plus 1013/1015 00/01 yes
32 SE 600 SEP 1013 ?? yes
33 600 II EP ???? ?? no
34 MD9848 1015 00 yes
35 Gallery 4800 ???? ?? yes
36 Viviscan Compact II 1013 00 yes
37
38 CIS scanners
39
40 Model: ASIC ID: works:
41 --------------------- --------- -------
42 Mustek 600 CP & 96 CP 1015 yes (*)
43 Mustek 1200 CP 1015 yes
44 Mustek 1200 CP+ 1015 yes
45
46 OEM versions Original works
47 --------------------- --------- ----------
48 Medion/LifeTec/Tevion
49 MD/LT 9350/9351 1200 CP yes
50 MD/LT 9850/9851 1200 CP maybe (**)
51 MD/LT 9858 1200 CP probably
52 MD/LT 9890/9891 1200 CP yes
53 Targa
54 Funline TS12EP 1200 CP yes
55 Funline TS6EP 600 CP yes
56 Trust
57 Easy Connect 9600+ 600 CP yes
58 Cybercom
59 9352 1200 CP yes (***)
60
61
62 (*) Calibration problems existed with earlier version of this
63 driver. They seem to be solved now.
64
65 (**) Problems have been reported in the past for the MD/LT9850 type
66 (striped scans, head moving in wrong direction at some resolu‐
67 tions). It is not known whether the current version of the
68 driver still has these problems.
69 IF YOU HEAR LOUD CLICKING NOISES, IMMEDIATELY UNPLUG THE SCANNER
70 ! (This holds for any type of scanner).
71
72 (***) Possibly, the engine_delay parameter has to be set to 1 ms for
73 accurate engine movements.
74
75 Please note that this backend is still under construction. Certain mod‐
76 els are currently not supported and some may never be because the com‐
77 munication protocol is still unknown (eg., SE 12000 P).
78
79 Some scanners work faster when EPP/ECP is enabled in the BIOS. EPP mode
80 however may lead to hard-locks on some Linux systems. If that is the
81 case for you, you can either disable ECP/EPP in your BIOS or disable it
82 in the backend itself (see GLOBAL OPTIONS).
83
84 Note that the backend needs to run as root or has to have appropriate
85 access rights to /dev/parport* if libieee1284 support is compiled in.
86 To allow user access to the scanner run the backend through the network
87 interface (See saned(8) and sane-net(5)). Note also that the backend
88 does not support parport sharing, i.e. if you try printing while scan‐
89 ning, your computer may crash. To enable parport sharing, you have to
90 enable libieee1284 at compile time. This backend also conflicts with
91 the sane-musteka4s2 backend. You can only enable one of them in your
92 dll.conf. However, you have to enable the backend explicitly in your
93 dll.conf, just remove the hash mark in the line "mustek_pp".
94
95
97 This backend allows multiple devices being defined and configured via
98 the mustek_pp.conf file (even simultaneously, provided that they are
99 connected to different parallel ports). Please make sure to edit this
100 file before you use the backend.
101
102 A device can be defined as follows:
103
104 scanner <name> <port name> <driver>
105
106 where
107
108 <name> is an arbitrary name for the device, optionally enclosed by dou‐
109 ble quotes, for instance "LifeTec 9350".
110
111 <port name> is the name of the parallel port to which the device is
112 connected. In case libieee1284 is used for communication with
113 the port (default setup), valid port names are parport0, par‐
114 port1, and parport2.
115
116 In case the backend is configured for raw IO (old setup), port
117 addresses have to be used instead of port names: 0x378, 0x278,
118 or 0x3BC. The mapping of parallel ports (lp0, lp1, and lp2) to
119 these addresses can be different for different Linux kernel ver‐
120 sions. For instance, if you are using a Kernel 2.2.x or better
121 and you have only one parallel port, this port is named lp0
122 regardless of the base address. However, this backend requires
123 the base address of your port. If you are not sure which port
124 your scanner is connected to, have a look at your /etc/conf.mod‐
125 ules, /etc/modules.conf and/or /proc/ioports.
126
127 If you are unsure which port to use, you can use the magic value
128 * to probe for your scanner.
129
130 <driver> is the driver to use for this device. Currently available
131 drivers are:
132
133 cis600 : for 600 CP, 96 CP & OEM versions
134 cis1200 : for 1200 CP & OEM versions
135 cis1200+ : for 1200 CP+ & OEM versions
136 ccd300 : for 600 IIIE P & OEM version
137
138 Choosing the wrong driver can damage your scanner!
139 Especially, using the 1200CP settings on a 600CP can be harmful.
140 If the scanner starts making a loud noice, turn it off immedi‐
141 ately !!!
142 Using the cis600 driver on a 1200CP or a 1200CP+ is probably not
143 dangerous. The cis1200+ driver also works for the 1200CP, and
144 using the cis1200 driver on a 1200CP+ will typically result in
145 scans that cover only half of the width of the scan area (also
146 not dangerous).
147 If unsure about the exact model of your OEM version, check the
148 optical resolution in the manual or on the box: the 600CP has a
149 maximum optical resolution of 300x600 DPI, whereas the 1200CP
150 and 1200CP+ have a maximum optical resolution of 600x1200 DPI.
151
152
153 Examples:
154
155 scanner "LifeTec 9350" 0x378 cis1200
156
157 scanner Mustek_600CP 0x378 cis600
158
159 scanner Mustek_600IIIEP * ccd300
160
161 If in doubt which port you have to use, or whether your scanner is
162 detected at all, you can use sane-find-scanner -p to probe all config‐
163 ured ports.
164
165
167 The contents of the mustek_pp.conf file is a list of device definitions
168 and device options that correspond to Mustek scanners. Empty lines and
169 lines starting with a hash mark (#) are ignored. Options have the fol‐
170 lowing format:
171
172 option <name> [<value>]
173
174 Depending on the nature of the option, a value may or may not be
175 present. Options always apply to the scanner definition that precedes
176 them. There are no global options. Options are also driver-specific:
177 not all drivers support all possible options.
178
179
180 Common options
181
182 bw <value> Black/white discrimination value to be used during lin‐
183 eart scanning. Pixel values below this value are assumed to
184 be black, values above are assumed to be white.
185 Default value: 127
186 Minimum: 0
187 Maximum: 255
188
189 Example: option bw 150
190
191 CIS driver options
192
193 top_adjust <value> Vertical adjustment of the origin, expressed in
194 millimeter (floating point). This option can be used to
195 calibrate the position of the origin, within certain limits.
196 Note that CIS scanners are probably temperature sensitive,
197 and that a certain inaccuracy may be hard to avoid. Differ‐
198 ences in offset between runs in the order of 1 to 2 mm are
199 not unusual.
200 Default value: 0.0
201 Minimum: -5.0
202 Maximum: 5.0
203
204 Example: option top_adjust -2.5
205
206 slow_skip Turns fast skipping to the start of the scan region off.
207 When the region to scan does not start at the origin, the
208 driver will try to move the scanhead to the start of the
209 scan area at the fastest possible speed. On some models,
210 this may not work, resulting in large inaccuracies (up to
211 centimeters). By setting this option, the driver is forced
212 to use normal speed during skipping, which can circumvent
213 the accuracy problems. Currently, there are no models for
214 which these inaccuracy problems are known to occur.
215 By default, fast skipping is used.
216
217 Example: option slow_skip
218
219 engine_delay <value> Under normal circumstances, it is sufficient
220 for the driver to wait for the scanner signaling that the
221 engine is stable, before a new engine command can be trans‐
222 mitted. In rare cases, certain scanners and/or parallel port
223 chipsets appear to prevent reliable detection of the engine
224 state. As a result, engine commands are transmitted too soon
225 and the movement of the scanner head becomes unreliable.
226 Inaccuracies ranging up to 10 cm over the whole vertical
227 scan range have been reported. To work around this problem,
228 the engine_delay option can be set. If it is set, the driver
229 waits an additional amount of time after every engine com‐
230 mand, equal to the engine_delay parameter, expressed in mil‐
231 liseconds. It practice an engine_delay of 1 ms is usually
232 sufficient. The maximum delay is 100 ms.
233 Note that every additional ms of delay can add up to 14 sec‐
234 onds to the total scanning time (highest resolution), so an
235 as small as possible value is preferred.
236 Default value: 0
237 Minimum: 0
238 Maximum: 100
239
240 Example: option engine_delay 1
241
242 CCD driver options
243
244 top <value> Number of scanlines to skip to the start of the scan
245 area. The number can be any positive integer. Values known
246 to me are 47 and 56.
247 Default value: 47
248 Minimum: 0
249 Maximum: none
250
251 Example: option top 56
252
253 waitbank <value> The number of usecs to wait for a bank change. You
254 should not touch this value actually. May be any positive
255 integer
256 Default value: 700
257 Minimum: 0
258 Maximum: none
259
260 Example: option waitbank 700
261
262 A sample configuration file is shown below:
263
264 #
265 # LifeTec/Medion 9350 on port 0x378
266 #
267 scanner "LifeTec 9350" 0x378 cis1200
268
269 # Some calibration options (examples!).
270 option bw 127
271 option top_skip -0.8
272
273 #
274 # A Mustek 600CP on port 0x3BC
275 #
276 scanner "Mustek 600CP" 0x3BC cis600
277
278 # Some calibration options (examples!).
279 option bw 120
280 option top_skip 1.2
281
282 #
283 # A Mustek 1200CP+ on port 0x278
284 #
285 scanner "Mustek 1200CP plus" 0x278 cis1200+
286
287 # Some calibration options (examples!).
288 option bw 130
289 option top_skip 0.2
290
291 #
292 # A Mustek 600 III EPP on port parport0
293 #
294 scanner "Mustek 600 III EPP" parport0 ccd300
295
296 # Some calibration options (examples!).
297 option bw 130
298 option top 56
299
300
302 You can control the overall behaviour of the mustek_pp backend by
303 global options which precede any scanner definition in the
304 mustek_pp.conf file.
305 Currently, there is only one global option:
306
307
308 Global options
309
310 no_epp Disable parallel port mode EPP: works around a known bug in
311 the Linux parport code. Enable this option, if the backend
312 hangs when trying to access the parallel port in EPP mode.
313 Default value: use EPP
314
315 Example: option no_epp
316
318 /etc/sane.d/mustek_pp.conf
319 The backend configuration file (see also description of
320 SANE_CONFIG_DIR below).
321
322 /usr/lib*/sane/libsane-mustek_pp.a
323 The static library implementing this backend.
324
325 /usr/lib*/sane/libsane-mustek_pp.so
326 The shared library implementing this backend (present on systems
327 that support dynamic loading).
328
329
331 SANE_CONFIG_DIR
332 This environment variable specifies the list of directories that
333 may contain the configuration file. Under UNIX, the directories
334 are separated by a colon (`:'), under OS/2, they are separated
335 by a semi-colon (`;'). If this variable is not set, the config‐
336 uration file is searched in two default directories: first, the
337 current working directory (".") and then in /etc/sane.d. If the
338 value of the environment variable ends with the directory sepa‐
339 rator character, then the default directories are searched after
340 the explicitly specified directories. For example, setting
341 SANE_CONFIG_DIR to "/tmp/config:" would result in directories
342 "tmp/config", ".", and "/etc/sane.d" being searched (in this
343 order).
344
345 SANE_DEBUG_MUSTEK_PP
346 If the library was compiled with debug support enabled, this
347 environment variable controls the debug level for this backend.
348 E.g., a value of 128 requests all debug output to be printed.
349 Smaller levels reduce verbosity.
350
351
352 level debug output
353 ------- ------------------------------
354 0 nothing
355 1 errors
356 2 warnings & minor errors
357 3 additional information
358 4 debug information
359 5 code flow (not supported yet)
360 6 special debug information
361
362 SANE_DEBUG_SANEI_PA4S2
363 This variable sets the debug level for the SANE interface for
364 the Mustek chipset A4S2. Note that enabling this will spam your
365 terminal with some million lines of debug output.
366
367
368 level debug output
369 ------- -------------------------------
370 0 nothing
371 1 errors
372 2 warnings
373 3 things nice to know
374 4 code flow
375 5 detailed code flow
376 6 everything
377
379 sane(7), sane-mustek(5), sane-net(5), saned(8), sane-find-scanner(1)
380
381
382 For latest bug fixes and information see
383 http://www.penguin-breeder.org/sane/mustek_pp/
384
385
386 For additional information on the CIS driver, see
387 http://home.tiscali.be/eddy_de_greef/
388
389
391 Jochen Eisinger <jochen.eisinger@gmx.net>
392 Eddy De Greef <eddy_de_greef at scarlet dot be>
393
394
396 Too many... please send bug reports to sane-
397 devel@lists.alioth.debian.org (note that you have to subscribe first to
398 the list before you can send emails... see http://www.sane-
399 project.org/mailing-lists.html)
400
402 If something doesn't work, please contact us (Jochen for the CCD scan‐
403 ners, Eddy for the CIS scanners). But we need some information about
404 your scanner to be able to help you...
405
406
407 SANE version
408 run "scanimage -V" to determine this
409
410 the backend version and your scanner hardware
411 run "SANE_DEBUG_MUSTEK_PP=128 scanimage -L" as root. If you
412 don't get any output from the mustek_pp backend, make sure a
413 line "mustek_pp" is included into your /etc/sane.d/dll.conf. If
414 your scanner isn't detected, make sure you've defined the right
415 port address in your mustek_pp.conf.
416
417 the name of your scanner/vendor
418 also a worthy information. Please also include the optical reso‐
419 lution and lamp type of your scanner, both can be found in the
420 manual of your scanner.
421
422 any further comments
423 if you have comments about the documentation (what could be done
424 better), or you think I should know something, please include
425 it.
426
427 some nice greetings
428
429
430
431
432 November 17 2003 sane-mustek_pp(5)