Abran Tie
Abran Tie
FACULTY OF ENGINEERING
DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
BY
APPIAH PRINCE ANAKWAH
PROJECT SUPERVISOR
…………………………….
Ing. BENJAMIN ADU GYAMFI
KUMASI, GHANA
SEPTEMBER 2025
DECLARATION
I declare that this project work is my own work. It is being submitted for the degree of
Bachelor of Science in Electrical and Electronic Engineering in the Kumasi Technical
University. It has not been submitted for any degree or examination in any other
University.
………………………………
(Signature of Candidate)
i
ABSTRACT
Attendance management is very important for academic evaluation and qualifications.
Despite the availability of some automated attendance systems, most academic
institutions still rely on manual attendance methods, which often lack needed security.
This project work introduces an electronic attendance system integrating RFID and
fingerprint technology. The objective is to enhance security, identity verification,
efficiency, and data retrieval compared to manual type. An ESP32 microcontroller
coordinates the processes from the fingerprint and RFID modules, with visual indicators
like LED, buzzer, and an LCD displaying outcomes. Two instructors and three students
participated in testing the prototype, each with unique fingerprints and RFID cards.
Enrolment took place through a virtual attendance webpage. Students could mark
attendance only when instructors activated the system using their RFID and fingerprints.
Attendance data was subsequently accessible on the virtual page for instructors' record-
keeping. Each student took an average of 21.03 seconds to complete the process.
Implementation results showcased the system's reliability, robust security, and efficiency.
The cost of components selected for the implementation of the system prototype was
GHȼ 647 (USD 57.36). In future, cost reduction could be achieved by exploring
alternative biometric sensors.
i
i
DEDICATION
I dedicate this project work to my entire family and friends
ACKNOWLEDGEMENTS
I express my deep gratitude to the almighty God for His protective guidance and
blessings throughout my academic journey at the University. I extend my heartfelt
appreciation to my dear family, friends, and esteemed lecturers for their unwavering
support, which made my education both enriching and enjoyable. A special
acknowledgment goes to Ing Benjamin Adu Gyamfi , my project supervisor, whose
consistent assistance and presence played a pivotal role in guiding me through the
completion of this project. Thank you for always being available whenever I needed
guidance.
i
i
i
TABLE OF CONTENTS
Content Page
DECLARATION i
ABSTRACT ii
DEDICATION iii
ACKNOWLEDGEMENTS iv
TABLE OF CONTENTS v
LIST OF FIGURES viii
LIST OF TABLES ix
LIST OF ABBREVIATIONS x
LIST OF SYMBOLS xii
INTERNATIONAL SYSTEM OF UNITS (SI UNITS) xiii
CHAPTER 1 GENERAL INTRODUCTION 1
1.1 Background to the Research 1
i
v
2.2.1 Types of Radio Frequency Modules 4
2.2.2 Radio Frequency Spectrum Bands 4
2.2.3 Radio Frequency Identification System 5
2.3 Biometrics 7
CHAPTER 3 METHODOLOGY 14
3.1 Introduction 14
3.7 Summary 26
v
4.2 Results of the Implementation of Proposed System 27
5.2 Recommendation 35
REFERENCES 36
APPENDICES 40
APPENDIX A ESP32 CODES FOR IMPLEMENTATION 40
APPENDIX B CODES FOR VIRTUAL ATTENDENCE SOFTWARE 43
v
i
LIST OF FIGURES
Fig. Title Page
2.1 An Illustration of RFID Technology 6
2.2 An Illustration of Fingerprint Biometrics Operation 8
3.1 A Block Diagram of Proposed System 14
3.2 A Flowchart of the Enrolment Process 16
3.3 A Flowchart Process of the Attendance Taking 17
3.4 A Picture of an ESP32 Microcontroller 19
3.5 The Pin Layout of ESP32 Microcontroller 19
3.6 The I2C LCD with Pin Layout 20
3.7 A Picture of an RC522-RFID Reader 21
3.8 The Internal Diagram of an RFID Tag 21
3.9 An Adafruit Fingerprint Scanner 22
3.10 A 5 V Active Buzzer 22
3 11 An Illustration of RGB LED 23
3.12 The Circuit Design of System Prototype 24
3.13 The Prototype of Proposed System Laid Out 25
3.14 A Picture of Prototype in Casing 26
3.15 Graphical User Interface of Attendance Web-page 26
4.1 Enrollment Page for Course Instructors and Student 27
4.2 Instructor Enrolled Successfully 28
4.3 Students Enrolled Successfully 28
4.4 Virtual Attendance System Application after Enrollment 29
4.5 System Initialisation 29
4.6 RFID Card Verification by Instructor 30
4.7 Images of the Instructor Fingerprint Verification Process 30
4.8 Students RFID Card Verification 31
4.9 Student Attendance Details Recorded 31
4.10 Images Showing the Stages of Impersonation 32
4.11 Recorded Attendance on the Virtual Platform 33
4.12 Downloaded Datasheet of Recorded Attendance Details 33
4.13 Downloaded CSV File of Recorded Attendance Details 33
v
i
i
LIST OF TABLES
Table Title Page
2.1 Radio Frequency Spectrum Bands 4
2.2 Review of Related Works on RFID based Attendance System 10
2.3 Review of Related Works on Fingerprint based Attendance System 12
3.1 List of Components and their Functions 18
4.2 Total Cost of the Implementation of Proposed System 34
v
i
i
i
LIST OF ABBREVIATIONS
Abbreviation Meaning
ADC Analog to Digital Converter
AFS Adafruit Fingerprint Sensor
CCR Centralized Cryptographic Control
CNN Convolutional Neural Network
CSV Comma-Separated Values
DAC Digital to Analog Converter
DC Direct Current
EHF Extremely High Frequency
EMI Electromagnetic Interference
ESP32 Espressif System's Wi-Fi and Bluetooth module
GPRS General Packet Radio Service
GSM Global System for Mobile Communications
GUI Graphical User Interface
HF High Frequency
I2C Inter-Integrated Circuit
ID Identification
IFF Identification Friend or Foe
IoT Internet of Things
ISO International Organization for Standardisation
LCD Liquid Crystal Display
LF Low Frequency
LED Light Emitting Diode
NXP Philips Semiconductor
PHY Physical Layer
PWM Pulse Width Modulation
RADAR Radio Detection and Ranging
RF Radio Frequency
RTC Real-Time Clock
RX Receiver
RISC Reduce Instruction Set Computer
SHF Super High Frequency
SoC System on Chip
i
x
SPI Serial Peripheral Interface
TX Transmitter
UID Unique Identifier
UHF Ultra High Frequency
UART Universal Asynchronous Receiver-Transmitter
USB Universal Serial Bus
VCC Voltage Common Collector (or Collector Voltage)
x
LIST OF SYMBOLS
Description Symbol
Cedi Currency ȼ
Centi c
Degree ͦ
Giga G
Kilo k Mega M
Milli m
Percentage %
x
i
Time Seconds s
x
i
i
CHAPTER 1 GENERAL INTRODUCTION
1
1.5 Facilities Used
The facilities used for the project work are as follows:
Library and internet facilities of the Kumasi Technical University.
A personal laptop computer with Arduino IDE 1.8.19 and EasyEDA
V6.5.34 installed.
There are five chapters that make up the project. The project's background, the problem
being studied, its goals, the methods employed, the facilities utilized for the project, and
its organizational structure are all covered in the first chapter, which also covers the
project's general introduction. In Chapter 2, the pertinent literature is reviewed. In this
chapter, the various forms of attendance systems that are currently in use were examined
along with the associated drawbacks. Chapter 3 lists the different approaches taken to
accomplish the project's goals. The findings are presented in Chapter 4 along with a
discussion of them. The conclusions and suggestions are provided in Chapter 5 at the
end.
2.1 Introduction
Traditionally, sign-in sheets and papers have been used to control attendance. To
maximize and promote student attendance, attendance management goes beyond these
strategies to establish a positive work atmosphere (Moth et al. (2015). In many
institutions, attendance is important for a variety of reasons, including record-keeping,
student evaluation, and promoting consistent attendance. However, because of
difficulties with the manual method of taking attendance, this policy has not been
strictly enforced. Researchers have developed a number of automated systems to make
the process of taking attendance easier (Badmus et al. 2021). This chapter provides an
overview of previous engineering and research initiatives centered on automated
attendance systems that use Radio Frequency Identification (RFID) technology and
fingerprint biometrics.
2.2 Radio Frequency Identification Technology
A basic metric known as frequency counts the cycles or oscillations of a wave over a
given period of time. It refers to the particular radio wave frequency that RFID devices
use for wireless communication when discussing radio frequency (RF). Low Frequency
(LF), High Frequency (HF), and Ultra-High Frequency (UHF) are the three frequency
bands in which RFID systems can function. The ranges of LF, HF, and UHF are shorter,
moderate, and longer, respectively. UHF is applicable to supply chain tracking and
inventory management, HF is helpful for payment systems and access control, and LF is
used for animal tracking and access control. Read range, data transfer speed, and
application requirements are some of the variables that affect frequency selection
(Anon. 2021a). RF wireless technology is a communication method that sends and
2
receives data wirelessly using radio waves. It makes it possible for devices to
communicate with one another without the use of wires.
Electromagnetic radiation in the form of radio waves has known radio frequencies
starting at 3 kHz. as high as 300 GHz. RF propagation doesn't require a medium to
move; it happens at the speed of light. They naturally arise from lightning, sun flares,
and aging stars in space that emit radiofrequency waves. Television broadcasting, radar
systems, computer and mobile platform networks, and remote control are just a few of
the industries that use radio frequency (RF) communication. Individual radio parts, like
mixers, filters, and power amplifiers, can be grouped based on their operating frequency
range, but they cannot be rigorously grouped by wireless standards (e.g., Bluetooth, Wi-
Fi, etc.). because the only support these devices offer is Physical Layer (PHY). RF
modules, transceivers, and System on Chips (SoCs) frequently support one or more
wireless communication protocols at the data link layer (Anon. in 2018a).
2.2.1 Types of Radio Frequency Modules
Transmitter (TX)
Receiver(RX)
Transceiver
System on
chip(SOC)
The radio frequency spectrum is separated into many bands. Each band denotes a
frequency increase comparable to an order of magnitude, with the exception of the LF
bands or ranges. Table 2.1 lists the eight RF spectrum bands, each of which displays a
range of frequency and bandwidth. A common term used to describe the microwave
spectrum is the Super High Frequency (SHF) and Extremely High Frequency (EHF) bands
(Anon. 2017).
3
VHF Very High Frequency 30 MHz – 300 MHz 10 m – 1 m
UHF Ultra-High Frequency 300 MHz – 3 GHz 1 m – 100 mm
SHF Super High Frequency 3 GHz – 30 GHz 100 mm – 10 mm
EHF Extremely High Frequency 30 GHz – 300 GHz 10 mm – 1 mm
(Source: Anon., 2017)
RFID's origins can be found in the early days of radio, but it was the use of radio
technology to automatically identify objects that gave it its start. When Sir Robert Watson-
Watt created Radio Detection and Ranging (RADAR), he carried out the first radio
experiment. The aircraft passively reflected a small amount of the radio energy back to the
radar system's receiver, which used a single transmitter receiver to send a high-power
signal. Aside from an object's size, radar provided little to no information about it other
than its presence. The ability to recognize an aircraft and determine if it was "Friend or
Foe" was especially helpful. Consequently, Watson-Watt went on to create the
Identification Friend or Foe (IFF) system. RFID technology uses an antenna and an
integrated circuit (IC) to exchange signals. The RFID tag is one of its two primary parts.
4
antenna. An electrical signal is converted by the antenna into an electromagnetic signal
that can move through the atmosphere (Anon. 2021b).
2.3 Biometrics
The field of biometrics is concerned with quantifying and evaluating each person's
distinct biological or behavioral traits. Access control, authentication, and identification
are some of its uses. Biometric systems verify an individual's identity by capturing and
evaluating unique physical or behavioral characteristics (Anon. (2023a). There are many
different kinds of biometric modalities, such as behavioral biometrics, palm prints,
retinal, voice, iris, fingerprint, and facial recognition. Numerous features, including
fingerprints, iris patterns, facial features, voice characteristics, palm patterns, retina
patterns, and behavioral patterns, are examined and compared by these modalities. In
order for biometric systems to work, pertinent biometric data must be collected and
compared to pre-registered templates kept in a database. The identity of the person is
confirmed if, within a reasonable range, the recorded data matches the stored template.
Increased security is one benefit of using biometrics.
5
2.3.1 Components of Biometric Devices
The various components employed in biometric devices include:
A reader or scanning device to record the authenticated biometric factor.
digital format and comparing observed and stored data match points.
data itself, modern biometric implementations usually rely on collecting biometric data
locally and then cryptographically hashing it, even though biometric data can be stored in
a centralized database.
6
Thermal scanner: This employs heat to measure the temperature differential
between the fingerprint's ridges and troughs. It generates the fingerprint image
based on the contrast between the two.
After scanning fingerprints, they can be matched using pattern matching, which examines
two images for similarities. More typically, matching based on finer features is performed,
which examines the direction and placement of the points more closely. Fig. 2.2 (Anon.,
2016a) shows how fingerprint biometric works.
The review of related works on both RFID attendance systems and fingerprint biometrics
are summarised into tables in this section. The review includes the methods or components
used and the various limitation(s) of each work.
Related works in the literature on RFID based attendance system are summarised into
Table
2.2.
Related works in the literature on fingerprint-based attendance system are summarised into
Table 2.3.
7
In the field of education, the adoption of an electronic attendance system is important.
When compared to the conventional method, it streamlines the attendance process and
significantly reduces the amount of time required. The different parts and terms used in
creating an electronic attendance system were covered in this chapter. It is evident from
examining additional pertinent research on RFID and fingerprint attendance
technologies that no study has integrated both of these technologies. Furthermore,
instances of deception and manipulation were noted. Therefore, it is imperative that
these challenges be addressed. Thus, by addressing these particular challenges, the
current initiative seeks to build on earlier efforts.
8
Table 2.2 Review of Related Works on RFID Based Attendance System
Methods/ Components
SN Author Title Results Limitations
Used
The RFID system was built
RFID system was During the course of their
RFID-based Students around the Intersoft RFID
Arulogun et implemented to eliminate the investigation, they discovered
1. Attendance DemoK it a proprietory that
al. (2013). inefficiencies of manual that the RFID tag's reading
Management. interfaces with a PC via a
attendance collection. speed was insufficient.
serial connection.
A survey conducted on 60
RFID reader; RFID tags; students enrolled in a specific
RFID Technology
Sumitha et Backend database, and course revealed that the use of The scalability of the system
2. based Attendance
al. (2013). middleware this proposed research was not discussed.
Management System.
components. streamlined the attendance
process.
Design and Realisation
Arduino ATmega328 The project research
of an Electronic
Microcontroller RFID The implementation of a
Koagne et al. Attendance System simplified and automated the
3. module Door Unit, LCD, biometric system to enhance
(2018). based on RFID with an attendance process for both
power supply, transistor. security was not feasible.
Automatic Door Unit. students and lecturers.
9
Node.js.
and security.
Table 2.2 Cont’d
Methods/ Components
SN Author Title Results Limitations
Used
Cloud-based RFID The use of RFID technology
Fraudulent activities were
Pedro et al. Access Control Raspberry Pi, RFID improved upon the access
6. recorded indicating poor
(2019). Using Lightweight Module and LCD. control system with online
Messaging Protocol. security.
monitoring.
10
Table 2.3 Reviewed Related Works on Fingerprint based Attendance
System
Methods/ Components
SN Author Title Results Limitations
Used
Arduino UNO, Adafruit
Fingerprint Sensor, The system improved
RFID is not being used to
Karthik A Foolproof Biometric Raspberry Pi, Wi-Fi attendance management by
improve participant
1. et al. Attendance Shield, Keypad, GSM streamlining operations,
monitoring or to prevent asset
(2013). Management System. Shield, LCD A Web eliminating manual entry, and
losses.
Interface for Staffs. improving communication.
11
Management Using
CNN based MultiLayer concentrate on the
Neural Networks. information being provided.
12
CHAPTER 3 METHODOLOGY
3.1 Introduction
An embedded system is an integrated system that has aspects from both the software and
hardware domains. The electronic attendance system is divided into two major
components: the hardware module and the software module. The hardware component
includes physical pieces such as the Espressif System Processor 32 (ESP32)
microcontroller, RFID module, fingerprint module, Liquid Crystal Display (LCD), Light
Emitting Diode (LED), buzzer, button switches, batteries, charger, and charging boards. In
contrast, the software section is concerned with the project's conceptual and programming
components.
LEDs
RFID Module
LCD
ESP32
Microcontroller
Buzzer
Fingerprint
Reader
Cloud Storage
The microcontroller receives numerical input from the RFID scanner when an RFID
card is scanned, while the microcontroller receives data from the fingerprint reader. The
microcontroller controls data collection and uses an integrated program to communicate
with the database. To visualize the result, indicators are employed. LEDs show approval
or rejection of attendance through red and green lights. There is also a buzzer to sound
an alert when different phases are underway. The LCD displays the steps involved in
registration and attendance recording. Attendance records are then uploaded to a website
and saved in the cloud after these phases. The ESP32 microcontroller is connected to
both the fingerprint scanner and RFID reader in this setup. RFID ID numbers and
13
fingerprint images make up the identifying data, which is stored in the ESP32
microcontroller's program. Automatic user recognition is supported by this. Powering
the RFID module will require a 7-point-4 V power supply.
3.2.2 Design Criteria
This section outlines the essential objectives that the proposed system must fulfill during
its implementation.
The proposed system's operation is divided into two main phases: the general enrolment
process and the attendance taking mode. These phases encompass the fundamental steps of
the system's operation. The flowcharts in Figs. 3.2 and 3.3 illustrate the sequential stages
involved in both the enrolment and attendance taking processes.
14
their students. Prior to enabling attendance capture, the instructor's own enrollment and
their associated course registration are prerequisites.
When the system is initialised, the lecturer is prompted to place an RFID card on the RFID
reader. The microcontroller uses the card's Unique Identification (UID) code to validate
and record the corresponding number in the database. Subsequently, the instructor is
prompted to place the fingers on the fingerprint scanner. The scanner captures an image of
the fingerprint, followed by a confirmation step where the scanner prompts the instructor
to place the fingers again for verification. At this point, the system matches the UID code
from the RFID card to the fingerprint image and stores this unified information in the
database.
To ensure enrollment, both instructors and students must undergo this process. In the case
of students, they follow a similar procedure involving the registration of their RFID card
and fingerprint. The input of instructor and student details is carried out using a standard
computer keyboard
15
3.3.2 Attendance Taking Process
Upon completion of the enrolment process, instructors and lecturers are granted the ability
to commence attendance recording for enrolled students. Fig. 3.3 offers insight into the
stages of the attendance taking mode flowchart.
The process begins with the instructor or lecturer, who must activate the system using their
valid RFID card and fingerprint, both of which are stored in the database. The instructor
then proceeds to place his/her RFID card on the RFID reader, which reads and verifies the
card's ID with the database records. In the case of a mismatch, the system alerts the
instructor that the card is incorrect and prompts them to use the appropriate card on the
scanner. However, if a match is detected, the instructor is permitted to proceed.
The system then prompts the instructor to place his/her finger on the fingerprint scanner. If
the scanned finger does not correspond with the stored fingerprint, the system alerts the
instructor of the mismatch. Nonetheless, if the fingerprint corresponds with the record in
the database, the system verifies the instructor and activates the attendance mode, thereby
authorising students to commence the attendance process. Students commence the
16
attendance process by placing their enrolled RFID cards on the RFID scanner. If the card
is not registered in the system, the process halts, and the student is informed that there is
no match, with instructions to use the correct card. In the event that the card matches the
UID code stored in the database, the student is prompted to place the enrolled finger on the
fingerprint scanner. Attendance is recorded if the scanned fingerprint matches the stored
one; otherwise, attendance is rejected, and the student is informed that the fingerprint does
not match the UID code.
Table 3.1 presents a summary of components used in the implementation of the proposed
system and their various uses.
The ESP32 microprocessors are reasonably priced and energy-efficient System on Chip
(SoC) devices with integrated Wi-Fi and Bluetooth connectivity. They were created for
portable gadgets, wearable electronics, and IoT applications and can reliably function in
industrial environments ranging from -40 °C to +125 °C. Notable features include
dynamic power scaling, cryptographic hardware acceleration, secure boot, flash
encryption, and an ultra-low power co-processor. They are 32-bit Reduced Instruction Set
Computer (RISC)V core that operate at 160 MHz frequency. The ESP32-WROOM-32
microcontroller was selected for its straightforward yet robust architecture and inclusion of
17
Wi-Fi and Bluetooth capabilities. Wi-Fi is crucial for the attendance system, allowing
internet connectivity to access the attendance website and perform tasks such as data input,
storage, and retrieval. It has a dual processor core with 802.11 b/g/n Wi-Fi and Bluetooth
of 4.0 LE. It takes 5 V input power supply via a USB or V in pin. There are 38 general
purpose input and output pins, UART, SPI, I2C, PWM and ADC (Anon., 2019a). This
microcontroller serves as the central processor, managing core functions and external
device inputs. A specialised compiled programming language tailored to the
microcontroller's capabilities is used. The ESP32 microcontroller's picture and pin layout
are shown in Figs. 3.4 (Anon., 2023b).and 3.5 (Anon., 2023c), respectively.
I/O Connector
EN Button 5 V5Power
V Power
On On
LED
Micro USB Port USB-to-UART Bridge
Boot Button ESP32-WROOM-32
The I2C LCD measuring 16 x 2 comes equipped with an I2C interface and has the ability
to exhibit 16 characters over two lines. In the present system, this LCD showcases the
stages in the attendance system. This variant of the LCD is preferred due to the
uncomplicated wiring of the I2C LCD, which also possesses an in-built potentiometer for
regulating the contrast between the background and its character. It has a display of 16 x 2
characters and a power supply of 5 V. It has from 11 to 16 general purpose pins for
interface and it is compatible with numerous microcontrollers (Anon., 2019b). Fig .3.6
(Anon., 2021c) shows the pin layout of the I2C LCD.
18
.
The RFID reader serves as a vital component and the central intelligence of an RFID
system. It is responsible for assuring the precise performance of the system. The RC522 -
RFID Reader is a 13.56 MHz RFID module based on NXP semiconductors' MFRC522
controller, which functions as the central intelligence of an RFID system. It supports the
Interintegrated Circuit (I2C), Serial Peripheral Interface (SPI), and Universal
Asynchronous Receiver-Transmitter (UART) protocols. The RC522 RFID reader module
generates an electromagnetic field at 13.56 MHz to connect with International
Organization for Standardisation (ISO) RFID tags. The reader can communicate with a
microcontroller through a 4-pin SPI interface at a maximum data rate of 10 Mbps. It has
an operating current of 13 mA and 3.3 V Direct Current (DC) voltage supply. It operates
under 20 ⁰C – 80 ⁰C temperature (Anon., 2016b). The RFID reader was employed in this
work to scan the RFID cards that has been enrolled on the system and sends that data to
the microcontroller. The picture of the RC522 RFID reader is shown in Fig. 3.7 (Anon.,
2021d).
Crystal Oscillator
Antenna
Matching Circuits
RC522 Circuit
Electromagnetic
Interference (EMI)
Power LED
Filter
19
Fig. 3.7 A Picture of an RC522-RFID Reader
RFID tags use radio waves to identify and track items. They are made up of a microchip
and an antenna that work together to send data to an RFID reader when they come into
contact with it via radio transmission. In the proposed system, the tags were used as the
cards with unique numbers which when placed on the RFID reader, sends the data read on
it to the microcontroller for further necessary actions. These unique numbers are
programmed as part of the system and issued to each individual enrolled on the system.
Fig. 3.8 (McKellar, 2021) shows the labelled internal diagram of an RFID tag.
Sensor
Power Source
Tag
Antenna
A fingerprint scanner is a biometric device that captures and analyses the unique patterns
on a person's fingertip for identification or authentication. The Adafruit Fingerprint
Scanner (AFS) is a biometric tool designed to provide fingerprint recognition capabilities
to projects, providing a simple way to establish safe access control and user identification.
In the proposed system, the fingerprint reader was used to take the image of fingerprint of
individuals which were stored in the database. The fingerprint has a supply voltage of 3.6
– 6 V DC. It has operating and peak current of 120 mA and 150 mA, respectively. It also
has a fingerprint imaging time of 0.1 s and 162 templates storage capacity (Anon., 2012).
These fingerprints were used to confirm identity of individuals in the attendance taking
process Fig. 3.9 (Anon., 2022) shows an AFS.
20
Fig. 3.9 An Adafruit Fingerprint Scanner
3.4.6 5 V Active Buzzer
An active buzzer is a type of piezoelectric buzzer that produces sound when connected to a
DC voltage source. It is called an active buzzer because it only needs a DC voltage to
produce sound. The sound pressure level is 85 dBA or 10 cm and the supply current is
below 15 mA. It is made up of an outside case with two pins to connect to power and
ground. In the proposed system, a 5 V buzzer was used. The buzzer's operational voltage
range is 4 V DC to 8 V DC. The rated current is less than or equal to 30 mA. The tone is
continuous and has a resonance frequency of 300 Hz. The temperature range for operation
is -25 °C to 80 °C (Anon., 2018b). The buzzer sounds an alarm in every successful stage
of the attendance system. The buzzer was selected for its low power consumption. Fig.
3.10 (Anon., 2019d). shows a 5 V active buzzer.
21
show that the attendance is taken and recorded successfully. When there is an error in the
attendance taking stage, the red LED turns on to indicate that there is a problem in the
process. Fig.
3.11 (Anon., 2019c) shows a picture of an RGB LED.
Blue
Red
Ground Black
22
23
Fig. 3.12 The Circuit Design of System Prototype
24
3.6 Implementation of System
A prototype of the electronic attendance system is depicted in Figs. 3.13, 3.14 and 3.15 A
162 I2C LCD, RGB LED an ESP32 microcontroller with Bluetooth and Wi-Fi capabilities,
an RFID scanner, an AFS, and a breadboard compose the system. The RFID scanner and
fingerprint sensor are attached to the microcontroller as inputs, sending UID codes and
fingerprint images for processing. The microcontroller is also linked to the LCD, which
displays various stages of the attendance system's implementation and testing. The RGB
LED, which is linked to the microcontroller, displays different colours to signify
successful attendance matches as well as mistakes that may occur during the
implementation process. It also lights up to indicate current flow when the system is
turned on. The breadboard simplifies the connection and integration of various
components with the ESP32 microcontroller by providing several connection points as
needed. The microcontroller, as the central processing unit, organises the system's
functions based on the programmed instructions for its execution. The code that enables
the microcontroller to perform the various functions is available in Appendix A, whereas
the software to download attendance is available in Appendix B.
27
Fig. 3.14 A Picture of Prototype in Casing
3.7 Summary
This chapter offered a thorough overview of the procedures used to develop and prototype
the electronic attendance system. The use of the proposed system is divided into two
stages: enrollment and attendance. An instructor must activate the system in order for the
attendance process to begin. A block diagram and a flowchart, both of which are featured
in this chapter, are used to depict the design and operating procedures. Furthermore, the
components used in the system's implementation were elaborated on. The development of
a system prototype was also discussed.
28
CHAPTER 4 RESULTS AND DISCUSSION
4.1 Introduction
This chapter presents the results obtained during the execution of the proposed system
under various operating circumstances. Furthermore, the results achieved were discussed
and the cost analysis of the proposed system is presented.
Fig. 4.1 shows the main virtual attendance web page where the data of both the instructor
are being keyed into the system by a Personal Computer (PC) keyboard. The page consists
of a space for students to register their details and also a space for instructors to also
register their details and their course unto the system platform. Two course lecturers and
three students were enrolled on the platform for practical demonstration.
The instructor's information is entered into the instructor database. The instructor must
also register the course that he or she lectures. Following a successful application, the
29
information will be retained on the page in order to establish a profile for that course, as
well as the name of the lecturer. This signifies that the lecturer's RFID card index number
fingerprint has already been enrolled in the system, recorded in the database, and written
as part of the package into the microcontroller. Fig. 4.2 shows the completion step when
an instructor registers his/her details and it is successful.
After completing the instructor enrollment procedure, instructors are able to input student
information onto the platform. The instructor will enter relevant information for each
individual student. For students who have registered on the virtual platform, they must
provide their fingerprint and RFID card number. These details will then be stored within
the database and included in the programme for the microcontroller. Once all student
information has been inputted correctly, they will be officially enrolled and their
information will be securely saved on the virtual platform. Fig. 4.3 illustrates successful
completion of student enrollment using the platform.
30
Fig. 4.3 Students Enrolled Successfully
Following the successful enrolment of both students and lecturers onto the platform, the
virtual attendance platform displays the various courses installed, the specifics of the
course instructor, and lastly the details of students registered. The course instructor can
now begin taking attendance for his or her registered course, which will be shown on the
platform once all students have completed their attendance. Fig. 4.4 shows the visible
profile of the virtual attendance platform when courses of lecturers and students are
registered.
Once all of the relevant information has been entered into the platform and the system has
successfully captured everything, registered course instructors can begin taking
attendance. Any instructor who wants to keep track of attendance can do so. Fig. 4.5
depicts the initial state of the electronic attendance system after it is turned on.
RGB LED
LCD
Fingerprint
Scanner
31
Fig. 4.5 System Initialisation
Before students can take attendance, the course lecturer must activate the system. This is
done by the lecturer placing his or her RFID card on the reader for the RFID reader to
verify. Upon successful verification, the lecturer proceeds to place his or her fingerprint on
the fingerprint scanner for it to confirm the identity of that course instructor. If the process
is successful, a green LED illuminates to indicate a successful match. So, students can go
ahead and take attendance. If the professor uses the incorrect RFID card or fingerprint, the
system rejects it and displays an error message indicating that there is no match. As a
result, a RED LED will illuminate to indicate that an error has occurred, and the system
will not be engaged for students to take attendance. Figs 4.6 and 4.7 depict the verification
and activation of a course teacher before students take attendance. The two instructors who
were enrolled in the system were given permission to activate the attendance mode so that
the student may take attendance for that specific course.
32
a. Placement of RFID Card by Instructor b. RFID Card Verified Fig. 4.6
RFID Card Verification by Instructor
After successfully activating the course teacher, students are now expected to take
attendance. Students then go through the attendance taking process by first placing their
registered RFID cards on the fingerprints sensor to validate their identity and mark their
attendance according to the day and time of the system registering that attendance. A green
LED illuminates to indicate that there is a match and attendance has been recorded. Figs.
4.8 and 4.9 present the various steps of the attendance taking mode and recording as
displayed by the attendance system. The three students were permitted to take attendance
for two days. It took an average of 21.03 seconds for each student to complete the whole
process of taking attendance.
33
a. Placement of Student RFID Card b. Verification of Student Fingerprint Fig.
34
a. A Wrong Finger Used b. Fingerprint not Matching RFID Card
Fig. 4.10 Images Showing the Stages of Impersonation
The course instructor for whom the attendance was taken will have a profile on the virtual
attendance platform once the attendance process is successfully completed. The number of
enrolled students who have taken part in attendance recording will be displayed in this
profile. The platform will give users access to attendance information, such as the time and
date of attendance, for multiple students enrolled in a single course. Figure. The virtual
attendance platform's attendance list is shown in 4.11. Three enrolled students' attendance
records for a particular course are shown. The instructor must select their course from the list
of enrolled courses and update the page in order to access this data. A list of the students
who were present and those who were absent during the attendance recording session will be
shown, along with the name of the instructor.
If the course instructor desires to request a copy of the recorded attendance details for their
personal review, an option is provided on the page to simplify this procedure. The platform
provides two distinct methods for downloading the attendance file. These alternatives
include downloading the records as Comma Separated Values (CSV) file or an Excel
Workbook file. To begin the download, the instructor just clicks on the appropriate
download option provided on the platform. Figs. 4.12 and 4.13 show two different types of
downloaded files from the recorded attendance system, each reflecting attendance data
from two different days.
35
Fig. 4.12 Downloaded Datasheet of Recorded Attendance Details
36
6. Adafruit Fingerprint module 99.00 99.00 6.5
7. ED RGB 5 mm 4 pins .00 .00 0. 8
8. 8650 Battery Holder 5.00 5.00 .33
9. Dual charger 8650 i-on Battery 65.00 65.00 5.76
10. 5v Active Buzzer 5.00 5.00 0.44
11. Power Switch 5.00 5.00 0.44
57.36.
5.1 Conclusions
Based on the implementation of the electronic attendance system developed, the following
conclusions can be made:
The design can replace the traditional method of attendance taking in the
Department of Electrical and Electronic Engineering.
The designed system is less time consuming and less prone to errors.
37
5.2 Recommendation
It is recommended that the Department of Electrical and Electronic Engineering employs this
user-friendly electronic attendance system.
Future works should consider using other alternative biometric sensors like facial
recognition and voice recognition that are economically viable in order to reduce costs
while ensuring the system's seamless operation.
REFERENCES
Adetiba, E., Iortim, O., Olajide, A.T. and Awoseyin, R. ( 0 3), “An Online Biometricsbased
lass Attendance Management System”, African Journal of Computing and ICT,
Vol. 6, No. 3, pp. 25 – 38.
May 6, 2023.
Anon. (2017), “RF Wireless Radio Frequency Working and Its Applications”, https://www.
Watelectronics.com/rf-wireless-radio-frequency-working-application. Accessed:
May 6, 2023
38
Anon. (2018a), “Radio Frequency Application”,
https://www.mouser.com/applications/rfwireless-technology/. Accessed: May 10,
2023.
Anon. (2019a), “ESP3 Pinout, Features, Specs and How to Use It”, https://electronics
hub.pk/product/wroom-esp32-wifi-based-microcontroller-developmentboard/#:~:t
ext=ESP32%20integrates%20a%20rich%20set,energy%20examples%20for%20
its%20finding. Accessed: May 14, 2023
Anon. (2019b), “How to Use Active and Passive Buzzer on the Arduino”, https://www
Circuitbasics.com/what-is-a-buzzer/#:~:text=Buzzers%20can%20be%20categoriz
ed%20into audio%20signal% 20to%20 produce %20 sound. Accessed: May 16,
2023
Anon. (2019c), “How RGB LEDs Work and How to Control Colour Circuit Bread”,
https://www.circuitbread.com/tutorials/how-rgb-leds-work-and-how-to-
controlcolor#:~:text=In%20a%20common%20cathode%20RGB,terminal%20of
%20the
Anon. (2021d), “RC522 RFID Module Pinout, Features, Specs and How to Use It”,
https:// lastminuteengineers.com/how-rfid-works-rc522-arduino-tutorial. Accessed:
June 25, 2023.
39
Anon. (2022), “Adafruit-Optical-Fingerprint-Sensor”, https://learn.adafruit.com/adafruitopti
cal-fingerprint-sensor?view=all. Accessed: July 5, 2023
Anon. (2023b), “Build Secure and Cost-effective onnected Devices”, https://www espres
sifcom/en/products/socs/esp32-c3. Accessed: July 25, 2023.
Anon. (2023c), “ESP32 Pinout, Features, Specs and How to Use It”, https://www.electro
nicshub.org/esp32pinout/#:~:text=ESP32%20has%2034%20GPIO%20pins,UART
%2C%20I2C%20etc. Accessed: July 25, 2023.
Karthik, V. E., Shanmuganathan, S., Sumithra, A., Kishore, S. and Karthikeyan, P. (2013),
“A Foolproof Biometric Attendance Management System”, International Journal of
Information and Computation Technology, Vol. 3, No. 5, pp. 433 - 438.
40
Moth, M. M. T., Chaw M. N. and Myo, H. T. (2015), “Students’ Attendance Management
System Based on RFID And Fingerprint Reader”, International Journal of
Scientific and Technology Research, Vol. 4, No. 7, pp. 75 - 84.
Mshelia, D. E., Alkali, A. H., Isuwa, S., Dibal, D. E. and Onogwu C. (2017), “An RFID
and Fingerprint Automated Attendance System”, Journal of Computer
Engineering, Vol. 19, No. 4, pp.75 – 84.
Priyanka, S., Pranali, G., Snehal, N., Nuan, T. and Puja, C. (2017), “RFID Technology
Based Attendance Management System”, International Journal of Engineering
and Computer Science, Vol. 6, No. 3, pp. 20458 - 20463.
Pedro, H. M. A., Sandro, C. S. J., Diego, L. C. G., Vinícius, F. S., Renata, I. S. P. and
Solonildo, A. S. (2019), “Cloud-Based RFID Access Control Using Lightweight
Messaging Protocol”, International Journal of Advanced Engineering Research
and Science, Vol. 6, No. 1, pp. 7 - 17.
Renaldo, A. A. and Alfa, S. P. ( 0 ), “ ecturer and Student Attendance System with RFID”,
Journal of Physics: Conference Series, Coimbatore, India, pp. 20 - 36.
Rufai, M. M., Adigun, J. O. and Yekini, N. A. (2012), “A Biometric Model for Examination
Screening and Attendance Monitoring in Yaba College of Technology”, World of
Computer Science and Information Technology Journal, Vol. 2, No. 4, pp.120 – 124.
Sathya, D., Vallarasu, R., Gomathi, S., Ajay, K., Habeeb, R. and Guru, S. (2020),
“Biometric Fingerprint for Attendance System”, UGC Approved Journal, Vol. 7, No.
2 pp. 44 -47.
Sumitha, N., Romin, P. and Tanvi, S. ( 0 3), “RFID Technology Based Attendance
Management System”, International Journal of Computer Science, Vol. 10, No. 1,
pp. 48 - 54.
41
Thounaojam, S. and Meitei, K. B. ( 0 3), “Smart lassroom Environment Based on
Attendance Management Using CNN based Multi-layer eural etworks”,
Proceedings of the International Conference on Environmental Engineering and
Material Sciences, Guntur, India, 45 pp.
APPENDICES
APPENDIX A ESP32 CODES FOR IMPLEMENTATION
#include <Adafruit_Fingerprint.h>
#include <MFRC522.h>
#include <SPI.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <WiFi.h>
#include <SD.h>
42
// comment these two lines if using hardware serial
setup() {
Serial.begin(115200);
Serial2.begin(115200);
while (!Serial); // For Yun/Leo/Micro/Zero/...
delay(100);
finger.begin(57600); delay(5); if
(finger.verifyPassword()) {
Serial.print(ssid);
43
delay(250);
Serial.print(".");
Serial.println("");
if (WiFi.status() != WL_CONNECTED) {
Serial.print(millis());
Serial.println(WiFi.localIP());
void loop() { if
(finger.fingerID == 1) {
Serial.print("!!--");
Serial.println(finger.fingerID);
NAME = "Salomay";
ID = "1"; if
NAME = "Carl";
ID = "21";
makeIFTTTRequest();
44
lcd.clear();
lcd.print("Welcome, ");
lcd.setCursor(0, 1);
lcd.print(NAME);
mfrc522.PICC_HaltA();
mfrc522.PCD_StopCrypto1();
finger.fingerID = 0;
+) {
45
"""
<nav class="navbar fixed-top navbar-expand-lg navbar-dark" style="background-color:
Green;">
<a class="navbar-brand" href="#" target="_blank" style="padding-left: 30px;">Virtual
Attendance System</a>
</nav>
""",
unsafe_allow_html=True,
)
hide_streamlit_style = """
<style>
st.markdown(hide_streamlit_style, unsafe_allow_html=True)
st.header(f"Welcome {instructor}") def load_data(file_path):
with open(file_path, "r") as file:
data = json.load(file) return data def
json_to_dataframe(data, date_to_select):
for entry in data["attendance"]:
if entry["date"] == date_to_select:
selected_students = entry["students"] break names =
[] attendance = [] for s in selected_students:
names.append(s["name"])
attendance.append(s["attendance"]) data = {"Student":
names, "Attendance": attendance} df = pd.DataFrame(data,
columns=["Student", "Attendance"]) return df def
choose_option_menu(): selected =
option_menu( menu_title=None, options=["Create",
"View Courses"], icons=[], orientation="horizontal",
styles={
"nav-link-selected": {"background-color": "blue"},
with st.expander("Create Course"): name =
st.text_input("Course Name") code =
st.text_input("Course Code")
instructor = st.selectbox("Select Instructor", ["Prof Kelvin Kanyiti"])
if st.button("Create Course"): if name and code:
46
new_course = Course(name=name, code=code, instructor=instructor)
if new_course.name not in [c.name for c in courses]:
courses.append(new_course)
Course.save_to_json(courses) st.success(f"Course
{name} created successfully!") else:
name = st.text_input("Student Name")
("Absent", inplace=True) attend_df =
attend_df.reset_index().rename(columns={'index': 'id'}) merged_df =
students_df.merge(attend_df, on='id', how='left').fillna('Absent') csv_col,
excel_col = st.columns(2) with csv_col:
47