embar | 29 Nov 17:20 2014
Picon

0a5c:5801 Broadcom fingerprint reader support (DELL Latitude 6440)

Hi,

I have DELL Latitude 6440 with fingerprint reader.
But device is not recognized by fprint 0.5.1

> lsusb
Bus 002 Device 003: ID 0a5c:5801 Broadcom Corp. BCM5880 Secure
Applications Processor with fingerprint swipe sensor
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0c45:64d0 Microdia
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 046d:c52f Logitech, Inc. Unifying Receiver
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

> lsusb -d 0a5c:5801 -v

Bus 002 Device 003: ID 0a5c:5801 Broadcom Corp. BCM5880 Secure
Applications Processor with fingerprint swipe sensor
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0a5c Broadcom Corp.
(Continue reading)

Alexander Martin | 30 Oct 20:42 2014
Picon

Image Format Returned from fprint

Hi fprint community!

I am interested in using this tool and was curious about the type of image that is returned from the fingerprint reader. Is it JPG, PNG, WSQ, etc.?

Thanks,
Alex
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint
Brian Bouterse | 28 Oct 23:54 2014
Picon
Gravatar

T530 Device not seen in FC20

I have a ThinkPad T530 laptop. I have installed libfprint, fprintd, and the demo example on Fedora 20. I was able to run the demo, and it showed me the GUI. However at the bottom I see 'Status: No devices found'.

I believe I have a fingerprint scanner. Most photos have a small rectangle with a light, but mine is a small square to the right of the trackpad.

Here is my output from lsusb:

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 005: ID 5986:02d2 Acer, Inc 
Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
Bus 001 Device 003: ID 2687:fb01  
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

The end of this thread [0] says that the broadcom is likely the right one, but that my system isn't recognizing it as a device. What is the state of T530 ThinkPad support, and how can I get some fingerprint awesomeness going?

Thanks!
Brian


--
Brian Bouterse
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint
Daniel Päßler | 14 Oct 14:02 2014
Picon
Picon

Device 138a:0007 (VFS451)

Hi,

I own this device in an Elitebook 8740w and spent the last days 
searching for a solution to get it to work.

Actually it looks like there is still a bunch of users asking for 
support, but as this is an older device, there seems to be no big effort 
on getting it to work.
Is there any chance for me (as a non-programmer) to help in any way?
I read a lot about USB-Sniffing, which may be helpful (and some of the 
users seems to have already done this).
If I could be able to get one of the Boards off of ebay, would it help 
if I send this to a developer?

There was Linux support from HP for some devices from Validity Inc. in 
SUSE Linux Enterprise a few years ago. I found some libraries, scripts, 
programs and even patches for libfprint.
Is there a chance that these files (though they are old) can help 
developing a driver? Maybe someone can have a look at them, they are here:

https://www.dropbox.com/sh/qbbogrkozlomytw/AABcJkDKWk0K9AT6_-g0HDQwa?dl=0

Is there anything else I can do or provide to help?

Thanks,

Daniel
Vasily Khoruzhick | 13 Oct 22:15 2014
Picon
Gravatar

Re: Writing a driver for138a:003c (VFS471)

On Mon, Oct 13, 2014 at 10:57 PM, Jonathan Daniel
<jonathandaniel <at> email.com> wrote:
>> Sent: Monday, October 13, 2014 at 9:21 PM
>> From: "Vasily Khoruzhick" <anarsoul <at> gmail.com>
>> To: "Jonathan Daniel" <jonathandaniel <at> email.com>
>> Cc: "fprint <at> lists.freedesktop.org" <fprint <at> lists.freedesktop.org>
>> Subject: Re: [fprint] Writing a driver for138a:003c (VFS471)
>>
>> Hi Jonathan,
>>
>> Firstly, please don't use HTML formatting in your messages to mail list.
>>
>
> Alright my bad, it should be fine now.

Please also keep mailing list in CC

>> Take a look at those bytes, it's very likely that sensor is 8bpp or
>> even 4bpp, so image pixels should contains similar values (at least at
>> the beginning and at the end of image). If they look like a random
>> data - then it's very likely that protocol is protect with encryption.
>
> To me it looks like random data, could I send you a few scans so you can determine if it's random or not?
> The other bulks look random too, I haven't scanned the initialisation yet though.

Send me whole dump in private email since it may contain your
fingerprints, and you definitely don't want to disclose them to wide
public.

>> There could be 2 options: whole protocol is encrypted or only image
>> payload is encrypted.
>>
>> If image is encrypted, you should analyze traffic and figure out (with
>> a lot of tries :)) which one command enables encryption. Usually, I'm
>> omitting a single transfer and then just capturing traffic again to
>> see if there're differences.
>> If whole traffic is encrypted, it's very likely that you won't be able
>> to replay whole sequence with a device, and it'll be close to
>> imposible to reverse engineer protocol without disassembling Windows
>> driver.
>
> Even if it's all encrypted there is still hope for this device, there is a closed source Linux driver
available from HP:
>
> http://h20566.www2.hp.com/portal/site/hpsc/template.PAGE/public/psi/swdDetails/?sp4ts.oid=5071175&spf_p.tpst=swdMain&spf_p.prp_swdMain=wsrp-navigationalState%3Didx%253D%257CswItem%253Dob_97486_1%257CswEnvOID%253D2020%257CitemLocale%253D%257CswLang%253D%257Cmode%253D%257Caction%253DdriverDocument&javax.portlet.begCacheTok=com.vignette.cachetoken&javax.portlet.endCacheTok=com.vignette.cachetoken
>
> The problem with this driver is that its for Suse Linux and i'm using Debian, also it says it's made for the
2.28.3 kernel, is that a problem or should it work with other version too?
> I have tried making .deb's from the RPM's but without success. It should also work with libfprint, do you
think there's a chance it will work on Debian?

When I looked at their driver last time it wasn't intergrated into
libfprint, they provided their own PAM module and an userspace daemon,
I don't remember much details, sorry. I don't know if it's possible to
get it working on Debian.

Regards,
Vasily
Jonathan Daniel | 13 Oct 20:31 2014
Picon

Writing a driver for138a:003c (VFS471)

Hello,
 
I have started the journey to write a driver for this device (138a:003c), I own this device, its
built in to the HP Elitebook 8560w. From what i've gathered I need to sniff the USB data
from a working driver and send/receive the right data at the right moment with libusb.
 
So i'm currently dumping all the traffic, and when I scan a finger, I get ~84059 bytes from
the device back to the host, sometimes twice or thrice. There is more data sent and received
but this is the biggest bulk, so i'm thinking this is the image itself, is that a solid assumption
or could it be the device sends something else this large. Also, how can I check if it's true, is there 
a way to transform the bytes into an image just to see if its right? How can I make sure it's not encrypted,
and if it's encrypted what are my options?
 
Thanks in advance,
J. Daniel
 
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint
Shivaprasad Imdapur | 8 Oct 14:36 2014
Picon

How to use libfprint library in android

Hello,

    In my android device development project, I have hardware and I have developed driver for that. This hardware is placed using SPI drivers. Now I am able to scan a finger and get a raw data. 

   My question is, Is it possible to use libfprint library for image conversion processing and biometric functionality like ENROLL and VERIFICATION. 

  If so how to use libfprint library in AOSP ? Keep in mind that I am having driver and able to get raw data.

Thanks
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint
Ming Lin | 19 Sep 19:24 2014
Picon

uru4000 slow performance(10 secs to enroll / 10 secs to verify)

Hi list,

I just got a Microsoft fingerprint reader.

I build latest libfprint code, and tried fprint-demo.
It works but slow. It takes about 10 seconds to enroll and about 10
seconds to verify.

I also tried it on Windows XP. It can enrool/verify instantly.

Is this slow performance a known issue?

Thanks,
Ming
Andreas Lekas | 16 Sep 04:07 2014
Picon

Raspberry Pi and Microsoft 1033 Fingerprint scanner. libfprint hangs during enrollment

Hello,

I am trying to make the Microsoft 1033 fingerprint scanner work with fprint on a Raspberry Pi. I'm running into a problem where fingerprint enrollment stalls after the first stage. The first scan gets saved and I'm prompted for the next one, but the fingerprint scanner stops responding to anything...the red light stays on, but nothing happens in software. I was using the Jessie repo for the Raspi which contained the 0.5.1 build of libfprint. I've since abandoned that build so that I could compile myself with the --enable-debug-log switch. Below is a dump of the console with the debug log turned on. I'm hoping someone else has run into this issue so that I don't have to work through all of the libfprint source to fix it myself :-D

 ./enroll
This program will enroll your right index finger, unconditionally overwriting any right-index print that was enrolled previously. If you want to continue, press enter, otherwise hit Ctrl+C

fp:debug [fp_init]
fp:debug [register_driver] registered driver upekts
fp:debug [register_driver] registered driver aes3500
fp:debug [register_driver] registered driver aes4000
fp:debug [register_driver] registered driver aes2501
fp:debug [register_driver] registered driver aes2550
fp:debug [register_driver] registered driver uru4000
fp:debug [register_driver] registered driver vcom5s
fp:debug [register_driver] registered driver upeksonly
fp:debug [register_driver] registered driver aes1610
fp:debug [register_driver] registered driver aes1660
fp:debug [register_driver] registered driver aes2660
fp:debug [register_driver] registered driver vfs101
fp:debug [register_driver] registered driver vfs301
fp:debug [register_driver] registered driver upektc
fp:debug [register_driver] registered driver upekts_img
fp:debug [register_driver] registered driver etes603
fp:debug [find_supporting_driver] driver uru4000 supports USB device 045e:00bd
fp:debug [find_supporting_driver] selected driver uru4000 supports USB device 045e:00bd
Found device claimed by Digital Persona U.are.U 4000/4000B/4500 driver
sync:debug [fp_dev_open]
async:debug [fp_async_dev_open]
async:debug [fpi_drvcb_open_complete] status 0
sync:debug [sync_open_cb] status 0
Opened device. It's now time to enroll your finger.

You will need to successfully scan your finger 5 times to complete the process.

Scan your finger now.
sync:debug [fp_enroll_finger_img]
async:debug [fp_async_enroll_start] starting enrollment
fp:debug [generic_acquire_start] action 1
drv:debug [__ssm_call_handler] 0x1cba958 entering state 0
uru4000:debug [sm_read_regs] read 1 regs at 7
sync:debug [fp_enroll_finger_img] uru4000 will handle enroll stage 0/4
uru4000:debug [sm_read_reg_cb] reg value 1
drv:debug [__ssm_call_handler] 0x1cba958 entering state 1
drv:debug [__ssm_call_handler] 0x1cba958 entering state 3
uru4000:debug [sm_set_hwstat] set 81
drv:debug [__ssm_call_handler] 0x1cba958 entering state 4
drv:debug [__ssm_call_handler] 0x1cba980 entering state 0
drv:debug [__ssm_call_handler] 0x1cba980 entering state 1
uru4000:debug [sm_set_hwstat] set 01
drv:debug [__ssm_call_handler] 0x1cba980 entering state 2
uru4000:debug [sm_read_regs] read 1 regs at 7
uru4000:debug [sm_read_reg_cb] reg value 0
drv:debug [__ssm_call_handler] 0x1cba980 entering state 3
drv:debug [fpi_ssm_mark_completed] 0x1cba980 completed with status 0
drv:debug [__ssm_call_handler] 0x1cba958 entering state 5
poll:debug [fpi_timeout_add] in 300ms
poll:debug [get_next_timeout_expiry] next timeout in 0.299905s
poll:debug [get_next_timeout_expiry] next timeout in 0.299111s
uru4000:debug [irq_handler] recv irq type 56aa
uru4000:debug [init_scanpwr_irq_cb] late scanpwr interrupt
drv:debug [__ssm_call_handler] 0x1cba958 entering state 6
poll:debug [fpi_timeout_cancel]
drv:debug [__ssm_call_handler] 0x1cba958 entering state 7
uru4000:debug [sm_read_regs] read 16 regs at f0
uru4000:debug [sm_read_reg_cb] reg value 45
drv:debug [__ssm_call_handler] 0x1cba958 entering state 8
uru4000:info [init_run_state] Versions 0040 and 0014
drv:debug [fpi_ssm_mark_completed] 0x1cba958 completed with status 0
uru4000:debug [execute_state_change] wait finger on
fp:debug [fpi_imgdev_activate_complete] status 0
async:debug [fpi_drvcb_enroll_started] status 0
uru4000:debug [execute_state_change] wait finger on
uru4000:debug [irq_handler] recv irq type 0101
fp:debug [fpi_imgdev_report_finger_status] finger on sensor
uru4000:debug [execute_state_change] starting capture
drv:debug [__ssm_call_handler] 0x1cab468 entering state 0
drv:debug [__ssm_call_handler] 0x1cab468 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cab468 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_img_detect_minutiae] minutiae scan completed in 0.620926 secs
fp:debug [fpi_img_detect_minutiae] detected 43 minutiae
fp:debug [print_data_new] driver=02 devtype=0000
fp:debug [print_data_new] driver=02 devtype=0000
drv:debug [fpi_ssm_mark_completed] 0x1cab468 completed with status 0
uru4000:debug [execute_state_change] await finger off
uru4000:debug [irq_handler] recv irq type 0200
fp:debug [fpi_imgdev_report_finger_status] finger removed
fp:debug [fpi_imgdev_report_finger_status] reporting enroll result
async:debug [fpi_drvcb_enroll_stage_completed] result 3
sync:debug [sync_enroll_cb] result 3
uru4000:debug [execute_state_change] starting capture
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
sync:debug [fp_enroll_finger_img] enroll stage passed

Finger scanned.
fp:debug [fp_img_save_to_file] written to 'enrolled.pgm'
Wrote scanned image to enrolled.pgm
Enroll stage passed. Yay!

Scan your finger now.
sync:debug [fp_enroll_finger_img]
sync:debug [fp_enroll_finger_img] uru4000 will handle enroll stage 1/4
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 1
uru4000:debug [imaging_run_state] hw header lines 289
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 4
fp:debug [fpi_img_new] length=111360
fp:debug [fpi_imgdev_image_captured]
fp:debug [fpi_imgdev_image_captured] ignoring due to current state 2
drv:debug [__ssm_call_handler] 0x1cf5480 entering state 0

---- At this point, things just loop indefinitely, with the "ignoring due to current state 2" message.

Thanks,
Andreas
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint
Nils Ole Tippenhauer | 10 Sep 05:05 2014
Picon

Driver for Upek Eikon Touch 510?

Hi list,

I would like to start by thanking you for libfprint and the fprint_demo.
I've been using fprint_demo for little biometrics-related exercises in
teaching for a couple of years, and it is a great tool to quickly
demonstrate how captured images look like, and what kind of minituae are
detected.

I recently switched institutions and bought new fingerprint scanners, an
U.are.U 4500 optical scanner and a Upek Eikon touch 510. The 4500 works
nicely out of the box, but the Upek touch doesn't. I would like to ask
whether there is a known solution for the 510. The 510 is area-based
capacitive as far as I can tell. The Upek Eikon touch 310 was working
nicely the last time I used it. Both look visually very similar, so I
was hoping drivers would not be an issue.

I get the following info on dmesg when connecting the scanner:

usb 1-6: New USB device found, idVendor=147e, idProduct=2016
usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-6: Product: Biometric Coprocessor
usb 1-6: Manufacturer: UPEK

With the default libfprint from Ubuntu 14.04 (20080303git-ubuntu), the
UPEKE2 driver is loaded in fprint-demo. As far as I can tell, UPEKE2 is
line-based, so the driver is probably incorrect.

I took the latest libfprint git and disabled the UPEKE2 driver. In that
case, the upektc_img is loaded (sometimes referred to as upekts_img).
With that driver, an image is scanned, but it looks garbled. My guess it
that it is still assuming the device is line-based (from a brief look
into the code).

Can anyone give me some pointers towards getting the 510 working?

Cheers,
Nils
This email may contain confidential and/or proprietary information that is exempt from disclosure under
applicable law and is intended for receipt and use solely by the addressee(s) named above. If you are not
the intended recipient, you are notified that any use, dissemination, distribution, or copying of this
email, or any attachment, is strictly prohibited. Please delete the email immediately and inform the
sender. Thank You
Aydoğan Ersöz | 4 Sep 14:29 2014
Picon

Microcontroller port of nbis package

Dear fprint community,

I'm working on a microcontroller project which embeds Fujitsu MBF900PFW imaging sensor on it. The microcontroller that I'm using is STM32F417IGH6. It has 1MB of flash memory and 196KB of RAM.

I'm trying to see that if I can port libfprint into microcontroller world. I started from nbis part of the library. I managed to compile and link nbis for microcontroller. (I'm using Keil uVision 4.16 MDK as IDE on Windows 7)

The problem is nbis consumes (consume may not be the right word but never mind) extremely much memory for microcontroller. There are many arrays that takes (20000 * 4) bytes for example.

Do you have any idea that if I can port libfprint to microcontroller? Is it a meaningful task or not? Do I have a chance to optimize the memory? Do you have some simplified algorithms for lightweight usage?

I'm waiting your kind reply.

Thanks in advance and wish you the best.

Aydogan Ersoz
_______________________________________________
fprint mailing list
fprint <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/fprint

Gmane