Lenovo E14 Fingerprint reader with Ubuntu
Problem
I recently bought a Lenovo laptop from eBay, installed Ubuntu on it, and noticed that the fingerprint reader wasn't set up out of the box. lsusb showed:
Bus 003 Device 003: ID 06cb:00da Synaptics, Inc.
Solution
I found this forum post, but the device identifiers were slightly different, so the process which worked for me is:
- Note the ID from
lsusb. In my case it was06cb:00da - If you haven't got Git already, install it using
sudo apt install git - Install all of the package dependencies:
sudo apt install meson cmake pkg-config libcrypto++-dev libusb-1.0-0-dev libcap-dev libseccomp-dev libglib2.0-dev libdbus-1-dev libfprint-2-dev libfprint-2-tod-dev libjson-glib-dev innoextract libssl-dev - Clone the synaTudor code repository:
git clone https://github.com/Popax21/synaTudor.git cd synaTudorandgrep "00be" -R *to find all of the occurences of the hard-coded device ID- Replace all occurrences with your device ID, using your chosen editor
- Prepare the build:
meson build cd buildand then build the code:ninja- Install the built driver:
sudo ninja install
This should have installed the driver successfully. You can test it using fprintd-enroll, which should prompt for your password and then show messages reacting to tapping on the fingerprint reader.
I was also missing the PAM module, so needed to install and enable it:
- Install the module:
sudo apt install libpam-fprintd - Enable Finterprint in
sudo pam-auth-update
Now reboot, and once logged in, open Ubuntu's Settings, select the System category in the sidebar, and then Users. You should now see the option to enable 'Fingerprint Login'.