[sane-devel] Script to interpret USB logs for GL841 based scanners

2005-11-23 Thread John Dalton
For the last couple of weeks I've been writing a script
to interpret the output of 'usbsniff' and a modified
version of 'parseusbsnoop.awk'.

This PERL script assumes a GL841 based scanner and is currently
to the point where is can convert a USB log into a sequence
of reads and writes to the various registers and bit fields
of a G841.  In the case of a register containing multiple
bit fields it also highlights the bit field which has been
modified.

I'm pushing ahead to get the script to recognise higher
level functions, which may or may not be specific to the
LiDE 60.

In case anyone is interested, I've put the script on my
website:
https://john.daltons.info/lide60/
Hopefully it will be useful to anyone working with GL841
based scanners.

Here is an example of the output for portion of an LiDE60's cyle
where it starts the scan and reads the image data from the
scanner:

-- BEGIN CUT HERE--
24253  :  216128ms   Start motor movement.
24254-24597:  216129ms  Wait for image buffer to contain data. ([0x41] bit 6)==1
24598-24603:  216474ms  [gl841:validword] - 564Read number of 
bytes available to read from the image buffer (564) from the GL841.
24604-24609:  216480ms  [gl841:validword] -1204Read number of 
bytes available to read from the image buffer (1204) from the GL841.
24610-24615:  216486ms  [gl841:validword] -1740Read number of 
bytes available to read from the image buffer (1740) from the GL841.
24616-24621:  216492ms  [gl841:validword] -2252Read number of 
bytes available to read from the image buffer (2252) from the GL841.
24622  :  216498ms  Point to the read  port of the GL841 image buffer DRAM 
(address 0x45) in preparation for a bulk read.
24623-24725:  216499ms  Multiple reads from image buffer  (1678578 bytes)
24726  :  225445ms   0xa0 - [gl841:scanner_setup]Write scanner setup.
  *scan 
process  : disable
   
shading area  : whole line
   DRAM 
size : 4Mx1
   DRAM 
size : 4M or 8M
   
shading   : enable
   
watchdog timer (register 0x1e): disable
   
scanner type  : CIS
24727-24730:  225446ms   0b 11  0010  - [gpio18..9]   set GPIO18-9 to 
known state (includes pins which control motor?)
24731-24732:  225450ms  [gl841:motor_status] -  0x03 Read motor status.

 *scanner mode: command

 *motor is: moving

  motor speed : normal
24733-24734:  225452ms  [gl841:scanner_status] -  0xf5 Read scanner status.

  motor is   : processing

  front end is   : not busy (ready to read/write)

  lamp is: on

  scanner is position: not home

 *scanning is: finished

  motor feeding  : finished

 *image buffer is: empty

  power  : on
-- END CUT HERE--




[sane-devel] Canoscan LiDE 25 detected by find-scanner, not scanimage

2005-11-23 Thread Gerhard Jaeger
Hi,

On Monday 21 November 2005 15:47, Chris wrote:
 Hi there,
 
 I've recently bought a Canoscan LIDE 25 and managed to get it working
 on my Ubuntu 5.10 laptop using the CVS code.  Unfortunately I can't
 get the same scanner working on an Ubuntu 5.10 desktop machine using
 the same procedure.  I would really appreciate someone helping me make
 sense of the error message.
 
 I did the following exactly as per the successful laptop install:
 
 - download cvs nightly code
 - ./configure --prefix=/usr
 - make
 - sudo make install
 
 But I get the following results:
 
 sane-fine-scanner
 
 found USB scanner (vendor=0x04a9 [Canon], product=0x2220 [CanoScan],
 chip=LM9832/3) at libusb:002:003

That's okay so far ;)

 scanimage -L  (the output is the same as root)
 
 device `v4l:/dev/video0' is a Noname Hauppauge WinTV 34xxx models virtual 
 device
 
 It seems odd that SANE is picking up the TV card - is this a problem? 
 As you can see the canoscan doesn't appear.

That's bad - indeed ;)

 After reading around the list archive and some forums I tried the following:
 
 export SANE_DEBUG_PLUSTEK=12
 export SANE_DEBUG_DLL=12

Okay.

 scanimage -L  (again, the output is the same as root)
 
 [sanei_debug] Setting debug level of dll to 12.
 [dll] sane_init: SANE dll backend version 1.0.11 from sane-backends 1.0.16-cvs
 [dll] sane_init: reading dll.conf
 [dll] add_backend: adding backend `net'
 [dll] add_backend: adding backend `abaton'
 [dll] add_backend: adding backend `agfafocus'
 [dll] add_backend: adding backend `apple'
 [dll] add_backend: adding backend `avision'
 [dll] add_backend: adding backend `artec'
 [dll] add_backend: adding backend `artec_eplus48u'
 [dll] add_backend: adding backend `as6e'
 [dll] add_backend: adding backend `bh'
 [dll] add_backend: adding backend `canon'
 [dll] add_backend: adding backend `canon630u'
 [dll] add_backend: adding backend `coolscan'
 [dll] add_backend: adding backend `coolscan2'
 [dll] add_backend: adding backend `dmc'
 [dll] add_backend: adding backend `epson'
 [dll] add_backend: adding backend `fujitsu'
 [dll] add_backend: adding backend `gt68xx'
 [dll] add_backend: adding backend `hp'
 [dll] add_backend: adding backend `hpsj5s'
 [dll] add_backend: adding backend `hp5400'
 [dll] add_backend: adding backend `ibm'
 [dll] add_backend: adding backend `leo'
 [dll] add_backend: adding backend `ma1509'
 [dll] add_backend: adding backend `matsushita'
 [dll] add_backend: adding backend `microtek'
 [dll] add_backend: adding backend `microtek2'
 [dll] add_backend: adding backend `mustek'
 [dll] add_backend: adding backend `mustek_usb'
 [dll] add_backend: adding backend `nec'
 [dll] add_backend: adding backend `niash'
 [dll] add_backend: adding backend `pie'
 [dll] add_backend: adding backend `plustek'
 [dll] add_backend: adding backend `qcam'
 [dll] add_backend: adding backend `ricoh'
 [dll] add_backend: adding backend `s9036'
 [dll] add_backend: adding backend `sceptre'
 [dll] add_backend: adding backend `sharp'
 [dll] add_backend: adding backend `sm3600'
 [dll] add_backend: adding backend `snapscan'
 [dll] add_backend: adding backend `sp15c'
 [dll] add_backend: adding backend `tamarack'
 [dll] add_backend: adding backend `teco1'
 [dll] add_backend: adding backend `teco2'
 [dll] add_backend: adding backend `teco3'
 [dll] add_backend: adding backend `u12'
 [dll] add_backend: adding backend `umax'
 [dll] add_backend: adding backend `umax1220u'
 [dll] add_backend: adding backend `v4l'
 [dll] add_backend: adding backend `hpoj'
 [dll] add_backend: adding backend `hpaio'
 [dll] sane_get_devices
 [dll] load: searching backend `hpaio' in `/usr/lib/sane'
 [dll] load: trying to load `/usr/lib/sane/libsane-hpaio.so.1'
 [dll] load: dlopen()ing `/usr/lib/sane/libsane-hpaio.so.1'
 [dll] init: initializing backend `hpaio'
 [dll] init: backend `hpaio' is version 1.0.6
 [dll] load: searching backend `hpoj' in `/usr/lib/sane'
 [dll] load: trying to load `/usr/lib/sane/libsane-hpoj.so.1'
 [dll] load: couldn't open `/usr/lib/sane/libsane-hpoj.so.1' (No such
 file or directory)
 [dll] load: couldn't find backend `hpoj' (No such file or directory)
 [dll] load: searching backend `v4l' in `/usr/lib/sane'
 [dll] load: trying to load `/usr/lib/sane/libsane-v4l.so.1'
 [dll] load: dlopen()ing `/usr/lib/sane/libsane-v4l.so.1'
 [dll] init: initializing backend `v4l'
 [dll] init: backend `v4l' is version 1.0.4
 [dll] load: searching backend `umax1220u' in `/usr/lib/sane'
 [dll] load: trying to load `/usr/lib/sane/libsane-umax1220u.so.1'
 [dll] load: dlopen()ing `/usr/lib/sane/libsane-umax1220u.so.1'
 [dll] init: initializing backend `umax1220u'
 [dll] init: backend `umax1220u' is version 1.0.1
 [dll] load: searching backend `umax' in `/usr/lib/sane'
 [dll] load: trying to load `/usr/lib/sane/libsane-umax.so.1'
 [dll] load: dlopen()ing `/usr/lib/sane/libsane-umax.so.1'
 [dll] init: initializing backend `umax'
 [dll] init: backend `umax' is version 1.0.44
 [dll] load: searching backend `u12' in `/usr/lib/sane'
 

[sane-devel] Problem with GT68XX and MacOS X

2005-11-23 Thread francois baert
Le Mardi 22 Novembre 2005 15:38, Nick Collingridge a ?crit?:
 Summary of configuration:

 G5 Dual 2GHz, 2GB RAM
 MacOSX 10.4.3
 Scanner ? Mustek A3 USB
 LibUSB ? 0.1.11
 SANE Backends - 1.0.16

 I have installed all the above items and made sure that there is a properly
 configured (according to the instructions, including an override and a
 vendor and model number) GT68xx.conf file in /usr/local/etc/ on my boot
 drive. However I still can?t get the scanner to work. The symptoms are:

 Using sane-find-scanner in Terminal I get:

 found USB scanner (vendor=0x055f, product=0x0210 [USB Scanner],
 chip=GT-6816) at libusb:009:004-055f-0210-00-00

 Then if I try scanimage ?L I get a message starting ?No scanners were
 identified...?

 Following this I have to power-cycle the scanner before it is recognised by
 sane-find-scanner again.

 If I try scanimage ?L immediately after power-cycling the scanner, I get:

 device `gt68xx:libusb:009:004-055f-0210-00-00' is a Mustek ScanExpress
 A3 USB flatbed scanner

 But irrespective of when I power-cycle, if I try scanimage  test.pnm, I
 get:

 scanimage: no SANE devices found

 I am confused and don?t know where to go next. I think there is an issue
 here with the scanner having to be power-cycled after every command (is
 this a bug?), but even if I try and actually scan an image immediately
 after power-cycling, it still doesn?t work.

 I am afraid that all the man pages and the FAQ for TWAIN SANE are not very
 complete in their description of what needs to be done to get everything
 working properly, and also don?t really help very well when things don?t
 work. They just do not describe the combination of circumstances I am
 experiencing. Also they are clearly written mainly for Linux users and much
 does not directly transfer to MacOS X.

 The really frustrating thing is that when I installed SANE on a previous
 MacOS X system it worked fine (within its limits!). I just can?t get it to
 work again with the latest versions of all the s/w.

 Do I need to provide any further info, or can someone give me some pointers
 on what I need to do to get things going beyond where I have got to?
Aye!!
It's amazing
I got the same pb with an epson scanner (GT-7000) using Fedoracore 4.
kernel 2.6.11.
On a redhat 9.0 xsane works fine.
Besides I observe that the driver=none in the file /proc/bus/usb/devices
When I submit xsane every thing seems O.K. at the beginning but the program 
hangs and after a while I got this message:
failure to start the scanner Error I/O on the peripherical

I saw today that an other guide Mike Brodbelt has about the same Pb with an 
espson scanner using a kernel 2.6.14 mine is 2.6.11 ??? xsane 0.95
xsane-0.89 works fine on a redhat 9.0 kernel 2.4.20.

Pb could be related to libusb ???
Thanks
Fran?ois





[sane-devel] Re: Re: Re: epson 3490 - transparency unit problem

2005-11-23 Thread Levente Novák
On Fri, 2005-11-18 at 00:11 +0100, Oliver Schwartz wrote:

 
 ah, ok. That makes more sense. I guess I'll disable 2400 dpi to make 
 sure the error doesn't occur.
 

1600 dpi seems to work OK. Oliver, did you receive my previous post in
which I've tested almost all possible combinations of resolution/scan
mode/bit depth? The aspect ratio (=real resolution) is wrong in all but
a few lineart modes. And halftoning was (at the time I've tested it)
completely broken. Should they be removed for now or can be they
corrected until the release (bug corrections are still allowed in CVS)?

Levente

PS: will be 2400 dpi enabled in the future? And why does the windows
driver allow 2400 dpi but not 1600?




[sane-devel] Re: CanoScan LiDE 25

2005-11-23 Thread Gerhard Jaeger
On Tuesday 22 November 2005 18:33, deif (sent by Nabble.com) wrote:
 
 Hello Gerhard
 
 are you still working on that scanner?

Hmmm, I'm maintaining the plustek backend, and the Lide25
is working @ least my test-device works okay with the current
CVS code.

 
 I tried to get mine working without any luck 
 but i can get you that usb sniff

What are your probs? Which SANE version? Care to send any debug
output? Please explain your probs more in detail.

Gerhard



[sane-devel] Canoscan LiDE 25 detected by find-scanner, not scanimage

2005-11-23 Thread Chris
Gerhard,

Thank you very much for your reply.  I remember originally the dev
files for libusb were not installed on Ubuntu.  This meant that
sane-find-scanner didn't find any devices.  I realised this was the
problem, installed the dev files, redid the ./configure and forced it
to re-make everything.  This is where I was at when I got the output
in my original email.

 Are you sure, that the USB subsystem has been setup correctly?

I'm afraid I'm still pretty new to linux so I'm not sure how to answer
this definitively. I do know that USB pen drives and such work fine on
the machine and when I do 'lsusb' with the Canoscan attached it is
listed as an attached device.

The output of 'sane-config --libs' is as follows:

-lsane -lusb -lpthread -lm  -ldl

So I seem to be missing

-ljpeg -lieee1284 -lgphoto2 -lgphoto2_port and -lresmgr

Do you think this is the cause of the problem?  If so am I right in
guessing that I need to find and install some more dev files and re-do
the ./configure  make?

Thanks again!
Chris :)


  I did the following exactly as per the successful laptop install:
 
  - download cvs nightly code
  - ./configure --prefix=/usr
  - make
  - sudo make install
 
  But I get the following results:
 
  sane-fine-scanner
 
  found USB scanner (vendor=0x04a9 [Canon], product=0x2220 [CanoScan],
  chip=LM9832/3) at libusb:002:003

 That's okay so far ;)

  scanimage -L  (the output is the same as root)
 
  device `v4l:/dev/video0' is a Noname Hauppauge WinTV 34xxx models virtual 
  device
 
  It seems odd that SANE is picking up the TV card - is this a problem?
  As you can see the canoscan doesn't appear.

 That's bad - indeed ;)

  After reading around the list archive and some forums I tried the following:
 
  export SANE_DEBUG_PLUSTEK=12
  export SANE_DEBUG_DLL=12

 Okay.

  scanimage -L  (again, the output is the same as root)
 
  Presumably the reason it doesn't find the scanner is because of this bit:
 
  [plustek] usbDev_open(auto,0x04A9-0x2220) - (nil)
  [plustek] sanei_usb_open failed: No such file or directory (2)
  [plustek] open failed: -1
 
  Any idea what could be causing that last parameter to be set to nil?

 well you might first disable all backends but the plustek in dll.conf, but 
 that's
 more a cosmetic change. Are you sure, that the USB subsystem has been setup
 correctly? What about libusb? Are the development headers installed and the 
 lib
 has been linked to SANE: check sane-config --libs, it should look like:
 -lsane -lusb -lpthread -lm  -ljpeg -lieee1284  -lgphoto2 -lgphoto2_port -lm 
 -lresmgr -ldl
 esp. the -lusb is important.

 Gerhard


[sane-devel] Problem with GT68XX and MacOS X REVISED

2005-11-23 Thread Henning Meier-Geinitz
Hi,

please reply also to the sane-dvel mailing list, not only to me.

On Tue, Nov 22, 2005 at 07:10:21PM +, Nick Collingridge wrote:
  There are some issues with the A3 USB in 1.0.16 which have been fixed
  in the current development version of sane-backends. But as far as I
  know, none of these issues were related to detection of the scanner.
  Trying a current development snapshot may be woth a try anyway.
 
 I can find what I think is a source version of this, but not a compiled
 binary.

Yes. Only source code is provided by the SANE project (and some links
to binaries, but people tend to create binaries only for stable
versions).

  I have installed all the above items and made sure that there is a properly
  configured (according to the instructions, including an override and a
  vendor and model number) GT68xx.conf file in /usr/local/etc/ on my boot
  drive. 
  
  This scanner does not need an override. Vendor and product ids are
  already in gt68xx.conf.
 
 Sorry - attempting belt and braces when other solutions didn't work. Still
 confused on this front by how the backend will know which scanner name to
 use unless the conf file tells it, though...

The USB ids and respective scanner names are hard-coded. This override
crap is only needed if scanners have the same USB ids but different
hardware. In theory, this should never happen but Mustek and others
did it. So in these cases the backend has to be told which scanner is
actually connected. For most scanners (including yours) that's not
necessary.

  Please send the output of
  export SANE_DEBUG_GT68XX=255 (or Mac OS X equivalent)
  export SANE_DEBUG_SANEI_USB=255
  scanimage -L
 
 I've performed the two export commands but I don't know where the output
 files get put - I've tried searching for them but I don't know what they're
 called even! If you can give me a clue of where the files might be I'll
 happily send them to you.

The log messages will be pronted to stderr so you should see them
on the terminal window. export is for sh/bash, if you use another
shell you may need setenv instead. To save the output to a file, use
scanimage -L 2logfile.txt

  You are not expected to power-cycle the scanner each time :-)
  This doesn't happen on Linux or any of the BSDs and I also haven't
  gotten a report about such behaviour on Mac OS X as far as I remember.
 
 Maybe not, but this is the only way to get the scanner recognised
 successfully.

I just wanted to confirm that this is not intended or normal behaviour
of the gt68xx backend.

  I am afraid that all the man pages and the FAQ for TWAIN SANE are not very
  complete in their description of what needs to be done to get everything
  working properly, and also don?t really help very well when things don?t
  work.
  
  man sane contains some trouble-shooting notes.
 
 But it's all very vague and written very much from the persective of use
 with Linux - lost of mentions of unloading kernel drivers, mounting file

The sane manpage does not mention kernel drivers at all.

 systems and suchlike that are very much on the technical end of the scale
 and just don't help with a MacOS X problem!

Some MacOS X specific information is in README.darwin but it's
intended more for building SANE than using.

 I know that this is an
 open-source project and all done by volunteers, so I'm not really
 complaining - just pointing out that if you do get a problem installing on
 OS X, the Linux-focused nature of the man pages is a bit of a hindrance to
 getting things going by yourself!

Please send patches for Mac OS X specific tips, especially for man
sane-usb and man sane-scsi as these are really OS-specific.

 I am pretty technically competent with MacOS X and Windows but even
 so there is a shortfall between my knowledge coupled with what I can
 work out from the documentation and where I need to be to get this
 going.

Usually special questions/trouble like yours is best discussed on the
mailing list.

 I believe that it was SANE-backends 1.0.14 and libusb 0.1.8

Maybe a problem with libusb? IIRC there used to exist several issues
with libusb on Mac OS X but I thought they were fixed recently.

Bye,
  Henning


[sane-devel] [Fwd: [Lcms-user] LPROF development snap shot version 1.11.0 released]

2005-11-23 Thread gerard klaver
See attachment
-- 

m.vr.gr.
Gerard Klaver
-- next part --
An embedded message was scrubbed...
From: Hal V. Engel hven...@astound.net
Subject: [Lcms-user] LPROF development snap shot version 1.11.0 released
Date: Mon, 21 Nov 2005 12:34:15 -0800
Size: 7973
Url: 
http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20051123/2208f579/attachment.mht
From oliver.schwa...@gmx.de  Wed Nov 23 19:13:35 2005
From: oliver.schwa...@gmx.de (Oliver Schwartz)
Date: Wed Nov 23 19:14:11 2005
Subject: [sane-devel] Re: Re: Re: epson 3490 - transparency unit problem
In-Reply-To: 1132733342.18884.6.ca...@novak.chem.klte.hu
References: 4376277f.3090...@free.fr
200511180011.40779.oliver.schwa...@gmx.de
1132733342.18884.6.ca...@novak.chem.klte.hu
Message-ID: 200511232013.35841.oliver.schwa...@gmx.de

Hi,

 On Fri, 2005-11-18 at 00:11 +0100, Oliver Schwartz wrote:
  ah, ok. That makes more sense. I guess I'll disable 2400 dpi to
  make sure the error doesn't occur.

 1600 dpi seems to work OK. 

Ok. I've replaced the 2400 DPI resolution with 1600 DPI in CVS.

 Oliver, did you receive my previous post 
 in which I've tested almost all possible combinations of
 resolution/scan mode/bit depth? 

Yes, but your mail got buried under some other mail ;-)

 The aspect ratio (=real resolution) 
 is wrong in all but a few lineart modes. And halftoning was (at the
 time I've tested it) completely broken. 

Lineart and grayscale should be fixable. The aspect ratio is correct 
as far as I can see - it's rounded up to be dividable by 8, as each 
pixel uses one bit and the smallest unit to request is one byte, i.e. 
8 pixels. My guess is that 1600 DPI works fine for both lineart and 
grayscale, so the only remaining problem is 3200 DPI in lineart and 
grayscale. Currently the deinterlacer is used for grayscale but not 
for lineart, it seems that both settings have to be adjusted. Can you 
send me example scans for 3200 DPI for a lineart and grayscale scan?

As for halftoning: I've no idea how to fix it. If the windows driver 
doesn't offer it there's a good chance that the scanner doesn't 
support it at all. I guess it should be disabled.

 PS: will be 2400 dpi enabled in the future? And why does the
 windows driver allow 2400 dpi but not 1600?

You'd have to ask the epson guys. My guess is that the scanner scans 
at 3200 DPI if 2400 DPI is requested and the decimating to 2400 DPI 
is done in software. It could be done in the snapscan backend as 
well, but I'm not sure if it's worth the effort. I guess the better 
choice (in terms of image quality) is to scan at 3200 DPI and rescale 
the image in gimp.

/Oliver


[sane-devel] FYI: Giving up on Mustek 1200 III EP support

2005-11-23 Thread Ron Hunter-Duvar
In case anyone was interested in this...

About a month ago I announced that I was going to try to add sane support for 
my Mustek 1200 III EP scanner. Jochen and his contacts at Mustek were very 
helpful in trying to find the Windows driver source, but ultimately it was 
nowhere to be found. I tried to trace the parallel port traffic under Win98, 
but that was also unsuccessful. And Jochen had previously tried to add 
support for this scanner without the source, and didn't get far. It's not 
likely that I would get any farther. So I've given up.

-- 
Ron
ronhd at users dot sourceforge dot net

Opinions expressed here are all mine.


[sane-devel] Re: Re: CanoScan LiDE 25

2005-11-23 Thread deif (sent by Nabble.com)

After a lot of compiling and installing sane-find-scanner finds it 
found USB scanner (vendor=0x04a9 [Canon], product=0x2220 [CanoScan], 
chip=LM9832/3) at libusb:001:007
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

but scanimage -L finds no scanner.

I installed (or at least I tried to) backend 1.0.16 on an ubuntu system

how do i make a debug output?
--
Sent from the SANE - Dev forum at Nabble.com:
http://www.nabble.com/CanoScan-LiDE-25-t145756.html#a1624192
-- next part --
An HTML attachment was scrubbed...
URL: 
http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20051123/0a2ccb85/attachment.htm
From lno...@dragon.unideb.hu  Thu Nov 24 10:35:11 2005
From: lno...@dragon.unideb.hu (Levente =?ISO-8859-1?Q?Nov=E1k?=)
Date: Thu Nov 24 10:37:13 2005
Subject: [sane-devel] Re: Re: Re: epson 3490 - transparency unit problem
In-Reply-To: 200511232013.35841.oliver.schwa...@gmx.de
References: 4376277f.3090...@free.fr
200511180011.40779.oliver.schwa...@gmx.de
1132733342.18884.6.ca...@novak.chem.klte.hu
200511232013.35841.oliver.schwa...@gmx.de
Message-ID: 1132828511.19923.25.ca...@novak.chem.klte.hu

Hi, 

On Wed, 2005-11-23 at 20:13 +0100, Oliver Schwartz wrote:
 Hi,
 

 Lineart and grayscale should be fixable. The aspect ratio is correct 
 as far as I can see - it's rounded up to be dividable by 8, as each 
 pixel uses one bit and the smallest unit to request is one byte, i.e. 
 8 pixels. My guess is that 1600 DPI works fine for both lineart and 
 grayscale, so the only remaining problem is 3200 DPI in lineart and 
 grayscale. Currently the deinterlacer is used for grayscale but not 
 for lineart, it seems that both settings have to be adjusted. Can you 
 send me example scans for 3200 DPI for a lineart and grayscale scan?

I will send them you in private mail.

 As for halftoning: I've no idea how to fix it. If the windows driver 
 doesn't offer it there's a good chance that the scanner doesn't 
 support it at all. I guess it should be disabled.

What does the snapscan backend for halftoning? Are there halftoning
algorithms implemented in software or does it only pass a flag to the
scanner? I'm asking this because there is a kind of halftoning, though
broken. If it's done by the scanner, it could indicate then it is
capable of some kind of halftoning.

  PS: will be 2400 dpi enabled in the future? And why does the
  windows driver allow 2400 dpi but not 1600?
 
 You'd have to ask the epson guys. My guess is that the scanner scans 
 at 3200 DPI if 2400 DPI is requested and the decimating to 2400 DPI 
 is done in software. 

Yes, it was also my guess. There is also decimation at 1600 dpi, isn't
it (and at all resolutions below 3200)? The decimation patterns are
evident for most if not all small resolution modes (I checked it last
time), only this decimation is maybe done in hardware instead of
software. But of course it is easier to throw away every other
column/line instead of one of four.

 It could be done in the snapscan backend as 
 well, but I'm not sure if it's worth the effort. I guess the better 
 choice (in terms of image quality) is to scan at 3200 DPI and rescale 
 the image in gimp.

That's true, but in fact this applies to all resolutions below 3200dpi.
The best image quality you get will always be by sampling at 3200dpi
then downsampling to the requested resolution with bilinear, bicubic,
L?nczos, etc... algorithms.

I can see one advantage in scans directly performed at 2400 dpi: several
printers have a resolution of 2400x1200 or 4800x1200 dpi, it could come
handy when using the scanner as a copier (OK, it does not happen too
often, maybe if one scans slides/negatives and print them directly).

One further question: do you know what the real hardware resolution of
the Perfection 3490 is? In the technical data sheet Epson states it is
3200x6400 dpi. These 6400 dpi are maybe attained with the stepper motor
(as was the case with my former 600x1200 dpi scanner).


Levente