Fingerprint based Voting system

Published on . Written by

Fingerprint based Voting system
The most severe and frequently happening situations while conducting elections is rigging (One person give multiple votes). Right now, we are using an electronic voting machine and to identify people who already gave their vote, people will be given an ink mark on the finger. But today because of rapid development in technology, that can be erased and there is a chance of rigging. Through this project, you are going to create a unique Fingerprint based Voting system in order to avoid the above-mentioned problem.

Read more..
You will need an Arduino to interface the microcontroller with a fingerprint scanner, LCD display, and Wi-Fi module. You will programme the microcontroller in such a way that whenever the fingerprint does not match with the previously stored fingerprints then only the voter will be allowed to vote. Once a new voter has given his vote, along with his vote, his fingerprint will be stored on the remote server. If by any chance the same person came to vote again, the number pad will not be available to vote as the fingerprint has been matched with previously stored Fingerprints. Thereby security will be restored by avoiding rigging.

Project Description:

  1. Arduino/Genuino Uno: The digital and analog input/output pins equipped in this board can be interfaced to various expansion boards and other circuits. A serial communication interface is a feature in this board, including USB which will be used to load the programs from computer.
  2. Finger Print Scanner R305: The working of this module includes procedures like
    • Enrolling Fingerprint
    • Image Processing
    • Comparing Fingerprint
    • Template Generating
    In this module, there will be one high powered Digital Signal Processing chip, which will do procedures like
    • Image rendering and Calculation
    • Feature-Finding and Searching
    Because of high reliability, this module can be connected to any microcontroller or system with TTL serial, send packets of data to take photos, detect prints, hash, and search. This module can be used to enroll new fingers up to 162 fingerprints. There is a red or green LED in the lens that lights up only during a scanning process.
  3. LCD Display (16*2): Generally we use LCD to display the limited set of output statements. At present we use mostly 16*2(4-bit communication) and 16*4(8-bit communication), which means 16 letter spaces with 2 lines and 16 letter spaces with 4 lines(each line will have 16 letter spaces)
  4. Number pad: This Number pad will have numbers from 1 to 9.
  5. Wi-Fi Module : ESP8266 Wi-Fi module is generally used to establish the wireless communication between the devices. But this module is not capable of 5-3V logic shifting and will require an external logic level converter.

Project Implementation:

  1. Interface the Fingerprint sensor, LCD and Wi-Fi module with Arduino
  2. Power the components and upload the code
  3. Scan the fingerprint of the person who came to vote
  4. If the fingerprint is a new one(doesn't match with any other), the keypad will be opened and that person will be allowed to vote and his fingerprint will be stored in the remote server
  5. If the fingerprint match matches previously stored, then the keypad will not be opened to give the vote
  6. Upload all the data to the remote cloud for future analysis

Software requirements:

  1. Arduino IDE : You will be needing Arduino IDE software to write and upload the programming logic onto the Arduino Uno board
  2. Thingspeak : Also, you need to create an account in the ThinkSpeak IoT platform to integrate the system onto the cloud and store the data online

Skyfi Labs Projects
Programming language: Arduino Programming (C++)

Kit required to develop Fingerprint based Voting system:
Technologies you will learn by working on Fingerprint based Voting system:


Any Questions?


Subscribe for more project ideas