[sane-devel] Backend for plustek Opticbook 3600

Chris Berry s0457957 at sms.ed.ac.uk
Sun Jan 24 13:01:45 UTC 2010


stef wrote:
> Le vendredi 22 janvier 2010 17:57:06 Chris Berry, vous avez écrit :
>   
>> Hey Stef, I had to take a little time off the front end stuff to do some
>> documentation but Im looking at it again now. Like you im fairly certain
>> everything else is set, could you share with me a snoop of the HP3670?
>> I'm curious to see the front end entries and whether they follow a
>> similar pattern to the opticbook 3600.
>>
>> Cheers
>>
>> Chris
>>     
>
> 	Hello,
>
> 	I still can't get data for HP3670. After much tinkering, everything when from 
> all black to all white...
> 	Here's all the frontend accesses (a grep result) for a 100 dpi color scan.
>  0x01 and 0x03 are control registers, 0x23 is offset and 0x28 is gain. I 
> opened the HP3670 Jack donated me, but I couldn't find a discrete chip which 
> could be the frontend. With the exact Wolfson chip, I'd be able to have a 
> datasheet that surely explain some things.
>
> sanei_genesys_fe_write_data(0x01,0x0007)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x01,0x0007)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x23,0x0014)
> sanei_genesys_fe_write_data(0x23,0x00c2)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0080)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x23,0x0014)
> sanei_genesys_fe_write_data(0x23,0x00c0)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x28,0x0008)
> sanei_genesys_fe_write_data(0x28,0x0004)
> sanei_genesys_fe_write_data(0x28,0x0006)
> sanei_genesys_fe_write_data(0x28,0x0005)
> sanei_genesys_fe_write_data(0x28,0x0005)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x23,0x0014)
> sanei_genesys_fe_write_data(0x23,0x00c0)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x28,0x0005)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0080)
> sanei_genesys_fe_write_data(0x28,0x0002)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x23,0x0014)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x28,0x0008)
> sanei_genesys_fe_write_data(0x28,0x0004)
> sanei_genesys_fe_write_data(0x28,0x0006)
> sanei_genesys_fe_write_data(0x28,0x0007)
> sanei_genesys_fe_write_data(0x28,0x0007)
> sanei_genesys_fe_write_data(0x23,0x0000)
> sanei_genesys_fe_write_data(0x23,0x0014)
> sanei_genesys_fe_write_data(0x23,0x00be)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x03,0x0002)
> sanei_genesys_fe_write_data(0x23,0x00bc)
> sanei_genesys_fe_write_data(0x28,0x0007)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x01,0x0003)
> sanei_genesys_fe_write_data(0x01,0x0003)
>
> Regards,
> 	Stef
>
>
>   
Yea that's a strange one Stef, are you sure this is a Wolfson AFE chip? 
Looking here http://www.wolfsonmicro.com/productListings/imaging you can 
see there are only about 6 AFE's that are three channel and reg values 
start at 0x01 (as opposed to one which starts at 0x00). The strange 
thing about this grep (or at least i find it strange) is that it only 
writes to PGA Red Gain and not Blue and Green (going off these 6 
datasheets from wolfson as they are all roughly the same), which is what 
makes me ask are you sure its a Wolfson. As there are only 6 I suppose 
you can just work through them one at a time...

I discovered where my problem was, I definitely DO NOT have a wolfson 
afe. I tracked the datasheet down from an old project page to be a 
AD9826 and it certainly marries up to the scans snoops. The only problem 
I have now is that I'm not really sure how to change the genesys files 
as my offsets are on reg 0x05, 0x06, 0x07 and my gain are on 0x02, 0x03, 
0x04 (as opposed to 0x20-22 and  0x28-2a respectively).

Do you have any suggestions, or even just a snoop and the corresponding 
genesys debug output for a known working scanner? I've been playing with 
this a little and my best guess is that the reason I get many writes to 
these registry values is due to either offset or coarse calibration.

I really feel i'm getting close, I have started creating pnm files that 
are grey, is this a good sign do you think?

At this point any help you can give will be warmly welcomed :)

Chris



More information about the sane-devel mailing list