Fingerprint and RFID Based Attendance System Using Raspberry Pi and MySQL Database

About: Newbie

Video of This Project

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Hardware Components

  1. R305 Fingerprint Module
  2. PL2303 USB to TTL
  3. RC522 RFID Module
  4. 20x4 LCD
  5. Raspberry Pi
  6. Ethernet Cable
  7. Push Button (8)
  8. Buzzer
  9. Jumper Wire
  10. SD Card (16 GB)
  11. Potensiometer (10k)

Step 2: Software Components

  1. PC/Laptop
    Install Xampp application in your laptop/PC. Connect your PC/Laptop to the ethernet network that has an DHCP Server. Then, open CMD and run this following command: ipconfig. Look your IP Address (mine is and remember it. Run Xampp, in Module Apache klik Config, select Apache (httpd.conf). Find and edit this command : #Listen Remove " # " and then save the httpd.conf file.
  2. Raspberry Pi
    I assume that on the SD Card there is a Raspbian Stretch Operating System. Insert the SD Card to the Raspberry Pi and power on the Raspberry Pi.

Step 3: Hardware Integration

  1. Raspberry Pi and R305 Fingerprint Module
    Follow this link

  2. Raspberry Pi and RC522 RFID Module
    Follow this link

  3. Raspberry Pi and 20x4 LCD Module
    Follow this link

  4. Raspberry Pi and Push Button
    Desain your PCB layout using Eagle software, you can look the picture attached and follow the pinout picture.
  5. Raspberry Pi and Buzzer
    You can use another available I/O in Raspberry Pi, but for this project I choose pin 40 for buzzer.

Step 4: Software Integration

  • For PC/Laptop
    1. Make sure that your Laptop/PC is connected to an ethernet network that has a DHCP Server. So you can check your Laptop/PC IP Address still same as before (mine is
    2. Run Xampp Software, then klik Start on Apache and MySQL Module.
    3. Run Browser (e.g Mozilla Firefox), then in the Address Bar type this command:, then enter. You will be directed to phpmyadmin for making database.
    4. Create database same as the picture attached.
  • For Raspberry Pi
    1. Open this link

    2. Download Register and Searching python file. After that you can place it in Desktop.

Step 5: Run the System

  1. Power on your Raspberry Pi and connect it to the same ethernet network as PC/Laptop. Make sure that your Raspberry Pi have connected to the same network by run this command in terminal : ifconfig. If connected your Raspberry Pi will have IP Address like or other. To perform this proses, you should have keyboard and mouse, then plug it to Raspberry Pi USB Port.
  2. Run Xampp Application on Laptop/PC. Then klik Start Apache and MySQL Module.
  3. Run the code:
    • If you want to Register a new user, run on terminal by this command : sudo python .
    • If you want to Searching a user, run on terminal by this comman : sudo python .

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    12 Discussions


    Question 14 days ago on Step 5

    Great work you've done sir, am not an engineering student but how can i verify that the student is present or not please help sir


    8 months ago

    Hello good afternoon, I am trying to make these methods work with a PIC, I have the connections and some routines already done, however I would like to make the following query.

    The sensor has a limited memory, I want to save the templates in a database, I understand that the process is to take the image "readImage", convert it "convertImage", create a template "createTemplate", then load the saved template again " loadTemplate "and then send that template, or am I wrong?

    How can I send this template? Should it be done with "downloadCharacteristics"?

    According to the code that you show with "" it seems that you had the templates saved also in the sensor, or do not know if I'm wrong?

    2 replies

    Reply 6 months ago

    Tengo la misma duda, la memoria del biométrico es limitada, por lo que depende de la memoria para poder cargar personas en el sistema, lograste no depender de las posiciones de MEMORIA de la huella digital?


    6 months ago

    Hi , i'm in an engineering school and working on this project without RFID and buttons and have a lot of issues on it, can we contact ourselves in order to realize it?I have just a few questions about the db connection. Thank's a lot.

    1 reply

    7 months ago

    Great work. Did you use breadboard for some part of the connections?


    10 months ago

    keren mas boleh minta alamat emailnya