[fprint] elan patch + poc 0x903 and 0x0C03

Sebastien Bechet sebastien.bechet at osinix.com
Thu Jan 18 15:03:05 UTC 2018


Thank you Igor. Hans, you can try again with last version.

I also tried to remove reset+fuseload then calibration not working
anymore for 0x0903. It seems it is a part for calibration (same pdf
file for reset _and_ calibration or .... reset _then_ calibration?).

https://github.com/sbechet/elanfp

Konata and timo, can you give us width, height, firmware version and
calibration status using elanfp.c please?



Le jeudi 18 janvier 2018 à 14:02 +0000, Igor Filatov a écrit :
> > square and seems to contain the image 3 times
> Could be because convert is hardcoded at 96x96.
> 
> On Thu, 18 Jan 2018, 12:04 Hans de Goede, <hdegoede at redhat.com>
> wrote:
> > Hi,
> > 
> > On 18-01-18 10:48, Sébastien Béchet wrote:
> > > On 17-01-18 19:21, Igor Filatov wrote:
> > >> We didn't have the spec before so I had no idea how different
> > devices worked. Especially given that some commands which worked
> > fine for me produced errors one other devices. Now that we have the
> > docs I'll work on adapting the driver. Naturally, any info you have
> > is welcome and so is any help with testing.
> > >
> > > I have done the [synthesis](https://github.com/sbechet/elanfp/blo
> > b/master/README.md) about all informations we have a prepare
> > questions for KT.
> > 
> > My 0x0c16 id reader has firmware version 1.56, resolution 96x96
> > 
> > I also have bought a stand-alone USB reader for when I would
> > find time to work on this, this has an usb-id of: 0x0c26.
> > 
> > After making these changes:
> > 
> > --- elanfp.c~   2018-01-18 10:58:59.919912347 +0100
> > +++ elanfp.c    2018-01-18 11:01:50.346280668 +0100
> > @@ -71,7 +71,8 @@
> >                   (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0903) ||
> >                   (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0907) ||
> >                   (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0c03) ||
> > -                (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0c16) ) {
> > +                (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0c16) ||
> > +                (desc.idVendor == 0x04f3) && (desc.idProduct ==
> > 0x0c26) ) {
> >                   r0 = 0;
> >                   printf("Device with vid %x pid %x found.\n",
> > desc.idVendor, desc.idProduct);
> >                   break;
> > @@ -156,7 +157,7 @@
> >           printf("CMD Get Image Size sent\n");
> >       }
> >       r0 = libusb_bulk_transfer(handle, BULK_EP3_IN, img_buf, 4,
> > &transferred, 0);
> > -    printf("Width x height = %dx%d\n", img_buf[0], img_buf[2]);
> > +    printf("Width x height = %dx%d\n", (unsigned char)img_buf[0],
> > (unsigned char)img_buf[2]);
> > 
> >       /* calibration */
> > 
> > @@ -180,6 +181,7 @@
> >           }
> >           r0 = libusb_bulk_transfer(handle, BULK_EP3_IN, &result,
> > 1, &transferred, 0);
> >           printf("Calibration Status: 0x%x\n", result);
> > +        if (result == 0x03) break;
> > 
> >           r0 = libusb_bulk_transfer(handle, BULK_EP1_OUT,
> > get_cmd_status, 2, &transferred, 0);
> >           if((r0 == 0) && (transferred == 2)) {
> > 
> > This one works with the POC too, although for some reason the
> > generated out.png
> > is square and seems to contain the image 3 times?
> > 
> > This one has firmware version 1.64, resolution 64x144 and as shown
> > in the necessary changes this
> > one does report a calibration status of 0x03 when it is done with
> > the calibration, I think
> > we should add an extra column for this to the hardware report
> > table.
> > 
> > Regards,
> > 
> > Hans


More information about the fprint mailing list