goodixtls511: disable the temperature model so enrolment can finish - #39
Open
finikorg wants to merge 1 commit into
Open
goodixtls511: disable the temperature model so enrolment can finish#39finikorg wants to merge 1 commit into
finikorg wants to merge 1 commit into
Conversation
The temperature model is a time-based estimate, not a reading from the device. Its 180s default (DEFAULT_TEMP_HOT_SECONDS) aborts enrolment on this sensor with "Device disabled to prevent overheating" before the 20 configured stages can be collected: each press yields a small partial image, so a full enrolment needs a long run of presses. Measured on a Huawei MateBook D (27c6:5110), enrolment repeatedly stalled at 12-16 of 20 stages when the cutoff fired. With the model disabled the same enrolment completes. goodixmoc, elanmoc, fpcmoc and synaptics all disable it the same way. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@huawei.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
On a Goodix TLS 511 (
27c6:5110, Huawei MateBook D) enrolment repeatedlyaborts partway with:
It is not a real thermal condition.
fpi-device.cruns a time-basedestimate of device temperature, and
DEFAULT_TEMP_HOT_SECONDSis 180s(
fp-device-private.h:39). The driver never setstemp_hot_seconds, so itgets that default.
This device is
FP_SCAN_TYPE_PRESSwithnr_enroll_stages = 20, and eachpress contributes a small partial image. A full enrolment therefore needs a
long run of presses, and the 180s cutoff routinely fires first.
Measurements
Three consecutive attempts on the same machine, each stopped by the cutoff
rather than by finishing:
With the model disabled, the same finger and technique enrols 20/20.
Change
fp-device.c:191treats a negative value as "temperature managementdisabled". This mirrors what four in-tree drivers already do:
including the other Goodix driver.
Note
Independent of #37, which fixes the sigfm/NBIS algorithm selection. Both are
needed for a working setup on this sensor: #37 makes matching work at all,
this one lets enrolment finish. They touch different lines and do not
conflict.
Tested on Ubuntu 24.04, kernel 6.8.0-138, OpenCV 4.6.0.