Reverse Engineering Process - owaink/libfprint GitHub Wiki
Most devices have been reverse engineered by passing the device through to a Windows VM, then capturing the traffic with Wireshark. You can follow this process to try to capture the traffic:
Sniffing USB traffic on Linux
First, you need to sniff the USB (or SPI) traffic of the initialization process of your device. To do that, you need to install Wireshark (sudo apt install wireshark on Debian and its derivates). Then you need to load the usbmon module (sudo modprobe usbmon). After that, you can run sudo wireshark. You should have Wireshark running with usbmon0 in its interfaces. You will now be able to capture the USB traffic by double-clicking on the interface usbmon0. Or just by selecting the interface usbmon0 and pressing Ctrl+E. To stop the capture click on the red square at the top left of the window. Or press Ctrl+E again. Then save the file by clicking on the 6th icon from the left at the top of the window. Or by pressing Ctrl+S.
You now need to install Windows in a VM (Virtual Machine) and ensure that the proper drivers are installed for the device. You also need to pass the device to the VM. Furthermore, you should enroll your finger on the VM to check that every thing is functional. If you are not successful to enroll your finger on your VM you can try to do that on Windows.
After that you've got everything working, you need to stop the VM. Start the Wireshark capture. Ensure that the device is connected to the VM then start the VM. Ensure that the device is connected to the VM. After a few seconds, you can stop the capture, and save it. Don't forget to publish it on the Discord channel for your device. If there is no channel for your device yet, just do demand on the general channel. We will create one.
Sniffing USB traffic on Windows
If you are not successful to enroll your finger on your VM you can try to do that on Windows installed on your HDD / SDD. The instructions are more or less the same as Linux. So you should read them before. You need to install Wireshark and a Windows VM like on Linux. But instead of loading module usbmon you need to install USBPcap. It's already included in the wireshark installer. You just need to check it in the additional components of Wireshark. After that, instructions are the same as Linux.
If you are still not able to enroll your finger in the VM you can try to uninstall / reinstall the drivers for your device directly on the host while capturing the USB traffic. But please consider that you should always try to install Windows in a VM before using that method.
Wireshark Tools
You can find some wireshark packet dissectors here:
https://github.com/mpi3d/goodix-fp-dump/tree/master/wireshark