Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

ESP32-Based NFC Attendance System with LCD Feedback

View and Edit Project In Cirkit DesignerImage of ESP32-Based NFC Attendance System with LCD Feedback

Circuit Documentation

Summary

This circuit is designed to interface an ESP32 microcontroller with an LCD screen, an NFC/RFID reader, a buzzer, and a push switch. The LCD screen is used to display information, while the NFC/RFID reader is intended for identification purposes. The buzzer provides audible feedback, and the push switch serves as a user input device. A Mini 360 Buck Converter is used to regulate the power supplied by a DC Power Source to the components. The ESP32 microcontroller is the central processing unit that controls the LCD screen and communicates with the NFC/RFID reader.

Component List

ESP32 (30 pin)

LCD screen 16x2 I2C

NFC/RFID reader

Buzzer

2Pin Push Switch

Mini 360 Buck Converter

DC Power Source

Wiring Details

ESP32 (30 pin)

LCD screen 16x2 I2C

NFC/RFID reader

Buzzer

2Pin Push Switch

Mini 360 Buck Converter

DC Power Source

Documented Code

/*
 * This Arduino Sketch is designed for an ESP32 microcontroller to interface
 * with an LCD screen and an NFC/RFID reader. The LCD will display the
 * student count on the first line and a fixed count value of 15 on the
 * second line.
 */

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// LCD address and dimensions
#define LCD_ADDR 0x27
#define LCD_COLS 16
#define LCD_ROWS 2

// Initialize the LCD
LiquidCrystal_I2C lcd(LCD_ADDR, LCD_COLS, LCD_ROWS);

void setup() {
  // Initialize the LCD
  lcd.begin();
  lcd.backlight();
  // Display initial messages
  lcd.setCursor(0, 0);
  lcd.print("Student Count");
  lcd.setCursor(0, 1);
  lcd.print("Count : 15");
}

void loop() {
  // Main loop does nothing in this example
}

The provided code is for the ESP32 microcontroller. It initializes an I2C LCD screen, sets the cursor to specific positions, and prints static text. The main loop is empty, indicating that no additional functionality is implemented in this example.