1sane-plustek_pp(5) SANE Scanner Access Now Easy sane-plustek_pp(5)
2
3
4
6 sane-plustek_pp - SANE backend for Plustek parallel port flatbed scan‐
7 ners
8
10 The sane-plustek_pp library implements a SANE (Scanner Access Now Easy)
11 backend that provides access to Plustek ASIC 9600[1/3] and P9800[1/3]
12 based parallel port flatbed scanners. The access of the scanner is
13 either done directly by the backend or via kernel module, called pt_drv
14 which can be created out of the plustek_pp backend code - see also sec‐
15 tion BUILDING THE KERNEL MODULE for further information.
16
17
19 At present, the following scanners should work with this backend and/or
20 the kernel module:
21
22 PLUSTEK SCANNERS
23
24 Parallelport Model: ASIC: Properties:
25 ---------------------- ----- ------------------------
26 OpticPro PT12 98003 600x1200 dpi 36bit 512Kb
27 OpticPro P12 98003 600x1200 dpi 36bit 512Kb
28 OpticPro 9636T/12000T 98001 600x1200 dpi 36bit 512Kb
29 OpticPro 12000P Turbo 98001 600x1200 dpi 36bit 512Kb
30 OpticPro 9636P+/Turbo 98001 600x1200 dpi 36bit 512Kb
31 OpticPro 9636P 96003 600x1200 dpi 36bit 128Kb
32 OpticPro 12000P/96000P 96003 600x1200 dpi 36bit 128Kb
33 OpticPro 1236P 96003 600x1200 dpi 30bit 128Kb
34 OpticPro 9600P 96003 600x1200 dpi 30bit 128Kb
35 OpticPro 9630P/FBIV 96003 600x1200 dpi 30bit 128Kb
36 OpticPro 9630PL (14") 96003 600x1200 dpi 30bit 128Kb
37 OpticPro A3I 96003 400x800 dpi 36bit 128Kb
38 OpticPro 600P/6000P 96003 300x600 dpi 30bit 32Kb
39 OpticPro 4831P 96003 300x600 dpi 30bit 32Kb
40 OpticPro 4830P/FBIII 96003 300x600 dpi 30bit 32Kb
41 OpticPro 4800P/FBII 96001 300x600 dpi 24bit 32Kb
42
43 PRIMAX SCANNERS
44
45 There are some scanners sold by Primax, but they are in fact Plustek
46 devices. These scanners are also supported. The following table will
47 show the relationship:
48
49 Model: Plustek Model: Remarks:
50 --------------------------- -------------- ------------
51 Colorado 4800 OpticPro 4800 not tested
52 Compact 4800 Direct OpticPro 600 mov=2
53 Compact 4800 Direct 30bit OpticPro 4830 mov=7
54 Compact 9600 Direct 30bit OpticPro 9630 works
55
56 GENIUS SCANNERS
57
58 The following devices are sold as Genius Scanners, but are in fact
59 Plustek devices. The table will show the relationship:
60
61 Model: Remarks:
62 --------------------------- ----------------------------
63 Colorpage Vivid III V2 Like P12 but has two buttons
64 and Wolfson DAC
65
66 ARIES SCANNERS
67
68 There's one scanner sold as Aries Scanner, but is in fact a Plustek
69 device. The following table will show the relationship:
70
71 Model: Plustek Model: Remarks:
72 --------------------------- -------------- ------------
73 Scan-It 4800 OpticPro 600 mov=2
74
75 BrightScan SCANNERS
76
77 There's one scanner sold as BrightScan OpticPro Scanner, this is also a
78 rebadged Plustek device. The following table will show the relation‐
79 ship:
80
81 Model: Remarks:
82 --------------------------- ----------------------------
83 BrightScan OpticPro OpticPro P12
84
85
87 This backend works in two modes, the so called "direct-mode" and the
88 "kernel-mode". In direct-mode, the user-space backend is used, in ker‐
89 nel-mode, you should have a kernel-module named pt_drv loaded. This
90 backends default device is:
91
92 0x378
93
94 This "default device" will be used, if no configuration file can be
95 found. It is rather the base address of the parallel port on i386
96 machines.
97
98 As the backend supports up to four devices, it is possible to specify
99 them in the configuration file
100
101 /etc/sane.d/plustek_pp.conf
102
103 See this file for examples.
104
106 This section describes the backends' configuration file entries. The
107 file is located at: /etc/sane.d/plustek_pp.conf
108
109 For a proper setup, you will need at least two entries:
110 [direct]
111 device 0x378
112
113 or
114 [kernel]
115 device /dev/pt_drv
116
117 direct tells the backend, that the following devicename (here 0x378)
118 has to be interpreted as parallel port scanner device. In fact it is
119 the address to use, alternatively you can use /dev/parport0 if the
120 backend has been compiled with libieee1284 support. kernel should only
121 be used, when a kernel-module has been built out of the backend
122 sources. See below for more instructions about this.
123
124 Further options:
125
126 option warmup t
127 t specifies the warmup period in seconds
128
129 option lampOff t
130 t is the time in seconds for switching off the lamps in standby
131 mode
132
133 option lOffonEnd b
134 b specifies the behaviour when closing the backend, 1 --> switch
135 lamps off, 0 --> do not change lamp status
136
137 option mov m
138 m is the model override switch, which only works in direct mode.
139
140 m = 0 default: no override
141
142 m = 1 OpticPro 9630PL override (works if OP9630 has been
143 detected) forces legal size (14")
144
145 m = 2 Primax 4800Direct override (works if OP600 has been
146 detected) swaps red/green color
147
148 m = 3 OpticPro 9636 override (works if OP9636 has been
149 detected) disables backends transparency/negative capa‐
150 bilities
151
152 m = 4 OpticPro 9636P override (works if OP9636 has been
153 detected) disables backends transparency/negative capa‐
154 bilities
155
156 m = 5 OpticPro A3I override (works if OP12000 has been
157 detected) enables A3 scanning
158
159 m = 6 OpticPro 4800P override (works if OP600 has been
160 detected) swaps red/green color
161
162 m = 7 Primax 4800Direct 30bit override (works if OP4830 has
163 been detected)
164
165 See the plustek_pp.conf file for examples.
166
168 As mentioned before, the plustek_pp backend code can also be compiled
169 and installed as linux kernel module. To do so, you will need the
170 source-files of this sane-backend installation. Unpack this tar-ball
171 and go to the directory:
172 sane-backends/doc/plustek
173 Within this directory, you should find a script called:
174 MakeModule.sh
175 Now if your Linux kernelsources are installed correctly, it should be
176 possible to build, install and load the module pt_drv. Please note,
177 that the kernelsources need to be configured correctly. Refer to your
178 distributions manual on how this is done. As root user, try
179 ./MakeModule.sh
180 the script will try and get all necessary information about your run‐
181 ning kernel and will lead you through the whole installation process.
182 Note: Installing and loading the can only be done as superuser.
183
185 The configuration of the kernel module is done by providing some or
186 more options found below to the kernel module at load time. This can be
187 done by invoking insmod with the appropriate parameters or appending
188 the options to the file /etc/modules.conf (kernel < 2.6.x) or /etc/mod‐
189 probe.conf (kernel >= 2.6.x)
190
191 The Options:
192 lampoff=lll
193 The value lll tells the driver, after how many seconds to
194 switch-off the lamp(s). The default value is 180. 0 will dis‐
195 able this feature.
196 HINT: Do not use a value that is too small, because often
197 switching on/off the lamps will reduce their lifetime.
198
199 port=ppp
200 ppp specifies the port base address, where the scanner is con‐
201 nected to. The default value is 0x378, which is normally a stan‐
202 dard.
203
204 warmup=www
205 www specifies the time in seconds, how long a lamp has to be on,
206 until the driver will start to scan. The default value is 30.
207
208 lOffonEnd=e
209 e specifies the behaviour when unloading the driver, 1 -->
210 switch lamps off, 0 --> do not change lamp status
211
212 slowIO=s
213 s specifies which I/O functions the driver should use, 1 --> use
214 delayed functions, 0 --> use the non-delayed ones
215
216 forceMode=fm
217 fm specifies port mode which should be used, 0 --> autodetec‐
218 tion, 1 --> use SPP mode and 2 --> use EPP mode
219
220 mov=m
221
222 m = 0 default: no override
223
224 m = 1 OpticPro 9630PL override (works if OP9630 has been
225 detected) forces legal size (14")
226
227 m = 2 Primax 4800Direct override (works if OP600 has been
228 detected) swaps red/green color
229
230 m = 3 OpticPro 9636 override (works if OP9636 has been
231 detected) disables backends transparency/negative capa‐
232 bilities
233
234 m = 4 OpticPro 9636P override (works if OP9636 has been
235 detected) disables backends transparency/negative capa‐
236 bilities
237
238 m = 5 OpticPro A3I override (works if OP12000 has been
239 detected) enables A3 scanning
240
241 m = 6 OpticPro 4800P override (works if OP600 has been
242 detected) swaps red/green color
243
244 m = 7 Primax 4800Direct 30bit override (works if OP4830 has
245 been detected)
246
247 Sample entry for file /etc/modules.conf :
248 alias char-major-40 pt_drv
249 pre-install pt_drv modprobe -k parport
250 options pt_drv lampoff=180 warmup=15 port=0x378 lOffonEnd=0 mov=0
251 slowIO=0 forceMode=0
252
253 For multidevice support, simply add values separated by commas to the
254 different options
255 options pt_drv port=0x378,0x278 mov=0,4 slowIO=0,1 forceMode=0,1
256
257 Remember to call depmod after changing /etc/conf.modules.
258
260 The current driver works best, when the parallel port has been set to
261 EPP-mode. When detecting any other mode such as ECP or PS/2 the driver
262 tries to set to a faster, supported mode. If this fails, it will use
263 the SPP mode, as this mode should work with all Linux supported paral‐
264 lel ports. If in doubt, enter your BIOS and set it to any mode except
265 ECP.
266
267 Former Plustek scanner models (4830, 9630) supplied a ISA parallel port
268 adapter card. This card is not supported by the driver.
269
270 The ASIC 96001/3 based models have sometimes trouble with high resolu‐
271 tion modes. If you encounter sporadic corrupted images (parts dupli‐
272 cated or shifted horizontally) kill all other applications before scan‐
273 ning and (if sufficient memory available) disable swapping.
274
275 See the plustek_pp.conf file for examples.
276
278 /etc/sane.d/plustek_pp.conf
279 The backend configuration file
280
281 /usr/lib64/sane/libsane-plustek_pp.a
282 The static library implementing this backend.
283
284 /usr/lib64/sane/libsane-plustek_pp.so
285 The shared library implementing this backend (present on systems
286 that support dynamic loading).
287
288 /lib/modules/<Kernel-Version>/kernel/drivers/parport/pt_drv.o
289 The Linux kernelmodule for kernels < 2.6.x.
290
291 /lib/modules/<Kernel-Version>/kernel/drivers/parport/pt_drv.ko
292 The Linux kernelmodule for kernels >= 2.6.x.
293
295 SANE_CONFIG_DIR
296 This environment variable specifies the list of directories that
297 may contain the configuration file. Under UNIX, the directories
298 are separated by a colon (`:'), under OS/2, they are separated
299 by a semi-colon (`;'). If this variable is not set, the config‐
300 uration file is searched in two default directories: first, the
301 current working directory (".") and then in /etc/sane.d. If the
302 value of the environment variable ends with the directory sepa‐
303 rator character, then the default directories are searched after
304 the explicitly specified directories. For example, setting
305 SANE_CONFIG_DIR to "/tmp/config:" would result in directories
306 "tmp/config", ".", and "/etc/sane.d" being searched (in this
307 order).
308
309 SANE_DEBUG_PLUSTEK_PP
310 If the library was compiled with debug support enabled, this
311 environment variable controls the debug level for this backend.
312 Higher debug levels increase the verbosity of the output.
313
314 Example: export SANE_DEBUG_PLUSTEK_PP=10
315
316
318 sane(7),
319 /usr/share/doc/sane-backends/plustek/Plustek-PARPORT.changes
320 http://www.gjaeger.de/scanner/plustek_pp/
321
322
324 Please send any information and bug-reports to:
325 SANE Mailing List
326
327 Additional info and hints can be obtained from our
328 Mailing-List archive at:
329 http://www.sane-project.org/mailing-lists.html
330
331 or directly from the projects' homepage at:
332 http://www.gjaeger.de/scanner/plustek_pp/
333
334 To obtain debug messages from the backend, please set the environment-
335 variable SANE_DEBUG_PLUSTEK_PP before calling your favorite scan-fron‐
336 tend (i.e. xscanimage).
337 i.e.: export SANE_DEBUG_PLUSTEK_PP=20 ; xscanimage
338
339 The value controls the verbosity of the backend.
340
342 * The Halftoning works, but the quality is poor
343
344 * Printers (especially HP models) will start to print during scanning.
345 This in fact is a problem to other printers too, using bidirectional
346 protocol (see www.plustek.com (TAIWAN) page for further details)
347
348 * The driver does not support these manic scalings up to 16 times the
349 physical resolution. The only scaling is done on resolutions between
350 the physical resolution of the CCD-sensor and the stepper motor i.e.
351 you have a 600x1200 dpi scanner and you are scanning using 800dpi, so
352 scaling is necessary, because the sensor only delivers 600dpi but the
353 motor is capable to perform 800dpi steps.
354
355 * On some devices, the pictures seems bluish
356
357 ASIC 98001 based models:
358
359 * The 300dpi transparency and negative mode does not work correctly.
360
361 * There is currently no way to distinguish a model with and without
362 transparency unit.
363
364 * The scanned images seem to be too dark (P9636T)
365
366 ASIC 96003/1 based models:
367
368 * 30bit mode is currently not supported.
369
370 * On low end systems under heavy system load the driver may lose data,
371 which can result in picture corruption or cause the sensor to hit the
372 scan bed.
373
374 * The scanning speed on 600x1200 dpi models is slow.
375
376 * The scanning quality of the A3I is poor
377
378
379
380 14 Jul 2008 sane-plustek_pp(5)