[sane-devel] [PATCH] Progress on HP2400 (genesys backend)
stef.dev at free.fr
Mon Jun 13 20:01:13 UTC 2011
Le jeudi 9 juin 2011 10:49:37 Alexey Osipov, vous avez écrit :
> > I need an advice what to try next.
> Ok, I need not any advices. :)
> Happy to say that I got working 1200dpi mode now. :)
> The problem was in wrong value in frontend register number 3. The value
> 0x02 is good for 50-600 dpi, but gives interlaced result for 1200 dpi.
> In UsbSnoop logs there is a value 0x32 for this register, but I found
> out that scanner works good with value 0x12 (just like HP3670 in 1200
> dpi mode). So I left the value 0x12 for both scanners.
> GPO12 output port also need to be manipulated: in 1200dpi it must be set
> to zero, while in other modes it must be one.
> So, I had to add some workaround code in genesys_gl646.c. Results in
> After solving this I notice another bug: if start scanning position (y)
> is not zero, the head moves double length way and eventually goes beyond
> bottom border. I fix this by changing optical_yres of MOTOR_HP2400 from
> 2400 to 1200. For fine tuning I create a new case in
> gl646_setup_registers() for MOTOR_HP2400. Values seems good, except,
> head positioning after calibration (shading) slightly different from the
> case when no calibration was done. Also I had to change y_offset in
> "Genesys_Model hp2400c_model" from 7.5 to 2.5.
> Results in genesys-hp2400-fix-head-positioning.patch.
> That way I have fully functional HP2400 scanner with genesys backend.
> All modes works fine: 50, 100, 150, 300, 600, 1200 dpi; Color, Gray,
> LineArt; 8, 16 bits per channel.
> Head positioning works well. XSane works well.
> Cumulative changes I made against current git master of sane-backends is
> in genesys-hp2400-complete.patch.
> Happy Alexey. :)
I have applied your patch and updated the documentation. Thanks for your
work. I have removed the experimental and the 'have XPA' flags. It would be
nice if a G2410 owner could test this version.
More information about the sane-devel