Finger guard

Open the door with your fingerprint and control it with telegram bot

Similar projects worth following
Use your finger to open the door.
It is based on raspberry pi 1, with UART fingerprint scanner and a simple relay.
It is not the final product, it's still in development.

This project is based on Raspberry pi 1 and UART fingerprint scanner.
It is very easy to build and control. 
Fingerprint scanner is able to store 1000 fingerprints.
You can add new one, delete or even download image of scanned fingers.
Everything is controlled via telegram bot / or web-interface(in future)

Adding new finger is very easy:

*Push "Add new finger" in telegram bot and place your finger to scanner two times
*Write the name of the person, and it will be stored in text file with the number of the fingerprint( it is need to delete specific finger. )
* As soon as you added new finger, push "Start search", place your finger and this time relay will change its state

* Connect relay to door and you do not need any keys no more, use your finger to enter.


For this you will need an RPI1/2/3 (it doesn't matter)  with the Raspbian installed. You can get it here:

Boot up Raspbian and make some configuration.

sudo cp /boot/cmdline.txt /boot/cmdline_backup.txt

Edit the file:

sudo nano /boot/cmdline.txt

Delete any parameters involving the serial port "ttyAMA0" or "serial0" if it exist, which in this example is:


Which gives:

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

Press CTRL+X to exit and save .

Next, you have to disable the serial getty service:

sudo systemctl stop serial-getty@ttyAMA0.service
sudo systemctl disable serial-getty@ttyAMA0.service

Enable UART

Enabling UART with minimum core frequency:

pi@raspberrypi:~ $ sudo nano /boot/config.txt

# Enable UART

Enabling UART with maximum core frequency:

pi@raspberrypi:~ $ sudo nano /boot/config.txt

# Enable UART

Install Python library for ZFM fingerprint sensors

~$ echo "deb wheezy main" | sudo tee -a /etc/apt/sources.list
~$ wget -O - | sudo apt-key add -
~$ sudo apt-get update
~$ sudo apt-get install python-fingerprint
~$ sudo usermod -a -G dialout pi
~$ cd /usr/share/doc/python-fingerprint/examples/

In my case i host telegram bot apart from rpi, so i created ssh secure public key to communicate with raspberry.

Login to server where the telegram bot is hosted:

server1:~# cd /root/
server1:~# ssh-keygen -t dsa

Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): <PRESS ENTER TO ACCEPT DEFAULT>
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): <PRESS ENTER FOR NO PASSPHRASE>
Enter same passphrase again: <PRESS ENTER FOR NO PASSPHRASE>
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/
The key fingerprint is:
41:03:aa:dc:cc:b9:39:50:65:bc:ee:7b:36:d2:64:7a root@server1

Copy the public key from 'server1' to 'raspberrypi'...

server1:~# scp /root/.ssh/

You can test it with 

ssh root@

Create Telegram...

Read more »

add new finger

x-python - 1.97 kB - 02/06/2018 at 08:42


x-python - 1.96 kB - 02/06/2018 at 08:42


x-python - 1.09 kB - 02/06/2018 at 08:42


  • 1 × Raspberry Pi 1 You can use RPI 2-3 as well
  • 1 × Relay Power Supplies / Uninterruptible Power Supplies (UPS)
  • 1 × Fingerprint UART scanner

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates