#

1,

(1 articles)

πŸ› οΈ Fixing Fingerprint Reader Issues on Lenovo ThinkPad X1 Carbon (Linux)

If your **Synaptics fingerprint reader** (ID `06cb:0123`) stops working after suspend/resume cycles, here's a practical fix. ### πŸ” Problem Symptoms * `fprintd` logs show: `Ignoring device due to initialization error: endpoint stalled or request not supported` * `dmesg` shows: ``` usb 1-5.4: can't set config #1, error -22 can't autoresume for authorization: -22 ``` * Device fails until reboot unless manually reset. --- ### βœ… Disable USB Autosuspend for the Fingerprint Device The fingerprint reader struggles with resuming from low-power states. Disable autosuspend to keep it active across suspend cycles. #### Create Udev Rule ```bash sudo vim /etc/udev/rules.d/99-disable-autosuspend-fingerprint.rules ``` Paste: ```udev # Disable USB autosuspend for Synaptics fingerprint reader # Laptop: ThinkPad X1 Carbon Gen 13 (Aura Edition) # # This Synaptics device (06cb:0123) has issues resuming from suspend when USB autosuspend is enabled. # After waking from sleep, the fingerprint reader may fail to initialize with a "USB endpoint stalled" # or "can't set config" error (-22), making fingerprint authentication unavailable until a reboot. # # This rule forces the device's power mode to "on" (instead of the default "auto"), # preventing the kernel from suspending the device and avoiding the resume bug. # # Verify: # cat /sys/bus/usb/devices/1-5.4/power/control # should return "on" instead of "auto" ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="06cb", ATTR{idProduct}=="0123", TEST=="power/control", ATTR{power/control}="on" ``` Then run: ```bash sudo udevadm control --reload-rules sudo udevadm trigger ``` βœ… Confirm with: ```bash cat /sys/bus/usb/devices/1-5.4/power/control # Should say "on" ``` --- ### πŸ”§ (Optional) Debugging Tools If you want to inspect what’s going on: * Trace `fprintd` startup: ```bash sudo systemctl stop fprintd.service sudo strace -f /usr/libexec/fprintd ``` * Watch device events: ```bash sudo udevadm monitor --environment --udev ``` * Check the USB tree: ```bash lsusb | grep -i synap ``` --- ### πŸ’‘ Notes * USB autosuspend is often a power-saving optimization, but buggy firmware sometimes breaks resume support. * This fix ensures the fingerprint reader is always powered, trading a little power for stability. * Firmware updates via `fwupdmgr` may help in the future: ```bash sudo fwupdmgr get-devices sudo fwupdmgr update ``` --- πŸ“Œ **TL;DR:** If fingerprint auth breaks after sleep on your Linux laptop, **disable autosuspend** for the fingerprint USB device and use `unbind/bind` or `authorized` toggling as recovery tools. Udev rules can automate the fix.