3

I have a new Dell Inspiron 13 7000 series (2017)

The dell comes with a finger print reader that works in Windows 10 (I am not sure how I can get the name manufacturer of the hardware).

However, I have just installed Fedora 27 and not sure I can get the finger print reader to work.

This is lsusb:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 04f3:0c01 Elan Microelectronics Corp. 
Bus 001 Device 003: ID 8087:0a2a Intel Corp. 
Bus 001 Device 002: ID 0c45:6715 Microdia 
Bus 001 Device 006: ID 3938:1031  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

lspci

00:00.0 Host bridge: Intel Corporation Device 5914 (rev 08)
00:02.0 VGA compatible controller: Intel Corporation Device 5917 (rev 07)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 08)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Device 9d4e (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 Network controller: Intel Corporation Wireless 7265 (rev 59)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961

Many thanks for any suggestions,

  • May I assume that you've tried fprint ? fprint Fedora wiki page ... fprint developer page at freedesktop – RubberStamp Nov 21 '17 at 3:05
  • The gdm-plugin-fingerprint cannot be found. So I don't think the article hasn't been updated. Any other suggestions? Thanks. – ant2009 Nov 22 '17 at 14:40
  • I have a laptop with a fingerprint reader... I haven't tried it yet. I'll give a whirl and see what happens. As far as I understand, Dell has distanced itself from supporting their readers on GNU/Linux. Perhaps, the Dell reader will not work even if mine does.... my testing will not occur until next Monday since the next few days will be mostly dedicated to family activities over the USA Thanksgiving holiday. – RubberStamp Nov 22 '17 at 14:45
  • 1
    can you boot to windows and get manufacturer/vendor details from windows device manager? – rajaganesh87 Nov 23 '17 at 13:21
  • 1
    I have found a code for Goodix fingerprint sensor. That code is mainly written for Android devices. I have tried to compile it for Ubuntu 19.04. This code would be helpful to write a new driver. github.com/adnanjee/Goodix-GF3208 – user2077875 May 20 at 22:01
2
+50

Unfortunately it seems that Dell has used in several models a fingerprint reader that encrypts its communications, and the Linux driver developer has no access to the decryption keys.

Please see discussion about a similar problem at the Dell user forum: http://en.community.dell.com/techcenter/os-applications/f/4613/t/20006668

There's also mention of an ongoing reverse-engineering effort for one family of such fingerprint readers, the Validity/Synaptics readers with USB vendor code 138a and product codes of the form 009X: https://github.com/nmikhailov/Validity90

1

Partial answer:

The first step is to identify the hardware. The Windows Hardware Manager is great for this, as Windows has the correct drivers, and can tell you which device is which.

As you removed Windows, what's left is googling and guessing. What you google for is the xxxx:yyyy identifier (vendor and device id). This finds that the 8087:0a2a by Intel is a Bluetooth controller, so the informed guess is that USB Bus 1 is the internal bus, the other 3 devices on it are also built into your laptop, and curiously, there's no device with number 005, so possibly there's another device that has been turned off.

The next step is find out which of the other devices are known, and see if one of the leftover devices is the fingerprint reader. That's where you come in again: You know what hardware your laptop has (probably a camera, possibly a touchpad on the USB bus, maybe more stuff). So go through dmesg directly after boot, and see if you can identify if there are drivers claiming some of the USB devices. After that, do an lsusb -v, and see if the Descriptor or Interface classes don't give hints about what kind of device it can be.

The fingerprint reader doesn't have to be on the USB bus; you also have quite a few I2C/SMBUS controllers, so it would be interesting to see what chips are behind these. However, that's not so easy, as probing gives very little information.

Anyway, even if we can find out which device the fingerprint reader is, chances are slim that there's a driver for it that will work out of the box.

1

it looks like touchpad and fingerprint sensors are handled by the same device, likely 04f3:0c01.

Unfortunately, libfprint does not support Elan devices.

Refer to bugs.launchpad.net/ubuntu/+source/libfprint/+bug/1641290. you can try compiling this version of fprint: github.com/sbechet/libfprint

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.