1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
4   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5   <meta name="Author" content="Oliver Rauch">
6   <meta name="Description" content="unix scanner driver for UMAX scanners">
7   <title>SANE-umax - Configuration</title>
8</head>
9<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000">
10
11
12<table>
13<tr>
14<td width=200>
15<img SRC="sane-logo.jpg" alt="SANE-logo" hspace=60 align=BOTTOM>
16<br>
17<img SRC="sane-umax-text.jpg" alt="UMAX-logo" HSPACE=50>
18</td>
19<td>
20<blockquote>
21<h1><font color="#009900">Configuration</font></h1>
22</blockquote>
23</td>
24</tr>
25</table>
26
27
28<hr WIDTH="100%">
29
30<table>
31<tr>
32<td VALIGN=TOP WIDTH="250" BGCOLOR="#E0E0FF">
33<br>
34<ul>
35<li><a href="sane-umax-doc.html">Index</a></li>
36
37<li>
38Frontend options:
39<ul>
40<li><a href="sane-umax-standard-options-doc.html">Standard options</a></li>
41<li><a href="sane-umax-advanced-options-doc.html">Advanced options</a></li>
42</ul>
43</li>
44
45<li>
46Supported scanners:
47<ul>
48<li><a href="sane-umax-powerlook-doc.html">Power Look series</a></li>
49<li><a href="sane-umax-mirage-doc.html">Mirage series</a></li>
50<li><a href="sane-umax-astra-doc.html">Astra series</a></li>
51<li><a href="sane-umax-vista-doc.html">Vista series</a></li>
52<li><a href="sane-umax-uc-doc.html">UC series</a></li>
53<li><a href="sane-umax-others-doc.html">others</a></li>
54<li><a href="sane-umax-not-listed-doc.html">Not listed scanners</a></li>
55<li><a href="sane-umax-scanner-clones-doc.html">UMAX scanner clones</a></li>
56</ul>
57</li>
58
59<li><a href="sane-umax-parport-doc.html">UMAX parallel port scanners</a></li>
60<li><a href="sane-umax-config-doc.html">Configuration</a></li>
61<li><a href="sane-umax-speed-doc.html">Speed of UMAX scanners</a></li>
62<li><a href="http://www.rauch-domain.de/sane-umax">SANE-umax homepage</a></li>
63<li><a href="http://www.sane-project.org">SANE homepage</a></li>
64<li><a href="http://www.xsane.org/">XSane homepage</a></li>
65</ul>
66<br>
67</td>
68
69
70<td VALIGN=TOP BGCOLOR="#FFFFFF">
71<blockquote>
72<br>
73<h2>
74CONFIGURATION:
75</h2>
76
77<blockquote>The configuration file for this backend resides in
78<dl>
79<dd>
80/usr/local/etc/sane.d/umax.conf.
81</dd>
82</dl>
83</blockquote>
84
85<blockquote>
86Its contents is a list of options and device names that correspond to UMAX
87scanners. Empty lines and lines starting with a hash mark (#) are ignored.
88A sample configuration file is shown below:
89<br>
90<dl>
91<dd>option scsi-buffer-size-min 65536</dd>
92<dd>option scsi-buffer-size-max 131072</dd>
93<dd>option scan-lines 40</dd>
94<dd>option preview-lines 10</dd>
95<dd>option scsi-maxqueue 2</dd>
96<dd>option handle-bad-sense-error 0</dd>
97<dd>option execute-request-sense 0</dd>
98<dd>option force-preview-bit-rgb 0</dd>
99<dd>option slow-speed -1</dd>
100<dd>option care-about-smearing -1</dd>
101<dd>option calibration-full-ccd -1</dd>
102<dd>option calibration-width-offset -1</dd>
103<dd>option calibration-bytes-pixel -1</dd>
104<dd>option invert-shading-data -1</dd>
105<dd>option lamp-control-available 0</dd>
106<dd>#scsi Vendor Model Type Bus Channel ID LUN</dd>
107<dd>scsi UMAX * Scanner * * * * *</dd>
108<dd>/dev/scanner</dd>
109<dd># this is a comment</dd>
110<dd>/dev/sge</dd>
111</dl>
112</blockquote>
113
114<blockquote>
115The special device name must be a generic SCSI device or a
116symlink to such a device. To find out to which device your scanner is assigned
117and how you have to set the permissions of that device, have a look at
118<a href="http://www.sane-project.org/man/sane-scsi.5.html">sane-scsi</a>.
119</blockquote>
120
121<blockquote>
122When the generic scsi driver of the system supports selection
123of scsi buffer sizes the umax backend calculates the scsi buffer
124sizes in dependence of the numbers of bytes per scanline.
125With <i>scsi-buffer-size-min</i> and <i>scsi-buffer-size-max</i>
126the scsi buffer size can be defined in a range between 4KB and 1MB.
127Especially the minimum value is very important. If this value is
128set too small the backend is not able to send gamma tables to the
129scanner or to do a correct color calibration. This may result in
130strange color effects. If the minimum value is set too large then
131the backend is not able to allocate the requested scsi buffer size
132and aborts with out of memory error. The default is 32KB, for
133some scanners it should be increased to 64KB.
134
135<p>
136The option <i>scan-lines</i> defines the number of lines that
137shall be scanned with one scsi read command for a real scan.
138The number of lines that are read with one scsi command for
139preview scans are defined by the option <i>preview-lines</i>.
140Both have to be in the range between 1 and 65536.
141<p>
142With the option <i>scsi-maxqueue</i> you can define the number
143of scsi commands that shall be queued. UMAX scanners do not
144support command queueing - as far as I know. But some scsi controller
145drivers do support queueing in the kernel. In this case it does not
146make sense to queue more than 2 commands.
147<p>
148When you are able to do color previews but color scans do not
149work you can set the option <i>force-preview-bit-rgb 1</i>.
150This always sets the preview bit when acquiring a color scan.
151The image quality may be reduced.
152<p>
153Some scanners (especially very old scanners) may need the options
154<i>slow-speed</i> and/or <i>care-about-smearing</i>. The value
155-1 uses the value defined by the driver, 0 disables the feature,
1561 enables the feature. <b>Do not change these options unless
157you really know what you do, you can destroy your scanner
158by setting wrong values for this options!!!</b>
159<p>
160Some scsi drivers (or may be some scanners) do return an invalid
161error code when a scsi command is executed. There are different
162ways to handle such bad error codes. You can define the behaviour
163of the umax-backend by setting the option <i>handle-bad-sense-error</i>
164in umax.conf. You can set the following values:<br>
165<dl>
166<dd>0 : handle as device busy</dd>
167<dd>1 : handle as ok</dd>
168<dd>2 : handle as i/o error</dd>
169<dd>3 : ignore bad error code, continue sense handler</dd>
170</dl>
171In most cases it does work when this condition is handled as a
172device busy state so this is the default (0).
173<p>
174The option <i>execute-request-sense</i> disables(0) or enables(1)
175the scsi command REQUEST_SENSE. The command can be called when the
176scanner asks the driver to do calibration. The driver does
177not know the required calibration parameters for all scanners.
178Some scanners return the needed parameters when the driver
179executes the REQUEST_SENSE command. But there is a problem
180with the REQUEST_SENSE command on some systems with some
181scsi controller drivers. This can cause a system hang.
182So the safe way is to disable the REQUEST_SENSE command,
183but the driver may not be able to do correct calibration
184in this case.
185<p>
186For some scanners the calibration has to be done by the driver.
187For this the driver has to know some values about the calibration
188data. When the REQUEST_SENSE command is disabled or the scanner
189does not return the correct data the driver needs to know the
190correct parameters. For some scanners the parameters are stored
191in the driver. When these values are not set correct the image
192might look very strange. To be sure that you have a problem
193with the calibration please enable debug output.
194<p>
195<i>calibration-full-ccd</i>:<br>
196The calibration can be done for each element of the CCD (1)
197or for each pixel of the requested image(0).
198The value -1 enables the value defined in the driver.
199<p>
200<i>calibration-width-offset</i>:<br>
201Some scanners use more pixels than calculated by image/CCD
202parameters. A value larger or equal 0 defines the offset.
203The value -1 enables the value defined in the driver.
204<p>
205<i>calibration-bytes-pixel</i>:<br>
206Some scanners use 1 byte calibration data although the
207scanner supports more than 8 bits/pixel. You can define
2081 or 2 bytes per pixel calinration data.
209The value -1 enables the value defined in the driver.
210<p>
211<i>invert-shading-data</i>:<br>
212Some scanners need inverted shading data (1), others
213need original shading data (0).
214The value -1 enables the value defined in the driver.
215
216</blockquote>
217
218<h2>
219SCSI ADAPTER TIPS:</h2>
220
221<blockquote>
222The UMAX-scanners do block the scsi-bus for a few seconds while
223scanning. It is not necessary to connect the scanner to its own SCSI-adapter.
224But if you need short response time for your SCSI-harddisk (e.g. if your
225computer is a file-server), I suggest you use an own SCSI-adapter for your
226UMAX-scanner.
227</blockquote>
228
229<blockquote>
230The SCSI-adapters that are shipped with some Umax-scanners
231are very simple ones. I suggest not to use them. If you really want to
232try: the UDS-IS11 uses a DTC3181E chip (compatible to NCR5380). On linux
233you may have the chance to get it work with the recent g_NCR5380-driver.
234The card does not have IRQ/DMA. Try the following option for kernel boot
235option:
236<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dtc_3181e=0x280,255
237<p>&nbsp;or use the following command:
238<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; insmod g_NCR5380 ncr_irq=255
239ncr_addr=0x280 dtc_3181e=1
240<p>&nbsp;&nbsp;&nbsp;&nbsp; - ncr_irq=255 : no IRQ, no DMA
241<br>&nbsp;&nbsp;&nbsp;&nbsp; - ncr_irq=254 : autoprobe IRQ
242<br>&nbsp;&nbsp;&nbsp;&nbsp; - ncr_addr : can be: 0x220 0x240 0x280 0x2A0 0x2C0 0x300 0x320 0x340
243<br>&nbsp;
244<p>
245For
246<a href="http://support.umax.co.uk/technotes/f096B.htm">information about the umax-scsi-cards</a>
247take a look here.
248</blockquote>
249
250<blockquote>
251See the relevant hardware FAQs and HOWTOs for your platform
252for more information.
253<br>See also: <a href="http://www.sane-project.org/man/sane-scsi.5.html">sane-scsi</a>
254</blockquote>
255
256<h2>FILES:</h2>
257
258<blockquote>
259<ul>
260<li>The backend configuration file: /usr/local/etc/sane.d/umax.conf</li>
261<li>The static library implementing this backend: /usr/local/lib/sane/libsane-umax.a</li>
262<li>
263The shared library implementing this backend : /usr/local/lib/sane/libsane-umax.so<br>
264(present on systems that support dynamic loading)
265</li>
266</ul>
267</blockquote>
268
269<h2>ENVIRONMENT:</h2>
270
271<blockquote>
272<ul>
273<li>SANE_DEBUG_UMAX</li>
274</ul>
275</blockquote>
276
277<blockquote>
278If the library was compiled with debug support enabled, this
279environment variable controls the debug level for this backend. E.g., a
280value of 128 requests all debug output to be printed. Smaller levels reduce
281verbosity:
282</blockquote>
283
284<center>
285<table BORDER>
286<tr BGCOLOR="#40E0D0">
287<td VALIGN=TOP COLSPAN="2"><b><font face="Arial">SANE_DEBUG_UMAX values</font></b></td>
288</tr>
289
290<tr>
291<td WIDTH="10%">
292<address>
293<b>Number</b></address>
294</td>
295
296<td WIDTH="90%">
297<address>
298<b>Remark</b></address>
299</td>
300</tr>
301
302<tr>
303<td>
304<address>
3050</address>
306</td>
307
308<td>print important errors (printed each time)</td>
309</tr>
310
311<tr>
312<td>
313<address>
3141</address>
315</td>
316
317<td>print errors</td>
318</tr>
319
320<tr>
321<td>2</td>
322
323<td>print sense</td>
324</tr>
325
326<tr>
327<td>
328<address>
3293</address>
330</td>
331
332<td>print warnings</td>
333</tr>
334
335<tr>
336<td>4</td>
337
338<td>print scanner-inquiry</td>
339</tr>
340
341<tr>
342<td>
343<address>
3445</address>
345</td>
346
347<td>print information</td>
348</tr>
349
350<tr>
351<td>6</td>
352
353<td>print less important information</td>
354</tr>
355
356<tr>
357<td>7</td>
358
359<td>print called procedures</td>
360</tr>
361
362<tr>
363<td>8</td>
364
365<td>print reader_process messages</td>
366</tr>
367
368<tr>
369<td>
370<address>
37110</address>
372</td>
373
374<td>print called sane-init-routines</td>
375</tr>
376
377<tr>
378<td>
379<address>
38011</address>
381</td>
382
383<td>print called sane-procedures</td>
384</tr>
385
386<tr>
387<td>
388<address>
38912</address>
390</td>
391
392<td>print sane-infos</td>
393</tr>
394
395<tr>
396<td>
397<address>
39813</address>
399</td>
400
401<td>print sane option control messages</td>
402</tr>
403</table></center>
404
405<h4>Example:</h4>
406
407<blockquote>
408export SANE_DEBUG_UMAX=8
409</blockquote>
410
411<center>
412<hr WIDTH="100%">
413<br>
414<font color="#009900">This page has been changed on 27th. february 2001</font>
415<br>
416<br>
417</center>
418</blockquote>
419
420</td>
421</tr>
422</table>
423
424<hr WIDTH="100%">
425
426<blockquote>
427Author: <a href="mailto:Oliver.Rauch@rauch-domain.de">Oliver Rauch</a>
428</blockquote>
429
430</body>
431</html>
432