15
prakhar@pr3d4tOr:~$ lsusb -s 001:003 -v

Bus 001 Device 003: ID 138a:0018 Validity Sensors, Inc. Fingerprint scanner
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass        17 
  bDeviceProtocol       255 
  bMaxPacketSize0         8
  idVendor           0x138a Validity Sensors, Inc.
  idProduct          0x0018 Fingerprint scanner
  bcdDevice            0.78
  iManufacturer           0 
  iProduct                0 
  iSerial                 1 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           46
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4

I have searched high and low but I cannot get this to work. All questions related to 138a:0018 are either unanswered or old. Any help guys?

xyz
  • 1,786
  • 1
  • 12
  • 22
  • 1
    Searched for the USB ID and found a bug, says it's been fixed. You can look through the comments for more info: https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/827669 – Nattgew Apr 07 '14 at 17:49

2 Answers2

18

Ok, so after a lot of hair pulling and googling, I finally got my fingerprint sensor to work:

EDIT (03/01/2015): Building the package from source. You might need to set up a build environment first. Make sure that you have packages $sudo apt-get install autoreconf libusb libusb-dev libnss3 libgdk-pixbuf2 git libtool:

Script for auto build and install (written by me and shared from my Dropbox). cd to wherever you downloaded the script to and and run it with superuser:

$ chmod +x install.sh
$ sudo ./install.sh

And voila. Go to user accounts, and you'll see a fingerprint login option.

If you're using ecryptfs (What is this?) for /home, you will encounter this issue at login. Fix.

EDIT (08/10/2014): You can also build your own driver by compiling libfprint patched with 138a:0018 and 138a:0017 drivers (see 03/01/2014). Their licenses apply, obviously. I don't know for sure, but you can probably build this on a 32-bit system as well.

EDIT (02/10/2014): After switching to Arch Linux, I recently found out that this driver (libfprint-vfs5011-git) is present in AUR. You can download the updated version from AUR for this package (I'll update this answer soon to include instructions as well). EDIT: Added instructions, see 03/01/2014.

EDIT (13/09/2014): After recent updates to fprint, the fingerprint recognition is pretty awesome :P

Pre-built. (See the 03/01/2014 edit for the latest git version):

  1. Open up a terminal (Ctrl+Alt+T) and add the PPA for fprintd.

    $ sudo add-apt-repository ppa:fingerprint/fprint

  2. Update your installation.

    $ sudo apt-get update && sudo apt-get upgrade

  3. Get the required packages.

    $ sudo apt-get install fprintd libpam-fprintd

  4. Download the driver for the fingerprint scanner (shared via my Dropbox). Add a comment if the download is not working. See the latest edit (02/10/2014) for a repository version.

  5. cd to wherever you downloaded the driver to.

  6. Install the driver.

    $ sudo dpkg -i fprint-vfs5011_0-1_amd64.deb

xyz
  • 1,786
  • 1
  • 12
  • 22
  • 2
    Where did you got the 138a:0018 driver from? I have the 138a:0017 sensor and I am (nothing personal) quite wary against bit.ly links pointing to an unknown Dropbox share from a user I don't know. Seriously +1 you got this working, but can you explain how you got to the specific driver? – Jurian Sluiman May 07 '14 at 07:08
  • The driver is built from this bug report (@Nattgew mentions it above). I downloaded it sometime back and I do not know why it's not present in Ubuntu upstream updates. Anyway, I reuploaded it to my dropbox and shared it. Besides, I think 138a:0017 already has driver support. You can try this but I cannot claim this works for 138a:0017. I have only tested it on 138a:0018, trusty. – xyz May 07 '14 at 16:24
  • 138a:0017 doesn't work either – jplandrain Jun 13 '14 at 11:53
  • @jplandrain Should support 138a:0017 now. – xyz Jan 03 '15 at 12:11
  • Is there a patch available for 138a:0010 as well?

    I have Bus 001 Device 005: ID 138a:0010 Validity Sensors, Inc. and the install.sh mentioned above doesn't have the patch so I get mv: cannot stat ‘0001-lib-Add-VFS5011-driver-v2.patch’: No such file or directory ./install.sh: line 29: ./0001-lib-Add-VFS5011-driver-v2.patch: No such file or directory ./autogen.sh: 2: ./autogen.sh: libtoolize: not found make: *** No targets specified and no makefile found. Stop. make: *** No rule to make targetinstall'. Stop.`

    – Hrishikesh May 17 '15 at 11:36
  • This does not work! – Jason Jul 18 '15 at 06:50
  • @Jason I updated the script. – xyz Jul 18 '15 at 07:20
  • 1
    Dropbox download doesn't seem to work anymore. – Björn Jan 31 '16 at 09:33
  • 2
    The dropbox download link is broken. It was said by @Björn a year ago as well :D. Fix for this is will be appreciated. – Dinesh Devkota Feb 11 '17 at 04:25
  • yeah, it would be cool if you could update the link for your dropbox. It seems to be broken. I would even be down to donate a little something if you would. Thanks in advance! – DPS Oct 04 '19 at 18:27
  • The link is broken. If somebody have the working link please update the link. – Prifulnath Jun 29 '20 at 11:44
  • Sorry guys, I know the link is broken but unfortunately I cannot find the package anymore. You can try searching for the file libfprint-vfs5011-git.tar.gz. This is the driver I originally used (I am not the owner/maintainer) to add fingerprinting support inside libfprint. It used to be hosted here. – xyz Jun 30 '20 at 03:31
2

I had the same issue and this worked for me:

sudo add-apt-repository ppa:fingerprint/fingerprint-gui
sudo apt-get update
sudo apt-get install libbsapi policykit-1-fingerprint-gui fingerprint-gui

You have to log out of your session and log back in afterwards.

Supported readers (run command lsusb to find out the ID of your reader)

 045e:00bb    08ff:1683    08ff:2580    08ff:268d    147e:2020
 045e:00bc    08ff:1684    08ff:2660    08ff:268e    147e:3001
 045e:00bd    08ff:1685    08ff:2680    08ff:268f    1c7a:0603
 045e:00ca    08ff:1686    08ff:2681    08ff:2691
 0483:2015    08ff:1687    08ff:2682    08ff:2810
 0483:2016    08ff:1688    08ff:2683    08ff:5501
 05ba:0007    08ff:1689    08ff:2684    08ff:5731
 05ba:0008    08ff:168a    08ff:2685    138a:0001
 05ba:000a    08ff:168b    08ff:2686    138a:0005
 061a:0110    08ff:168c    08ff:2687    138a:0008
 08ff:1600    08ff:168d    08ff:2688    138a:0011
 08ff:1660    08ff:168e    08ff:2689    138a:0017
 08ff:1680    08ff:168f    08ff:268a    138a:0018
 08ff:1681    08ff:2500    08ff:268b    147e:1000
 08ff:1682    08ff:2550    08ff:268c    147e:2016

and

 0483:2015    147e:1003    147e:3000
 0483:2016    147e:2015    147e:3001
 147e:1000    147e:2016    147e:5002
 147e:1001    147e:2020    147e:5003
 147e:1002

from “Fingerprint readers integration” team on launchpad