The easiest way to enroll a new fingerprint is to use the Windows software. The interface/test software is unfortunately windows-only but you only need to use it once to enroll, to get the fingerprint you want stored in the module.

First up, you'll want to connect the sensor to the computer via a USB-serial converter. The easiest way to do this is to connect it directly to the USB/Serial converter in the Arduino. To do this, you'll need to upload a 'blank sketch' this one works well for "traditional" Arduinos, like the Uno and the Mega:
// this sketch will allow you to bypass the Atmega chip
// and connect the fingerprint sensor directly to the USB/Serial
// chip converter.

// Red connects to +5V
// Black connects to Ground
// White goes to Digital 0
// Green goes to Digital 1

void setup() {}
void loop() {}
The "blank" sketch won't work for "native USB" based Arduinos like the Leonardo, Micro, Zero, etc! Use the Leo_passthru sketch instead!

If you're using a Leonardo, Micro, Yun, Zero, or other native-USB device like ATSAMD21 or ATmega32U4-based controller, use the Leo_passthru sketch instead of the "blank" sketch.

// Allows Leonardo to pass serial data between fingerprint reader and Windows.
// Red connects to +5V
// Black connects to Ground
// Green goes to Digital 0
// White goes to Digital 1

void setup() {
  // put your setup code here, to run once:

void loop() {
  while (Serial.available())
  while (Serial1.available())

Wire up the sensor as described in the sketch comments after uploading the sketch. Since the sensor wires are so thin and short, we stripped the wire a bit and melted some solder on so it made better contact but you may want to solder the wires to header or similar if you're not getting good contact. When you plug in the power, you may see the LED blink to indicate the sensor is working.

If your sensor has all the same-color wires, The first wire from the left is ground, then the two data pins, then power. You'll have to cut, strip and solder the wires.


RX is the same as the White wire
TX is the same as the Green wire

If your sensor has different wires, The first wire from the left should be the black wire ground, then the two data pins, RX is the white wire, TX is the green wire then the red power wire. You'll have to cut, strip and solder the wires.

Start up the SFGDemo software and click Open Device from the bottom left corner. Select the COM port used by the Arduino.
And press OK when done. You should see the following, with a blue success message and some device statistics in the bottom corner. You can change the baud rate in the bottom left hand corner, as well as the "security level" (how sensitive it is) but we suggest leaving those alone until you have everything running and you want to experiment. They should default to 57600 baud and security level 3 so set them if they're wrong
If you get an error when you Open Device, check your wiring, try swapping the RX and TX wires on the sensor, that's a common mixup!
Lets enroll a new finger! Click the Preview checkbox and press the Enroll button next to it (Con Enroll means 'Continuous' enroll, which you may want to do if you have many fingers to enroll). When the box comes up, enter in the ID # you want to use. You can use up to 162 ID numbers.
The software will ask you to press the finger to the sensor
You can then see a preview (if you cliecked the preview checkbox) of the fingerprint.
You will then have to repeat the process, to get a second clean print. Use the same finger!

On success you will get a notice.
If there's a problem such as a bad print or image, you'll have to do it again.

This guide was first published on Nov 05, 2012. It was last updated on Nov 05, 2012.

This page (Enrolling New Users with Windows) was last updated on Dec 08, 2021.

Text editor powered by tinymce.