How can I make Raspberry PI work with a fingerprint scanner like this?

enter image description here

I found something for Arduino only (http://learn.adafruit.com/adafruit-optical-fingerprint-sensor) Are there any tutorials for the Raspberry or libraries? I couldn't find anything.

  • You will have to find out how to send the UART packets based on the Arduino and demo software and make your own methods in Perl, Bash or whatever your flavour.
    – Piotr Kula
    May 30, 2013 at 11:38
  • this was asked 4 years ago. Do you have a finalised project? Jun 7, 2017 at 12:54
  • I couldn't start the project... sorry
    – brgsousa
    Jun 7, 2017 at 18:22

4 Answers 4


That should work just fine. It uses the UART protocol, so it should be easy to cable (Only 2 wires to the UART GPIO pins (14 and 15 IIRC). As far as the libraries, I think all you will find is the 'demo software' download from Sparkfun's website. In the SDK(Software Development Kit) there are some cpp (C++) files, and some .h (header) files. I think between these and the datasheet you should have a pretty good chance at getting it working.

  • 1
    Lenik does make a good point as well. You should be able to use any USB fingerprint reader that supports *nix. That way you won't have to write your own drivers, libraries, etc.
    – Butters
    May 30, 2013 at 13:36

You'd better choose a different scanner, something like Microsoft Fingerprint Reader 1033 (or the same model in the different box -- Digital Persona Pro UareU 4000B). Both are dime-a-dozen, well supported using libusb and there are plenty of software available, including PAM modules for easy identification using the finger instead of the password.

Also, since these scanners provide a raw 8-bit grayscale picture, it's easy to change recognition backends or even write your own software, and the database of the fingerprints will be limited only by your imagination (and your external HDD size =).

Sparkfun scanner does not allow to capture raw images and only stores about a hundred of templates -- it's not nearly enough for a family of 3 or more, let alone using it for a small company office or any communal space.

  • I am sorry. Out of topic: Assume that I saved raw finger print images from a certain type of finger readers in a database and let other finger readers (from other makers) get connected to computers with my own recognizing application installed. All scanners can produce raw images. Is it guaranteed that the raw images can be used for comparison? What things must be considered? Jul 15, 2017 at 17:17

Now you can use this python driver for run GT511C3 fingerprint in raspberry pi



I have connected the Raspberry Pi Zero to the GT511-C3, and made a simple GUI for it. Connection diagram is something like the one below.

Here is the Python code on GitHub. Sorry I cannot paste the code here because the package spans several files.

I think the following connection diagram should be working:

----------------------                 ------------------------
GT-511C3     Tx (1)--|-----------------|--(10) RxD   R-Pi
             Rx (2)--|---.-----/\/\----|--(8)  TxD
                     |   |    1kOhm    |
                     |   \             |
                     |   /             |
                     |   \ 2kOhm       |
                     |   |             |
            Gnd (3)--|---.-------------|--(6) Gnd
             5V (4)--|-----------------|--(2) 5V
----------------------                 ------------------------

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.