LCD Display (16x2 or 20x4 with I2C module)
SDA (Data Line): Connect to ESP32 GPIO21 (default I2C data pin).
SCL (Clock Line): Connect to ESP32 GPIO22 (default I2C clock pin).
VCC: Connect to the ESP32's 3.3V or 5V pin (check your specific LCD module
for voltage requirements).
GND: Connect to the ESP32's GND.
Push Buttons
Button 1 (Set Time):
One pin of the button connects to an ESP32 GPIO pin, e.g., GPIO18.
The other pin connects to GND.
Use a pull-up resistor if needed (internal pull-up can be enabled in
software).
Button 2 (Start/Stop):
One pin of the button connects to another ESP32 GPIO pin, e.g., GPIO19.
The other pin connects to GND.
Again, use a pull-up resistor if needed.
(Optional): Additional buttons for resetting or adjusting time intervals can be
connected similarly to other GPIO pins.
Buzzer or LED (Optional for Alarm)
Positive Lead: Connect to an ESP32 GPIO pin, e.g., GPIO23.
Negative Lead: Connect to GND.
If using a buzzer, you may need a current-limiting resistor.
Power Supply
Power the ESP32 through the micro USB connection or use a 5V external
power supply connected to the VIN pin.
Ensure that the ground (GND) of all components is connected to the ESP32’s
GND to create a common ground.
Materials Needed
o ESP32 Board - The microcontroller for managing the countdown logic.
o LCD Display (16x2 or 20x4) - Preferably one with an I2C module for simpler
wiring.
o Push Buttons (2 or more) - For setting and controlling the timer.
o Resistors (Optional) - Pull-up resistors for stabilizing button inputs (usually
10kΩ).
o Breadboard - For prototyping and making connections.
o Jumper Wires - To connect all the components.
o Buzzer or LED (Optional) - To indicate the end of the countdown.
o Power Supply - Either a USB cable for the ESP32 or a 5V power adapter.