[sane-devel] Re: HP 7450C - Error trying to scan in powersave mode

René Rebe rene@rocklinux-consulting.de
Mon, 30 Aug 2004 23:22:14 +0200


Hi,

sorry for the delay - at least this week I'm über-busy again ...

> OK, log attached with SANE_DEBUG_AVISION=7. Used xsane to produce the
> problem. The scenario was as follows:
> 
> 1. Reboot
> 2. Correct scan
> 3. Wait half an hour
> 4. Incorrect scan, stopped half way through with this horrible noice.
> 5. Pulled the plug.
> 
> The scan was performed on a full A4-size document. If I reduce the scan
> to, say, 5 by 5 mm the problem never occurs.
> 
> Please let me know if you also need to see the image.

Ok, the wait_4_light() function timed out. Can you try if the scanner 
just needs yet more time to recover from the energy saving mode? Go to 
the wait_4_light() function in avision.c (depending on the version of 
the file) around line 1941. When you scroll thru the function you modify 
the for() loop testing for the warmup to wait longer, maybe 667 seconds 
instead of current 90 ... ;-) Patch:

Index: avision.c
===================================================================
--- avision.c	(revision 133)
+++ avision.c	(working copy)
@@ -1962,7 +1962,7 @@
    set_double (rcmd.datatypequal, dev->data_dq);
    set_triple (rcmd.transferlen, size);

-  for (try = 0; try < 90; ++ try) {
+  for (try = 0; try < 667; ++ try) {

      DBG (5, "wait_4_light: read bytes %d\n", size);
      status = avision_cmd (&s->av_con, &rcmd, sizeof (rcmd), 0, 0, 
&result, &size);

(Never tried this with Thunderbird and my new IMAP setup - so no idea if 
thiis inlien patch has mangled tabs ...)

But when some scanners really need _that much_ time to recover, I bet I 
get other users balming the frontend to hang and I should think about 
some way to report this less annoyingly hanging ...

Have fun,
   René