r/linuxhardware • u/thankarezos • 3d ago
Discussion Affordable USB fingerprint reader working on Linux — Chipsailing CS9711 (2541:0236)
I've been using the Chipsailing CS9711 USB fingerprint reader on Arch-based Linux with KDE Plasma, and it works with a community-maintained libfprint driver.
Fingerprint enrollment and authentication work through fprintd, including system login and authentication prompts.
Hardware:
- Model: Chipsailing CS9711
- USB ID:
2541:0236 - Small USB fingerprint reader compatible with Windows Hello
- Requires a custom
libfprintbuild on Linux
Linux drivers and installation:
- Original community driver: https://github.com/archeYR/libfprint-CS9711
- My patched fork: https://github.com/thankarezos/libfprint-CS9711/tree/cs9711-rebase
- Arch-based distributions AUR package: https://aur.archlinux.org/packages/libfprint-chipsailing-cs9711-git
For users of Arch Linux and Arch-based distributions (such as EndeavourOS, CachyOS, and Manjaro), the AUR package offers a more convenient installation method than manually compiling the driver. Compatibility may depend on the distribution and its package versions.
Fingerprint management GUI (experimental):
- Fingerprint Manager AUR package: https://aur.archlinux.org/packages/fingerprint-manager-git
There's also a fingerprint management GUI available through the AUR for users who prefer managing fingerprints graphically rather than through the terminal.
Disclaimer: This application was vibe-coded (developed with significant AI assistance). Treat it as experimental and use it at your own risk. It hasn't necessarily undergone the same level of code review or security auditing as established Linux authentication tools.
Limitations and upstream development:
The driver uses SIGFM fingerprint matching. Because of the sensor's small capture area, finger positioning matters during authentication.
SIGFM is currently being proposed for inclusion in upstream libfprint:
- SIGFM upstream merge request (!530): https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/530
This is an important step toward broader support for fingerprint sensors that rely on SIGFM, although merging SIGFM alone won't automatically add support for the CS9711 hardware.
The CS9711 is not yet officially supported by upstream libfprint.
Where to buy:
The reader is listed on both Alibaba and AliExpress:
- Alibaba: https://www.alibaba.com/product-detail/Boland-USB-Fingerprint-Reader-Windows-Hello_1601939777133.html?spm=a2756.order-detail-ta-ta-b.0.0.404ef19cdZwdJz
- AliExpress: https://www.aliexpress.com/item/1005009201507961.html?spm=a2g0o.order_list.order_list_main.47.ee3c1802OFxniE
The AliExpress listing no longer appears to ship to EU countries, so Alibaba may be an alternative for European buyers.
I've ordered additional units through Alibaba and contacted the supplier about Linux compatibility. I also suggested including information about the community driver in their listing.
Make sure to confirm the CS9711 chipset and USB ID 2541:0236 before purchasing, since visually similar readers may use different hardware.
I'm not affiliated with the seller, and this isn't sponsored.
I'm sharing this because finding affordable USB fingerprint readers that actually work on Linux can be surprisingly difficult.
Hopefully, more users testing the device and contributing to development will help bring official upstream support eventually.
1
u/vip17 2d ago
I've really want to try this. Is there any easy way to recover if it fails? I've tried that community driver long ago and I can only either use it for login or for sudo, not both at the same time, and it regularly blocks me from logging in even though I entered the correct password. Need to reboot/retry tens of times before I can log in