Food Living Outside Play Technology Workshop
fingerprint arduino with 16x2 LCD
by pelegren on December 6, 2014
Table of Contents
fingerprint arduino with 16x2 LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Intro: Fingerprint arduino with 16x2 LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Step 1: Enrolling the fingerprint and connecting the FPS sensor and LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Step 2: Load the fingerprint sketch with LCD sketch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Related Instructables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Advertisements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/
Intro: Fingerprint arduino with 16x2 LCD
ARDUINO FINGERPRINT SCANNER WITH 16X2 LCD
this instructable is based and inspired by Arduino LCD tutorial and fingerprint scanner from Adafruit (http://www.adafruit.com/product/751). I have added 16x2 LCD into
the fingerprint to be able to see the status of the process of fingerprint scanning.
this is my first instructable, you are very welcome to comment and share.
materials:
Arduino Uno
16x2 LCD
fingerprint sensor
10k potentionmeter
220ohms resistor = 3pcs
red LED
green LED
jumper wires
breadboard
future improvements to be carried out:
1. auto shutdown when no input is detected within specified time to save power.
2. wake up function
3. integrate more sensor or inputs to activate finger scanning within predetermined scenario
4. use actuator to use for an application
Step 1: Enrolling the fingerprint and connecting the FPS sensor and LCD
please follow the instructions given from adafruit tutorial http://www.adafruit.com/product/751 on how to connect the fingerprint sensor to the arduino during enrollment
process. download the software for windows and install in your computer. enrolling the fingerprint using the software makes the process a lot easier.
make sure to add the adafruit library to your arduino library.
go to http://arduino.cc/en/Tutorial/LiquidCrystalSerial for tutorial of the LCD and the instructions on how to connect the components.
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/
Step 2: Load the fingerprint sketch with LCD sketch
copy and paste the codes below which i had modified in order to accommodate fingerprint scanning and display the results on LCD.
/***************************************************
This is an example sketch for our optical Fingerprint sensor
Designed specifically to work with the Adafruit BMP085 Breakout ----> http://www.adafruit.com/products/751
These displays use TTL Serial to communicate, 2 pins are required to interface Adafruit invests time and resources providing this open source code, please support
Adafruit and open-source hardware by purchasing products from Adafruit!
Written by Limor Fried/Ladyada for Adafruit Industries. BSD license, all text above must be included in any redistribution ****************************************************/
/**********************MODIFIED BY PELEGREN of bedRoonics Labs**********************************/
/********************** ARDUINO FINGERPRINT SCANNER with 16x2 LCD monitor***************/
#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>
#include <LiquidCrystal.h>
#include <stdint.h>
int getFingerprintIDez();
// pin #2 is IN from sensor (GREEN wire)
// pin #3 is OUT from arduino (WHITE wire)
SoftwareSerial mySerial(2, 3);
LiquidCrystal lcd(9, 8, 7, 6, 5, 4); // initialize the library with the numbers of the interface pins
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&ySerial);
void setup()
{ Serial.begin(9600); // initialize the serial communications:
lcd.begin(16,2); lcd.setCursor(0,0); lcd.print("Scan your finger");
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11, OUTPUT);
pinMode(A0, INPUT);
finger.begin(57600); // set the data rate for the sensor serial port }
void loop() // run over and over again
getFingerprintID();
delay(100);
digitalWrite (13,HIGH);
uint8_t getFingerprintID()
{ uint8_t p = finger.getImage();
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/
switch (p)
case FINGERPRINT_OK:
lcd.clear();
lcd.print(" Image taken... ");
delay(1000);
break;
case FINGERPRINT_NOFINGER:
return p;
case FINGERPRINT_PACKETRECIEVEERR:
return p;
case FINGERPRINT_IMAGEFAIL:
return p;
default:
return p; }
// OK success!
p = finger.image2Tz();
switch (p) {
case FINGERPRINT_OK:
break;
case FINGERPRINT_IMAGEMESS:
return p;
case FINGERPRINT_PACKETRECIEVEERR:
return p;
case FINGERPRINT_FEATUREFAIL:
return p;
case FINGERPRINT_INVALIDIMAGE:
return p;
default:
return p; }
// OK converted!
p = finger.fingerFastSearch();
if (p == FINGERPRINT_OK)
lcd.clear();
lcd.print(" Found match! ");
digitalWrite(11, HIGH);
delay(1000);
digitalWrite(11,LOW); // turn on green LED to indicate match
else if(p == FINGERPRINT_NOTFOUND)
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Did not match! ");
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/
delay(1000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" scan finger! ");
return p;
else
{ return p; }
// IF FOUND A MATCH............
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Found ID #");
lcd.print(finger.fingerID);
lcd.setCursor(0,1);
lcd.print("confidence ");
lcd.print(finger.confidence); }
// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) return -1;
p = finger.image2Tz();
if (p != FINGERPRINT_OK) return -1;
p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -1;
// found a match!
digitalWrite(13, LOW);
delay(10);
digitalWrite(13, HIGH);
delay(10);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Found ID # ");
lcd.print(finger.fingerID);
lcd.setCursor(0, 1);
lcd.print("confidence ");
lcd.print(finger.confidence);
return finger.fingerID;
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/
Related Instructables
Build yourself a
clock and
thermometer by Door to Open Light/temperature
DIY Fingerprint arick Fingerprint Source Sensor by
Scanning Scanning Hardware (A Your Image on
Garage Door doorlock with appleman123987
fingerprint lock an Arduino! -
Opener by access history solution) TFT LCD Screen
nodcah printer by (Photos) by Guide by
marios8543 loovee Qtechknow
Advertisements
Comments
1 comments Add Comment
Kirkthepyro says: Dec 6, 2014. 6:02 AM REPLY
This is really cool, but maybe you should upload the code in a file and give s little explanation of it in the actual instructable, so others can modify it.
http://www.instructables.com/id/fingerprint-arduino-with-16x2-LCD/