- Регистрация
- 1 Мар 2015
- Сообщения
- 1,481
- Баллы
- 155
If you're using a Linux laptop with a fingerprint reader and TLP installed, you might have encountered an annoying issue: the fingerprint scanner stops working after suspending or booting up the system. Your logs might show errors like these:
Device reported an error during identify: Cannot run while suspended.
This article explains why this happens and how to fix it.
?️ Why does this happen?
TLP is a power management tool for Linux that automatically applies energy-saving settings to various hardware components, including USB devices. One of its features is USB autosuspend, which reduces power consumption by suspending inactive USB devices.
Unfortunately, fingerprint readers connected via USB are often misclassified as idle devices. Once autosuspend kicks in, the fingerprint daemon (usually fprintd) cannot communicate with the hardware because the device is suspended.
When that happens, authentication attempts fail until you manually wake up the device or reset the USB subsystem.
How to check if TLP is managing your fingerprint reader
Run the following command:
tlp-stat -u
If the fingerprint reader is listed with control = auto, TLP is indeed setting it to suspend.
How to prevent TLP from suspending your fingerprint reader
Starting with TLP 1.4, the configuration key is USB_DENYLIST (previously USB_BLACKLIST in older versions).
This configuration prevents TLP from applying autosuspend to your fingerprint reader, keeping it powered and responsive.
Optional: verify the fix
After applying the denylist, rerun:
tlp-stat -u
Your fingerprint reader should now show control = on instead of auto, meaning it will stay active.
You can also test fingerprint authentication immediately to ensure it works without errors.
Final notes
With this fix, your fingerprint scanner should work reliably across reboots and suspends without being disabled by TLP.
Hope this saves you hours of debugging!
Device reported an error during identify: Cannot run while suspended.
This article explains why this happens and how to fix it.
?️ Why does this happen?
TLP is a power management tool for Linux that automatically applies energy-saving settings to various hardware components, including USB devices. One of its features is USB autosuspend, which reduces power consumption by suspending inactive USB devices.
Unfortunately, fingerprint readers connected via USB are often misclassified as idle devices. Once autosuspend kicks in, the fingerprint daemon (usually fprintd) cannot communicate with the hardware because the device is suspended.
When that happens, authentication attempts fail until you manually wake up the device or reset the USB subsystem.
How to check if TLP is managing your fingerprint reader
Run the following command:
tlp-stat -u
If the fingerprint reader is listed with control = auto, TLP is indeed setting it to suspend.
How to prevent TLP from suspending your fingerprint reader
Starting with TLP 1.4, the configuration key is USB_DENYLIST (previously USB_BLACKLIST in older versions).
- Open TLP's config file: sudo nano /etc/tlp.conf
- Find (or add) the following line, replacing 138a:0090 with your device ID: USB_DENYLIST="138a:0090"
- Save the file and apply the changes: sudo tlp start. Alternatively, restart TLP: sudo systemctl restart tlp
- Restart the fingerprint service to reinitialize the device:sudo systemctl restart fprintd
This configuration prevents TLP from applying autosuspend to your fingerprint reader, keeping it powered and responsive.
Optional: verify the fix
After applying the denylist, rerun:
tlp-stat -u
Your fingerprint reader should now show control = on instead of auto, meaning it will stay active.
You can also test fingerprint authentication immediately to ensure it works without errors.
Final notes
- Some distributions ship with TLP preinstalled and configured aggressively. Even if you didn’t configure it yourself, it might still be active.
- Other tools like powertop or manual /sys tweaks can also interfere with USB power management.
- If your fingerprint reader still fails after the above steps, check for conflicting settings in /etc/udev/rules.d/ or additional power management tools.
With this fix, your fingerprint scanner should work reliably across reboots and suspends without being disabled by TLP.
Hope this saves you hours of debugging!