FIM43-Redeye 7893c2cb36 goodixmoc: Wait for finger removal before completing verify
The goodixmoc driver's verify state machine was missing a
WAIT_FINGER_UP state between IDENTIFY and PWR_BTN_SHIELD_OFF.
After the sensor reported a match/no-match result, the driver
immediately completed the verify operation without waiting for
the finger to be lifted from the sensor.

This caused problems when fprintd retried verification after a
no-match: the finger was still on the sensor, so the same
(wrong) finger was scanned again instantly. On fast match-on-chip
readers, all retry attempts could be exhausted in under a second,
giving the user no time to reposition their finger.

Add GOODIX_VERIFY_WAIT_FINGER_UP to the verify state machine,
mirroring the existing GOODIX_ENROLL_WAIT_FINGER_UP in the
enroll flow. The new state sends MOC_CMD0_FINGER_MODE /
MOC_CMD1_SET_FINGER_UP to the sensor and waits for the finger
to be removed before advancing to PWR_BTN_SHIELD_OFF.

The callback handles the same cases as the enroll equivalent:
- Timeout (5s): retry the finger-up wait
- Protocol error: fail the SSM
- Success: clear FINGER_STATUS_PRESENT and advance

Link: https://gitlab.freedesktop.org/libfprint/fprintd/-/issues/209
2026-03-17 17:55:38 +00:00
2019-08-05 20:05:13 +02:00
2026-02-10 06:33:00 +01:00
2026-02-10 06:35:26 +01:00
2012-12-14 13:17:24 +01:00
2007-11-15 09:54:35 +00:00
2018-05-18 01:16:30 +02:00
2020-05-22 15:00:11 +02:00
2026-02-10 03:18:14 +01:00
2026-02-10 03:18:14 +01:00
2024-05-03 15:35:11 +02:00

LibFPrint

LibFPrint is part of the FPrint project.


Button Website Button Documentation

Button Supported Button Unsupported

Button Contribute Button Contributors

History

LibFPrint was originally developed as part of an academic project at the University Of Manchester.

It aimed to hide the differences between consumer fingerprint scanners and provide a single uniform API to application developers.

Goal

The ultimate goal of the FPrint project is to make fingerprint scanners widely and easily usable under common Linux environments.

License

Section 6 of the license states that for compiled works that use this library, such works must include LibFPrint copyright notices alongside the copyright notices for the other parts of the work.

LibFPrint includes code from NIST's NBIS software distribution.

We include Bozorth3 from the US Export Controlled distribution, which we have determined to be fine being shipped in an open source project.

Get in touch

  • IRC - #fprint @ irc.oftc.net
  • Matrix - #fprint:matrix.org bridged to the IRC channel
  • MailingList - low traffic, not much used these days

Badge License

Description
Library for fingerprint readers For unsupported devices, please see/edit https://gitlab.freedesktop.org/libfprint/wiki/-/wikis/Unsupported%20Devices Do **not** open issues for unsupported devices that are already listed in the wiki page. For other devices, please simply add them to the wiki rather than opening a bug report here. Opening an issue to ask for a driver will not have any effect other than taking time from developers who need to close the issue again.
Readme 28 MiB
Languages
C 95.7%
Python 3.1%
Meson 0.9%
Shell 0.2%