# OMS fingerprint module: reconstructing USB communication for a Linux driver

> The OMS fingerprint module investigation reconstructs USB communication with the 33a7:2388 match-on-chip sensor and implements it as a libfprint driver. Its notes describe USBC transport acknowledgements, EF01 frames, checksums and enrollment and identification responses; the author reports successful hardware enrollment and verification.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-08
- Original resource: <https://github.com/BlueApple233/OMS-fingerprint-linux>
- Primary source: <https://github.com/BlueApple233/OMS-fingerprint-linux/blob/fc0d55b6fb3377af0a76270514a91637a1264c35/README.md>
- Catalog page: <https://awesomerea.org/resources/oms-fingerprint-linux-case/>
- Record JSON: <https://awesomerea.org/resources/oms-fingerprint-linux-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/oms-fingerprint-linux-case/index.md)

## Requirements & limits

- **Prerequisites:** OMS fingerprint module with USB ID 33a7:2388; libfprint 1.94.100 and the listed Meson, Ninja, GCC and library dependencies for the documented build.
- **Limits:** Keep USB autosuspend disabled for this device.
- **Limits:** The upstream patch was prepared but had not been submitted.
- **License:** LGPL-2.1-or-later license.

## Primary sources

1. <https://github.com/BlueApple233/OMS-fingerprint-linux/blob/fc0d55b6fb3377af0a76270514a91637a1264c35/README.md>
2. <https://github.com/BlueApple233/OMS-fingerprint-linux/blob/fc0d55b6fb3377af0a76270514a91637a1264c35/driver/README.md>

## More in Protocols

- [zwift-api: mapping Zwift's private data endpoints](https://awesomerea.org/resources/zwift-api-case/index.md) · Case study
- [Gear VR Controller: decoding Samsung's BLE remote protocol](https://awesomerea.org/resources/gear-vr-controller-ble-case/index.md) · Case study
- [Acer Predator Helios 16: reconstructing Linux lighting control](https://awesomerea.org/resources/acer-predator-helios-16-rgb-case/index.md) · Case study
- [Powerology AM8268N: reconstructing a USB display protocol for Linux](https://awesomerea.org/resources/powerology-am8268n-usb-display-case/index.md) · Case study
- [SuperCam Thermal Viewer: reconstructing QuanLi camera streaming](https://awesomerea.org/resources/quanli-supercam-case/index.md) · Case study
- [ktctl: reconstructing FiiO JA11 USB equalizer control](https://awesomerea.org/resources/ktctl-ja11-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
