[sane-devel] Re : LiDE 90 Half CCD
Guillaume Gastebois
guillaume.gastebois at free.fr
Fri Apr 11 15:23:56 UTC 2008
Hello,
>Guillaume Gastebois schrieb:
>> Hello,
>>
>> I see in genesys_gl841.c line 2503 :
>>
>> /* gpio part. here: for canon lide 35 */
>>
>> r = sanei_genesys_get_address (reg, 0x6c);
>> if (half_ccd)
>> r->value &= ~0x80;
>> else
>> r->value |= 0x80;
I modified this in :
/* gpio part. here: for canon lide 35 */
if (dev->model->gpo_type == GPO_CANONLIDE35)
{
r = sanei_genesys_get_address (reg, 0x6c);
if (half_ccd)
r->value &= ~0x80;
else
r->value |= 0x80;
}
/* gpio part. here: for canon lide 90 */
if (dev->model->gpo_type == GPO_CANONLIDE90)
{
r = sanei_genesys_get_address (reg, 0x6c);
if (half_ccd)
r->value |= 0x20;
else
r->value &= ~0x20;
}
correct ?
>>
>> Does it mean that for LiDE 35 GPIO16 is half CCD IO ? Because in LiDE 90, I
>> identify GPIO 14 for that.
>
>The GPIO16 is used as half CCD IO. Correct.
>
>> Another thing : In windows snoop, only GPIO 14, 13, 12 and 11 changes state.
>Is
>> it possible that scanner need different gpio state between calibration and
>> scanning (and different calibration phases) ? Where to add gpio state change
>> code in backend to change gpio between different phases ?
>
>There is no way to know what GPIO 11, 12, 13 do without some experiments
>(or tracing the wires on the pcb, which i advise against).
>
>For example, one GPIO could shut off the LED drivers(thus making black
>level calibration easier), another could be used to save power(as is
>GPIO 9 in Canon LiDE 35).
>
>Currently, i think the only possibly useful GPIOs for calibration and
>scanning are the half ccd and the black led selectors, of which the
>latter is not needed(At least my scanner does not need it, even when
>doing black-level calibration on a white target).
I make test with 0x1a=0x24 and 0x16=02 (like windows snoops) making 0x6c varying
:
0x6c | description
_______|_____________________________________________
12 | says "Extremely low brightness detected......"
1a | says "Extremely low brightness detected......"
0e | no home position detected
0a | says sometimes "Extremely low brightness detected......"
| or gives a black image
02 | black image
06 | no home position detected
16 | no home position detected
1e | no home position detected
I think that GPIO11 is home switch and must be 0.
After that I make test with 0x1a=0x00 and 0x16=20 (like sane yet) making 0x6c
varying :
0x6c | description
_______|_____________________________________________
12 | image is half the width rest is black (half ccd problem ?)
| result : http://ggastebois.free.fr/lide90_snoop/test_12.zip
1a | image like others since today (total width of page calibration problem)
0a | image with vertical lines (calibration big problem see 0x6c=0x02)
02 | like 0x6c=0x0a
| result : http://ggastebois.free.fr/lide90_snoop/test_02.zip
What to conclude about that ?Half CCD problem is strange !
It only remains only fuction of GPIO12 and GPIO13.
>
>> Thank you.
>>
>> Regards
>> Guillaume
>
>Regards,
> Pierre
Regards
Guillaume
More information about the sane-devel
mailing list