[sane-devel] Cannot get hp scanjet 8200 working

David Niklas doark at mail.com
Sat Nov 26 03:45:25 UTC 2016


On Tue, 11/22/2016 14:16 Dave Platt <dplatt at radagast.org>
> >> It seems the avision backend is unmaintained again. You could try
> >> upgrading to a more recent version of sane, or one of our git
> >> snapshots, that sometimes helps.
> >> 
> >> allan  
> > 
> > 
> > I installed the latest git snapshot, the problem persists.
> > Where do I go from here?  
> 
> Hi, David.  I just ran into a similar problem with an HP 8300 I
> purchased (used).  I've written up a patch for it (and another for an
> additional problem) and I can send them to you this evening.  You will,
> unfortunately, have to build the SANE backends from source in order to
> use this - as far as I can tell there's no way to work around the
> problem without a fix to the Avision backend.
> 
> This is apparently a problem which has been reported for several years,
> but a fix has never made it into the main SANE source distribution.
> 
> The problem is this: the 8200 family can report an inconsistent status
> when queried about their "accessories" (the transparency backlight and
> the ADF).  If there's no ADF attached, the 8200 and 8300 will report an
> "ADF present" flag of 0 (meaning "none present") but also send an ADF
> type code of 1 (an "Oodles" ADF).
> 
> There's some code in the backend which interprets this as "Oh, there's
> actually an ADF there, but it's not working properly and needs to be
> reset".  The code makes several attempts to reset the ADF (to get an
> ADF-present code of 1) and when it fails, bails out with a "not
> supported" error.  That's what you're seeing.
> 
> It's possible to just disable the retry loop in the Avision back-end
> source code (which is what I did last night).  Once this is done, my
> 8300 was able to scan... it worked at 300, 600, and 1200 dpi.  Haven't
> been able to do a 4800 dpi scan yet (I'm getting an I/O error).
> 
> The patch I came up with, adds another override option to the
> "avision.conf" file.  If you add a "skip-adf" override, the backend will
> accept the "ADF not present" status and will not try to repeatedly
> reset the ADF.  It should still be able to use an ADF if one is present
> and is reported properly.
> 
> The other fix I'm working on has to do with the transparency/slide
> backlight.  If you select this (via "-source Transparency") the backend
> will scan once.  During subsequent scans, it gets confused as to whether
> the lamp is on or not, and just sits there for 90 seconds (I think it'll
> still scan after that but it's an annoying wait).  My patch should be
> able to adjust the lamp-polling code to recognize the "transparency
> backlight lamp is on" status properly.
> 
> I'm planning to submit these patches to the SANE master branch once I
> test 'em out a bit further.
> 
Thanks (got your cc'ed patches), I had been planning to create a patch
myself either next week or the following. In lieu of that I will look at
yours.
I know how to write C but am not familiar with the sane or any other
deice controlling code, so I will need to get up to speed (and put my
other projects aside :) . Please don't be surprised if you do not hear
from me soon, I tend to be a slow learner and fairly methodical when
coding or reading code.

Thanks,
David



More information about the sane-devel mailing list