Fingerprint Reader is detected, but not usable for unlocking

  • I would like to use my fingerprint reader, and I am able to enrol it in the gnome setting, however when it comes to actually using it, I get the failed to match fingerprint error.

  • I don’t know whether the problem could be that I am permanently asked to swipe over the reader, when in windows I used to just press the reader, but not swipe over it. I am able to enrol it in both ways (pressing and swiping) but cannot use it to unlock anything in either way.

  • My fingerprint reader is detected if I run lsusb:
    Bus 001 Device 005: ID 04f3:0c1a Elan Microelectronics Corp. ELAN:Fingerprint
    and seems to be supported according to the libfprint list of supported devices

  • Here is my System Information:

System:
  Kernel: 5.15.21-1-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0
    parameters: BOOT_IMAGE=/boot/vmlinuz-5.15-x86_64
    root=UUID=e980b863-ca1f-4e22-bb6b-665a19ddff2d rw quiet apparmor=1
    security=apparmor resume=UUID=3a5c48ea-fa12-4147-b57e-4dbdb9d07104
    udev.log_priority=3
  Desktop: GNOME 41.3 tk: GTK 3.24.31 wm: gnome-shell dm: GDM 41.3
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: Timi product: TM1701 v: N/A
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: Timi model: TM1701 v: MP serial: <superuser required> UEFI: INSYDE
    v: XMAKB5R0P0502 date: 10/13/2017
Battery:
  ID-1: BAT0 charge: 23.1 Wh (55.9%) condition: 41.3/60.0 Wh (68.8%)
    volts: 7.6 min: 7.6 model: SUNWODA R15B01W type: Li-ion serial: <filter>
    status: Discharging
Memory:
  RAM: total: 7.65 GiB used: 4.75 GiB (62.1%)
  RAM Report:
    permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: Intel Core i7-8550U bits: 64 type: MT MCP arch: Coffee Lake
    family: 6 model-id: 0x8E (142) stepping: 0xA (10) microcode: 0xEA
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 8 MiB desc: 1x8 MiB
  Speed (MHz): avg: 701 high: 707 min/max: 400/4000 scaling:
    driver: intel_pstate governor: powersave cores: 1: 700 2: 700 3: 707 4: 700
    5: 700 6: 700 7: 702 8: 700 bogomips: 32012
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat arch_perfmon
    art avx avx2 bmi1 bmi2 bts clflush clflushopt cmov constant_tsc cpuid
    cpuid_fault cx16 cx8 de ds_cpl dtes64 dtherm dts epb ept ept_ad erms est
    f16c flexpriority flush_l1d fma fpu fsgsbase fxsr ht hwp hwp_act_window
    hwp_epp hwp_notify ibpb ibrs ida intel_pt invpcid invpcid_single lahf_lm
    lm mca mce md_clear mmx monitor movbe mpx msr mtrr nonstop_tsc nopl nx pae
    pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge pln pni popcnt pse pse36 pti
    pts rdrand rdseed rdtscp rep_good sdbg sep smap smep ss ssbd sse sse2
    sse4_1 sse4_2 ssse3 stibp syscall tm tm2 tpr_shadow tsc tsc_adjust
    tsc_deadline_timer vme vmx vnmi vpid x2apic xgetbv1 xsave xsavec xsaveopt
    xsaves xtopology xtpr
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf
    mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
    mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
    mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
    IBRS_FW, STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Xiaomi driver: i915 v: kernel
    bus-ID: 00:02.0 chip-ID: 8086:5917 class-ID: 0300
  Device-2: NVIDIA GP108M [GeForce MX150] vendor: Xiaomi Mi Notebook Pro
    driver: nvidia v: 510.47.03 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
    chip-ID: 10de:1d12 class-ID: 0302
  Device-3: Chicony XiaoMi USB 2.0 Webcam type: USB driver: uvcvideo
    bus-ID: 1-6:3 chip-ID: 04f2:b59a class-ID: 0e02
  Display: x11 server: X.Org 1.21.1.3 compositor: gnome-shell driver:
    loaded: modesetting,nvidia unloaded: nouveau alternate: fbdev,nv,vesa
    display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
    s-diag: 582mm (22.9")
  Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 142
    size: 344x194mm (13.5x7.6") diag: 395mm (15.5")
  OpenGL: renderer: Mesa Intel UHD Graphics 620 (KBL GT2) v: 4.6 Mesa 21.3.5
    direct render: Yes
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Xiaomi
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl bus-ID: 00:1f.3
    chip-ID: 8086:9d71 class-ID: 0403
  Sound Server-1: ALSA v: k5.15.21-1-MANJARO running: yes
  Sound Server-2: JACK v: 1.9.20 running: no
  Sound Server-3: PulseAudio v: 15.0 running: yes
  Sound Server-4: PipeWire v: 0.3.45 running: yes
Network:
  Device-1: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel
    bus-ID: 03:00.0 chip-ID: 8086:24fd class-ID: 0280
  IF: wlp3s0 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: noprefixroute scope: link
  IF-ID-1: docker0 state: down mac: <filter>
  IP v4: <filter> scope: global broadcast: <filter>
  IF-ID-2: vpn0 state: up speed: 10 Mbps duplex: full mac: N/A
  IP v4: <filter> type: noprefixroute scope: global broadcast: <filter>
  IP v6: <filter> virtual: stable-privacy scope: link
  WAN IP: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8
    bus-ID: 1-5:2 chip-ID: 8087:0a2b class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 4 state: up address: <filter>
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 704.24 GiB used: 304.19 GiB (43.2%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: SanDisk model: Extreme Pro 500GB
    size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: 101200RL temp: 44.9 C scheme: GPT
  ID-2: /dev/nvme1n1 maj-min: 259:4 vendor: Samsung
    model: MZVLW256HEHP-00000 size: 238.47 GiB block-size: physical: 512 B
    logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter>
    rev: CXB7401Q temp: 25.9 C scheme: GPT
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 456.66 GiB size: 448.5 GiB (98.21%)
    used: 303.55 GiB (67.7%) fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
    label: N/A uuid: e980b863-ca1f-4e22-bb6b-665a19ddff2d
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 316 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1 label: N/A
    uuid: 592C-3652
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
  ID-1: swap-1 type: partition size: 8.8 GiB used: 658.5 MiB (7.3%)
    priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3 label: N/A
    uuid: 3a5c48ea-fa12-4147-b57e-4dbdb9d07104
Unmounted:
  ID-1: /dev/nvme1n1p1 maj-min: 259:5 size: 499 MiB fs: ntfs label: N/A
    uuid: A68E15988E15625B
  ID-2: /dev/nvme1n1p2 maj-min: 259:6 size: 100 MiB fs: vfat label: N/A
    uuid: A27D-5F71
  ID-3: /dev/nvme1n1p3 maj-min: 259:7 size: 16 MiB fs: <superuser required>
    label: N/A uuid: N/A
  ID-4: /dev/nvme1n1p4 maj-min: 259:8 size: 237.87 GiB fs: ntfs label: N/A
    uuid: 40AE7F22AE7F0FA0
USB:
  Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 12 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Device-1: 1-5:2 info: Intel Bluetooth wireless interface type: Bluetooth
    driver: btusb interfaces: 2 rev: 2.0 speed: 12 Mb/s power: 100mA
    chip-ID: 8087:0a2b class-ID: e001
  Device-2: 1-6:3 info: Chicony XiaoMi USB 2.0 Webcam type: Video
    driver: uvcvideo interfaces: 2 rev: 2.0 speed: 480 Mb/s power: 500mA
    chip-ID: 04f2:b59a class-ID: 0e02
  Device-3: 1-7:4 info: Realtek RTS5129 Card Reader Controller
    type: <vendor specific> driver: rtsx_usb,rtsx_usb_ms,rtsx_usb_sdmmc
    interfaces: 1 rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 0bda:0129
    class-ID: ff00 serial: <filter>
  Device-4: 1-8:5 info: Elan Micro ELAN:Fingerprint type: <vendor specific>
    driver: N/A interfaces: 1 rev: 2.0 speed: 12 Mb/s power: 100mA
    chip-ID: 04f3:0c1a class-ID: 0000
  Device-5: 1-9:6 info: Areson Corp 2.4G Receiver type: Keyboard,Mouse
    driver: hid-generic,usbhid interfaces: 2 rev: 1.1 speed: 12 Mb/s
    power: 100mA chip-ID: 25a7:fa23 class-ID: 0301
  Hub-2: 2-0:1 info: Super-speed hub ports: 6 rev: 3.0 speed: 5 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
Sensors:
  System Temperatures: cpu: 42.0 C pch: 34.5 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 318 Uptime: 4h 52m wakeups: 11 Init: systemd v: 250
  tool: systemctl Compilers: gcc: 11.1.0 clang: 13.0.1 Packages: 2272
  pacman: 2194 lib: 515 flatpak: 59 snap: 19 Shell: fish v: 3.3.1 default: Zsh
  v: 5.8 running-in: gjs inxi: 3.3.12

Any ideas on what to do?

Unfortunately, libfprint’s interpretation of “supported” doesn’t mean “tested to be working correctly for both enrolling and verification”, but simply “we can detect it”. ELAN makes a long list of fingerprint devices, and only a handful of them actually works with libfprint, yours might not be in the list. I also have 2 others in the supported list that can only enroll, but verification totally fails. Debugged, the enrolled image is far from what looks like a proper fingerprint image.

You might want to file an issue to ensure they’re aware of your device problem:

1 Like

Hi @Gandalfos , also worth going through this page :
https://wiki.archlinux.org/title/Fprint
So you would be using the command line, more than the Gnome UI. which will be a bit more precise.
for any issues, it is good practice to post the outputs of :

journalctl -r -u fprintd.service
systemctl status fprintd

Good luck.

For me, enrolling one finger multiple times (like 10 times) reduced the problem but never solved it. It still fails 50% of times.