[TRACKING] Fingerprint reader failing to register on 13th gen

Following the KB worked for me on my AMD Framework 13: Updating Fingerprint Reader Firmware on Linux for 13th Gen and AMD Ryzen 7040 Series Laptops

2 Likes

Delighted to hear it, we revamped it a bit to make it clearer.

I’ve got the same issue as Ajay above, with Arch on an AMD Framework.

I also have the same issue as Ajay above, with Arch on AMD 13 Framework. Any guidance would be great.

I managed to resolve the issue on my machine by booting into an Ubuntu live image and updating the firmware from there. After that the fingerprint reader worked as expected

1 Like

Arch users, this is going to be your best bet as we don’t test against Arch.

Also, Arch users you might still be getting bit by this fwupd 1.9.8 bug

until 1.9.9 is available, you could try temporarily downgrading to 1.9.7.

I’ve been running through the guide but I keep running into a weird bad address error. I’m working to fix the fedora 39 “failed to claim fingerprint device” error

Error:

❯ sudo fwupdtool install --allow-reinstall --allow-older goodix-moc-609c-v01000330.cab
[sudo] password for josie: 
Loading…                 [********                               ]
00:28:40.482 FuEngine             failed to add device /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.0: ioctl error: Bad address [14]
Decompressing…           [ -                                     ]
generic GUID requires a CHID, child, parent or sibling requirement

The error even shows up when doing sudo fwupdtool get-devices

I did recheck the ram and connectors. Also tried doing this through a different bootable drive. Still need to try booting into ubuntu and running the commands there.

1 Like

I’m having the same issue as Jose_Aranguren above. I’m on Fedora 39, and I’m unable to enroll my fingerprints through the GUI or command line.

> sudo fwupdtool install --allow-reinstall --allow-older goodix-moc-609c-v01000330.cab
Loading…                 [********                               ]22:54:47.724 FuEngine             failed to add device /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.0: ioctl error: Bad address [14]
Decompressing…           [ -                                     ]
generic GUID requires a CHID, child, parent or sibling requirement

I’m using fwupd 1.9.9, could the newer version of this be bad?

Edit: I was able to update the firmware using Ubuntu 23.10 (live USB) with fwupd 1.9.5.

Fedora users, the guide has been updated.

See the TROUBLESHOOTING fwupd is NEWER than 1.9.7 section.

Probably a dumb question, but secure boot can be turned back on after using fwupd to update the Goodix fingerprint firmware?
I’m using Ubuntu 23.10

Yes. You only need to disable it to do the update.

2 Likes

I followed the troubleshooting guide, but I still can’t get my fingerprint reader to work.

I have a 13th gen intel chip.
I just upgraded to Fedora 39 (KDE spin) today, but I never had the fingerprint reader working in 38 either, mainly because I didn’t try.
fwupd version 1.9.5-2.

I disabled Secure Boot, and I successfully got the cab file. When I run the command in step 3, I get the error

23:29:19.391 FuEngine             failed to add device usb:03:00:09: failed to claim interface 0x00: USB error on device 27c6:609c : Resource busy [-6]

in the middle of a bunch of lines that say Loading…

At the end it says No supported devices found.

What else can I try?

I’m having the same issue with a my laptop 13 which I just received a few days ago I’m getting:

fwupdmgr get-devices 1e8c8470-a49c-571a-82fd-19c9fa32b8c3
Laptop (13th Gen Intel Core)

├─Fingerprint Sensor:
│ Device ID: 4295296d98b3ba38c72f6baa33d24f03a1d428f6
│ Summary: Match-On-Chip fingerprint sensor
│ Current version: 01000330
│ Vendor: Goodix (USB:0x27C6)
│ Install Duration: 10 seconds
│ GUIDs: 34def4c7-9461-5a32-a945-5dde0ca57d88
│ 1e8c8470-a49c-571a-82fd-19c9fa32b8c3
│ Device Flags: • Updatable
│ • Device can recover flash failures
│ • Signed Payload

but when I do:

fwupdmgr update 1e8c8470-a49c-571a-82fd-19c9fa32b8c3

I get:

Devices with no available firmware updates:
• Fingerprint Sensor
• UEFI dbx
No updatable devices

I’m running:
Ubuntu 22.04.3 LTS

1 Like

I think I talked to soon. All of sudden the fingerprint seems to be working now. I was able to register 2 fingers.

Not sure what is going on.

Same problem for me today.

I have the Amd version, arrived Thursday, yesterday I’ve installed Manjaro Linux with KDE Plasma.

Same error when I try to enroll with fprintd and same results with fwupdmgr.

UPDATE: After reboot, now fwupdmgr doesn’t even show the fingerprint sensor

UPDATE: Using the windows on boxes method i’ve managed to revert back the firmware and solve the issue.

1 Like

If anyone is running arch just use this to downgrade the package to one that works.

pacman -U https://archive.archlinux.org/packages/f/fwupd/fwupd-1.9.6-1-x86_64.pkg.tar.zst

1 Like

Continuing the discussion from [TRACKING] Fingerprint scanner compatibility with linux (ubuntu, fedora, etc):

Hello Devyn,

Thank you for sharing this AppImage, I am experiencing issues with registering fprints and noticed this stopped working.

$ sudo ./fprint-clear-storage-0.0.1-x86_64.AppImage

** (process:74884): WARNING **: 23:11:24.039: Failed to load shared library 'libfprint-2.so.2' referenced by the typelib: /lib64/libgudev-1.0.so.0: undefined symbol: g_once_init_enter_pointer
/tmp/.mount_fprintwwEV5s//opt/fprint_clear_storage.py:7: Warning: cannot retrieve class for invalid (unclassed) type 'void'
  ctx = FPrint.Context()
Traceback (most recent call last):
  File "/tmp/.mount_fprintwwEV5s//opt/fprint_clear_storage.py", line 7, in <module>
    ctx = FPrint.Context()
TypeError: could not get a reference to type class

I suspect the newer libraries on my system could be causing the issue:

  • libfprint-1.94.6: /lib64/libfprint-2.so.2
  • libgudev-238-5: /lib64/libgudev-1.0.so.0

Aside from being inside an app image, is the script the same as the original python script?
The original Python script seemingly ran successfully and fprint shows that I have no registered fingerprints.

$ fprintd-list $USER
found 1 devices
Device at /net/reactivated/Fprint/Device/0
Using device /net/reactivated/Fprint/Device/0
User mikey has no fingers enrolled for Goodix MOC Fingerprint Sensor.

When I try to register I do not get an error, it just never completes.

Interestingly there is no error when enrolling, and am already at the correct firmware version?

fwupdmgr get-devices 1e8c8470-a49c-571a-82fd-19c9fa32b8c3 | grep Current
      Current version:    01000248

Edit:

Turns out there is no problem registering a fingerprint, its just that I have to keep tapping several times to train it to my finger.

Hi!

It’s been quite a long time since I worked on this. The python script is the same, but I created the AppImage because at the time libfprint didn’t have the required functionality to make this work, and I had to fork it and bundle that version with it. I believe that has been merged now, so now the python script alone should be good enough.

1 Like

For future reference, this is the python script →

#! /usr/bin/python3

import gi
gi.require_version('FPrint', '2.0')
from gi.repository import FPrint

ctx = FPrint.Context()

for dev in ctx.get_devices():
    print(dev)
    print(dev.get_driver())
    print(dev.props.device_id);

    dev.open_sync()

    dev.clear_storage_sync()
    print("All prints deleted.")

    dev.close_sync()

Remember to run it as root