[sane-devel] Canon LiDE 90
Pierre Willenbrock
pierre at pirsoft.dnsalias.org
Sun Mar 9 20:14:36 UTC 2008
Guillaume Gastebois schrieb:
> Hello,
>
> I'm back.
>
> Today I made two tests : one with un commenting line 1159 and adding
> regs 0x71, 0x72, 0x73, 0x75, 0x76, 0x79, 0x7c, 0x7d, 0x7f in
> gl841_init_registers.
> Result is a totally black image
> (http://ggastebois.free.fr/lide90_snoop/04_test1.tar).
>
> The other is with un commenting line 1159 and without adding regs 0x71,
> 0x72, 0x73, 0x75, 0x76, 0x79, 0x7c, 0x7d, 0x7f in gl841_init_registers.
> Result is a totally black image too
> (http://ggastebois.free.fr/lide90_snoop/04_test2.tar).
What about only setting register 0x7f? that one should do something
without needing to setup reg 0x1a.
I didn't expect reg[0x1a]=0x24 to work without setting the corresponding
clock bit masks. What happens if you leave line 1159 commented and set
regs 0x74-0x7d(my guess: works without changes in behaviour)? Does
setting regs 0x71-0x73 change anything (line 1159 still commented)?
(I have only little understanding of the actual relative timing and use
of all clock signals going out to the ccd/afe, so i am guessing and
doing experiments.)
But this seems to be basically working. Please send your changes leading
to a usable scan, so i can integrate them.
Regards,
Pierre
> Regards
> Guillaume
>
> Pierre Willenbrock a écrit :
>> Guillaume Gastebois schrieb:
>>> Hello,
>>>
>>> I modified these registers. But the scanner locks writting continiously :
>>> "[genesys] sanei_genesys_read_register (0x41, 0xf4) completed".
>>>
>>> I modified 0x1a=0x24 and 0x1d=0x02 in Genesys_Sensor. In log I see
>>> 0x1d=0x02 but 0x1a=0x00 ??
>> For the missing change of 0x1a: The code block for setting this value
>> (along with 0x1b..0x1d, which is then hardcoded to 0x02) is commented
>> out, genesys_gl841.c:1159. This is probably the case, because they were
>> not needed for my specific scanner.
>>
>> I cannot explain the lockup. I'd play around with different sets of
>> registers and see if they work. But i guess, register 0x1a is a key to
>> get the rest working.
>>
>>> I will be long for next answer as I take one week holidays !
>> I hope you had a nice week holidays.
>>
>> Regards,
>> Pierre
>>
>>> regards
>>> Guillaume
>>>
>>> Pierre Willenbrock a écrit :
>>>> Hi,
>>>>
>>>> Guillaume Gastebois schrieb:
>>>>> Hello,
>>>>>
>>>>>> So, we need to check what parts of the clocking we need to setup
>>>>>> differently.
>>>>>>
>>>>>> Candidates:
>>>>>>
>>>>>> reg sane windows
>>>>>> 0x1a 0x00 0x24 enable clock 3,4 manual output, invert clock 4
>>>>>> 0x1d 0x04 0x02 just a smaller toggle "shoulder".
>>>>>> 0x71 0x00 0x05 RS signal seems to be not used.
>>>>>> 0x72 0x00 0x07 CP signal seems to be not used.
>>>>>> 0x73 0x00 0x09 CP signal seems to be not used.
>>>>>> 0x75 0x00 0x01 clock 1 bitmap
>>>>>> 0x76 0x00 0xff clock 1 bitmap
>>>>>> 0x79 0x00 0x3f clock 3 bitmap
>>>>>> 0x7c 0x00 0x1e clock 4 bitmap
>>>>>> 0x7d 0x00 0x11 change RS on falling edge of system clock, use DLY
>>>>>> 0x7f 0x00 0x50 delay each of BSMP and VSMP by 8.33ns (DLY)
>>>>>>
>>>>>> The clock 1 stuff seems to be not needed, as it is in automatic mode.
>>>>>> But clock 3/4 look interesting. The delay of BSMP/VSMP may be useful, too.
>>>>>>
>>>>> 0x1a was still 0x24. I modified 0x1d which was 0x04 to 0x02. Result is
>>>>> on http://ggastebois.free.fr/lide90_snoop/22_test1.tar.
>>>>>
>>>>> I doesn't find where to modify 0x71-0x7f !!!
>>>> Add them to gl841_init_registers.
>>>>
>>>>>>> Another thing : I always have a brither vertical line where there is a
>>>>>>> small black rectangle in the calibration area.
>>>>>> The small black rectangle is included when acquiring the white level.
>>>>>> Reduce shading_lines(second to last entry) in Genesys_Model to 250, that
>>>>>> way it is not seen anymore.
>>>>>>
>>>>> Done, works.
>>>>>
>>>>>> Oh, and please update from cvs again. A small mistake in
>>>>>> gl841_bulk_write_registers made the debug register dumps useless.
>>>>>>
>>>>> Done.
>>>>>
>>>>>
>>>>> Another thing : when I make several scan with sane backend and sane
>>>>> command line, I have alternatively brite and dark images !!! Why ???
>>>> The calibration is probably giving widely differing results with
>>>> different starting conditions. It swings between two states. But you
>>>> shouldn't see this after the gl842 did its shading correction. Then, the
>>>> problem is probably overexposure of the ccd cells. Try reducing the
>>>> upper threshold in genesys_gl841.c:4383
>>>>
>>>> if (avge > 2000) {
>>>> expr = (expr * 2000) / avge;
>>>> expg = (expg * 2000) / avge;
>>>> expb = (expb * 2000) / avge;
>>>>
>>>> Reducing the lower threshold may be needed, too. The current values for
>>>> your scanner are:
>>>> expr: 1235
>>>> expg: 1235
>>>> expb: 675
>>>>
>>>> No guarantee that this helps at all.
>>>>
>>>>> Regards
>>>>> Guillaume
>>>> Further, we need to figure out a way to get the LEDs go completely dark.
>>>> 0x101 is just about half of 675. I will experiment a bit with my
>>>> scanner, to find out if the gl842 can do that.
>>>>
>>>> Regards,
>>>> Pierre
>>>>
>>>>
>>
>>
>
More information about the sane-devel
mailing list