A simple attendance system with raspberry pi 4 and fingerprint scanners. It has the following features
- Enroll Student data and store details like name, roll, subjects, etc
- Take attendance and store attendance data in a csv file format
- Share the data over network with teachers Using Syncthing
- Download copy of the code or clone it to desired path in the raspberry pi
- Use Crontab to run "main.py" at startup.
- Connect the peripherals properly (pinouts can be found easily on the web)
- Install the below mentioned modules
- To enroll students disable crontab, connect to the raspberry pi through VNC Viewer or HDMI and run "admin.py". You will require a keyboard to enroll student details.
These two modules need to be installed via pip. I recommend installing them directly using --break-system-packages
as setting up a virtual environment leads to problems while trying to autorun the program
pip install pyfingerprint --break-system-packages
pip install luma.core --break-system-packages
As mentioned above I am using Crontab to autorun the main.py at startup. I am using a bash script because it just works. Make a new file in the home directory named start.sh
and enter the following.
#!/bin/bash
cd PATH/TO/FOLDER # path to the directory where main.py is located
python3 main.py
grant executable permission to the script
chmod +x start.sh
Open terminal and enter
crontab -e
select your preffered text editor and go to the last line and add
@reboot ~/start.sh
save and exit. Now the program should run automatically from the next boot
- Raspberry Pi 4 Model B
- R307 fingerprint scanner
- ttl to USB converter
- I2C OLED Display module
- USB C charging cable and power adapter
- Jumper wires