Picture of DIY Fingerprint Scanning Garage Door Opener

As a person without a car, I don't need to carry keys around everywhere I go. Because of this, I've been locked out of my own house several times. It's a pain to wait for someone with a key, so I thought I would do something about it.

This project is my way of solving this problem, while getting the chance to interface with an awesome fingerprint scanner (aka: FPS).

Also, this module isn't restricted to just garage doors, for you can create different kinds of simple motorized locks to suit your needs.

Remove these adsRemove these ads by Signing Up

Step 1: Materials

Picture of Materials


Part Supplier (pictures are clickable!)
Fingerprint scanner (and JST connector) Sparkfun Sparkfun
Serial LCD kit (w/ATmega328)Sparkfun
NPN transistor Sparkfun Radioshack
BuzzerSparkfun Radioshack
Speaker wireRadioshack
3D printed caseSee step 9 for files
Copper tapeSparkfunAmazon
5V voltage regulatorSparkfunRadioshack
9V batterySparkfunRadioshack
9V battery connector SparkfunRadioshack
SPDT limit switch

Here is a list of almost all of the parts (It's a Sparkfun wishlist).


  • Soldering iron/solder
  • Electrical tape
  • Hook up wire/ jumpers
  • Wire cutter/stripper
  • Perfboard
  • Assorted resistors
  • Screws
  • Drill
  • A few LEDs for testing
  • 5V FTDI board (Sparkfun)
  • Hot glue gun
  • Access to a 3D printer
  • Optional: IC holder (8 pin for ATtiny and 28 pin for ATmega)
  • Optional: Another Arduino board/10uF capacitor (see step 5 for details)
1-40 of 202Next »
CianR7 days ago

my fps seems to give up after about 1min of being on. i turned on the serial debugging and just before it stops working it spits out:

loopingFPS - IsPressFinger

FPS - SEND: "55 AA 01 00 6C 63 6F 6D 26 00 D1 02"

please help

nodcah (author)  CianR2 days ago

I see a few possibilities here:

1.) The FPS is overheating because it's running off of 5V (it has been a problem for some others, not me though).
2.) The capacitive touch pad is defective
3.) The code is constantly checking for a finger somewhere, then not doing anything else

I don't know how helpful that is, but if you give me a little more information, I can help you out a little more.

CianR nodcah2 days ago
Thank you very much for your speedy response. I realised that the fps had stability issues when I powered the Arduino via a wall wart but not when connected to the usb port. I realised this could have been because of the voltage provided by the wall wart allowed the Arduino to output it's full 5v. So I just put a 1N4001 rectifier diode on the power line to the fps which knocked a volt or two off the supply and also added some 7805 voltage regulators with 4700uf capacitors to the power supply and this fixed the stability issues.
nodcah (author)  CianR2 days ago
Thanks for posting your solution! :-D
JeromeA211 days ago
Hi nodcah. Thanks for this great guide. There's just one question though, is there a way to make this accept just any fingerprint and not the ones which have been stored.
nodcah (author)  JeromeA211 days ago
Well you could call the enroll function and see if it returns an error (not recognized as a fingerprint). If fps.CaptureFinger(true) returns true, then a fingerprint is recognized by the system.
Or you could use fps.IsPressFinger(), which just detects if the capacitive touch is triggered.
Thanks a bunch sir. Just what I needed.


How can I reset fingerprint scanner? I had to unplug usb cable of arduino after each uploading.

nodcah (author)  ihsan.kirkali1 month ago
I had a limit switch to turn off the module that cuts the power. You can also make a switch that triggers a reset in the code using a watchdog timer.

so usar o PIC com esse módulo?

nodcah (author)  carlos.junior.7141 month ago

This project is actually made with the Arduino platform, not PIC. If you could find out how to do it with PIC, post your results here and I'll be sure to link it in my Instructable! =)

Ok... Farei e enviarei para a sua avaliação. Vamos ir trocando ideia, meu endereço de e-mail é:

RizalR2 months ago

hi thank you very much for writing this article, it really cools!

but how do i get the Unique ID of each fingerprint? because i don't want to store the fingerprint id to arduino database. I'm planning to combine fingerprint scanner with php mysql database through the Internet. So, my idea is to read the unique ID of each fingerprint, than send that ID to my php script.

Maybe the concept is like RFID. As you know every RFID card has its own unique ID.

nodcah (author)  RizalR1 month ago

The only way to do that would be to first share the fingerprint that is associated with that ID (if it's only one scanner, that's not a problem). Then, you should be able to link each ID recieved when you use fps.Identify1_N() to a person, this should achieve what you want. (I changed the code above to do just that actually) :-D

AjinkyaJ12 months ago

Hey nodcah!

I would like to know if there is anyway i could delete and replace the fingerprint scans on the gt 511 module. Does the library provide us with that functionality?

Thanks so much!

nodcah (author)  AjinkyaJ11 month ago

Sorry for the late reply. To delete a scan, use fps.DeleteID(IDNumber). IDNumber being the numeric ID of the fingerprint.


Bought the FPS GT-511C1R and would like to do some tests.

What I need is simple, but do not know how to do. I need to save the digital in a variable to send over the network. It would be possible to help me with the commands "GetTemplate / settemplate"?

nodcah (author)  vinicius_borges1 month ago

Sorry, but to my knowledge, you can only do this with the computer program, not the arduino.

aizirt3 months ago

hi, I have tried the codes but it keeps on giving me this errors:

FPS_GT511C3\FPS_GT511C3.cpp.o: In function Command_Packet::GetPacketBytes()': C:\Users\Documents\New folder\arduino-1.0.6\libraries\FPS_GT511C3/FPS_GT511C3.cpp:17: undefined reference tooperator new'
FPS_GT511C3\FPS_GT511C3.cpp.o: In function FPS_GT511C3::GetResponse()': C:\Users\Documents\New folder\arduino-1.0.6\libraries\FPS_GT511C3/FPS_GT511C3.cpp:735: undefined reference tooperator new'

louisheng.044 months ago

i would like to ask is it okie for me not to put that board ?i circle in pic.

nodcah (author)  louisheng.044 months ago

Yes, but It will need to be replaced by an Arduino or similar. If you're looking to keep the small form factor, you can try this.

could you please email me this schematic to
and also more detail on this project please

nodcah (author)  louisheng.044 months ago

The schematic is in step 2 and this Instructable is all of the information I have on the project. If you have a question about something specifically, just ask =).

If you are wondering about replacing the Serial LCD Kit, you can simply hook the LCD up to an arduino using this schematic.

my meaning was what is on the board because the glue was covering the board

and also this board
i want to see the soldering part pls

bogie71294 months ago

I've never built ANYTHING electrical or electronic, nor have I ever taken a course of any kind re electronics. I can solder, I can follow directions, and I have all the tools shown for this project. I also have a high IQ and a friend who knows about electronics. Is this project suitable for me as a first-timer? Thanks, great tutorial, BTW, and a great idea. If I can do this, and since this is a residence, I'd probably put one on my back door, too, because of friends and family living close by (the other side of the fence) who sometimes need access.

nodcah (author)  bogie71294 months ago
Yes!! This can be made by anyone if you follow the instructable and ask questions when you need! If you're using this for the garage, you'll be able to use this design exactly, but if you're using it on a door, it'll need some modification/other parts. Let me know if you have any questions!

I would like to add a servo motor and a 12 key number pad to this set up, but I am unsure if the boards could handle them. This is the number pad - And this simple servo motor - It would be so very helpful if you could tell me what I would need to make this work.

nodcah (author)  SirNotAppearing4 months ago

Sorry for the late response. To add the keypad, only one analog input is needed. The servo will need to be powered externally (or from a power source that can supply more than 500mA) and will require a PWM output. My recommendation is that you get rid of the buzzer I use and replace it with the servo. You shouldn't need any external boards to handle either of these. Feel free to ask me any more questions if you have them! =D


Great Instructable, even with the pointless use of Arduino. As mentioned, the electronics definitely need to be put into the garage. The only thing outside should be the scanner and potentially a chip on the scanner to send a special sequence to the electronics inside. Otherwise, it would be far too easy to just rip this off of the wall, short the wires, and break into the house.

Exocetid4 months ago

This is a great Instructable, but I would make the following modifications:

1) I would secure the scanner electronics in the garage.
2) I would have just a nondescript, waterproof security key switch cover (browse here) that you lift up and insert your finger into a hole in the garage wall to access the scanner.
3) Lastly, if your fingerprint was not recognized, you would receive a shock from a small gag shocker unit (see this Instructable).

The last one would quickly discourage tampering and because one of my favorite parts from Dune was the testing that Paul receives from the Reverend Mother Gaius Helen Mohiam to see if he is a Bene Gesserit, but I digress.

Hi Nodcah ..... Plz tell me how can i show image of fingerprint using this sensor??? Plz Plz Plz need ur help .... i want image from this sensor without using using demo software

nodcah (author)  aisha.ahmed1105 months ago
You'll need to use some higher level stuff if you're not using the software. The datasheet has all the commands and such to receive an image from the scanner (0x62). But, I don't know how to interpret that data and it's waaayy beyond the scope of this project.
If you figure it out, please share it!

i tried but unsuccessful in obtaining image ..... i have to submit it some where... If any one knows plzzz help me

Hi Nodcah ..... Plz tell me how can i show image of fingerprint using this sensor??? Plz Plz Plz need ur help .... i want image from this sensor without using using demo software

brmarcum5 months ago

So it's been 5 months and I presume everything is still working just fine? You mentioned in a comment about guessing that the 9V may not last more than a week. Have you found a way to resolve the power issue long term?

nodcah (author)  brmarcum5 months ago
I'm actually updating the code to work more reliably when the temperature changes, so it's temporarily unavailable. But, I attached it to a phone charger (plugged into a nearby outlet), so it can run continuously!
Thanks for showing interest! =)
Mirucag6 months ago

HI Nodcah... Greetings from Kenya

I just got all the requirments and i have challenged myself to be done with all in 2 days. I have been a bit stuck though with programming the attiny. i am also using a serial lcd as opposed to the one you have used. If i get stuck i will definitely disturb you.

Thank you though for the great project and congratulations on your win.


nodcah (author)  Mirucag6 months ago

Thanks! If you have any questions, I'll be here! =)

JoshHawley6 months ago

Good job on this! Thanks for making sure I got credit for writing the library =D

1-40 of 202Next »