How to use a fingerprint reader sensor with STM32F4 Discovery board

stm32f4

I would like to include a fingerprint reader sensor in a home project that I've been planing. Searching online it seems that the most standard kind of fingerprint reader sensor you can find is this one.

The problem is that I can't find any datasheets or example projects that would show me how to include it in own project. I am using STM32F4 Discovery board. I have found a website that shows how to use it in an Arduino project and even has some library written for Arduino. But I don't have and will not use Arduino.

Is there any resource that could help me get this kind of sensor running on my STM32F4 Discovery board ?

Best Answer

In my opinion you have two options in implementing this:

Option 1:
Use the Adafruit sensor and communicate with it via UART. Its is not any hard, you need to understand how your UART works then look at the Adafruit library. With that you can write your own "library"/api for your STM32F4. This is the easier option because you do not have to deal with any image processing. Unfortunately it will become an issue if you need to transfer the fingerprint images or templates from the module to some external storage.

Option 2:
The microcontroller you are using is very powerful, with a Cortex M4 core. You can use it to interface with an optical sensor like any other camera (VSYNC, HSYNC, PIXCLK, D[0:9], I2C/SCCB). Unfortunately for this method you have to write your own fingerprint recognition/verification algorithm. The advantages, however, are you do not have two powerful processors when you could have one and now you can store either the image or a template as you wish.

I must say that the last option requires advanced image processing techniques which may include Gabor filters, FFT, pattern recognition etc. It will also require you to easily maneuver 2D arrays or 1D arrays or 2D images.