How to enable fingerprint device for Thinkpad t430s in 12.04?
I followed different tutorials to enable fingerprints reading, but without luck.
Fingerprint GUI keeps saying no device found
.
Any help on this?
= Edit Following first answer =
I followed the tutorial you posted to install the fingerprint
the result of lsusb is :
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 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 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 003: ID 17ef:1003 Lenovo Integrated Smart Card Reader
Bus 001 Device 004: ID 147e:2020 Upek
Bus 001 Device 005: ID 04f2:b2da Chicony Electronics Co., Ltd
Bus 003 Device 003: ID 04f2:0760 Chicony Electronics Co., Ltd Acer KU-0760 Keyboard
Bus 003 Device 004: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser
So it doesn't seem that my reader is supported... am I right ?
Okay I'm running a Thinkpad X1 and the same biometric chip is on it. I searched the whole internets twice for this problem, but, good news, I found a way to make it work in all cases, so here's a small "tutorial" that compiles the info from this thread and other places:
Installing the software
First, add the fingerprint PPA as mentioned by the previous posts, and install the required packages:
sudo add-apt-repository ppa:fingerprint/fingerprint-gui
sudo apt-get update
sudo apt-get install libbsapi policykit-1-fingerprint-gui fingerprint-gui
Then, download and untar this http://volker.de/wp-content/uploads/2012/12/BSAPI_4.3.291Lite_SDK_for_Linux.tar.gz.
Modifying libbsapi
Libbsapi's PPA currently does not really support this chipset, however, replacing the install's with the latest version will work. First, figure out you architecture (32 or 64), and then locate the libbsapi.so file in either the lib folder (for 32 bit) or the lib64 folder (for 64 bit). Then, copy this file (using sudo, or gksudo on nautilus) to the /usr/lib folder.
Then, we have to make an addition to this file: /lib/udev/rules.d/40-libbsapi.rules . The code do be added is:
#Added for Upek 2020 support
ATTRS{idVendor}==”147e”, ATTRS{idProduct}==”2020″, SYMLINK+=”input/touchchip-%k”, MODE=”0664″, GROUP=”plugdev”
ATTRS{idVendor}==”147e”, ATTRS{idProduct}==”2020″, ATTR{power/control}==”*”, ATTR{power/control}=”auto”
Do it using either : sudo nano /lib/udev/rules.d/40-libbsapi.rules
or sudo gedit /lib/udev/rules.d/40-libbsapi.rules
, whichever you might prefer.
Last modification and it's all done
We have to grant fingerprint-gui access to the reader's USB bus. Run lsusb
and locate the line that may look like this Bus 001 Device 003: ID 147e:2020 Upek
(actually look for the 147e:2020 Upek ID). 001 here indicates its bus id, and 003 is its Device id. Note yours. Then, issue the command (in my case, but adapt to your own bus and device id's):
sudo chmod 666 /dev/bus/usb/001/003
Then, start fingerprint-gui, and it should recognize your device, and configure it happily.
Actually, there is a newer version of libbsapi
available than is packaged in the fingerprint-gui
PPA that supports this device. I've tried it out with my T530 (scanner deviceid 147e:2020) and it works.
There is an instruction and a source for this lib on this page (scroll down on linked page for the English version). On my Ubuntu 12.10 setup, the path to the udev
rule file that has to be edited is different from the one in the tutorial, it is:
/lib/udev/rules.d/40-libbsapi.rules
Supported readers (run command lsusb to find out the ID of your reader) ============ 045e:00bb 061a:0110 147e:1002 045e:00bc 08ff:1600 147e:1003 045e:00bd 08ff:2500 147e:2015 045e:00ca 08ff:2580 147e:2016 0483:2015 08ff:5501 147e:3000 0483:2016 138a:0001 147e:3001 05ba:0007 147e:1000 147e:5002 05ba:0008 147e:1001 147e:5003 05ba:000a
Installation
First of all, if you have installed Fingerprint GUI manually before, get rid of it completely. Remove all binaries, shared libraries, any other files and undo all the changes you have made to your system config files (especially to files under /etc/pam.d/).
-
Add this PPA to your sources:
sudo add-apt-repository ppa:fingerprint/fingerprint-gui sudo apt-get update
-
Install the packages:
sudo apt-get install libbsapi policykit-1-fingerprint-gui fingerprint-gui
Log out of your session and log back in (we need the new session defaults to be picked up).
Setup
After installation launch Fingerprint GUI (can be found under System > Preferences) and enrol your fingerprints.
That should be all you need to do!
Try locking your screen, logging out and in, sudo in terminal and running graphical apps requiring root privileges.