ESP32 - RTC Module - LCD
In this tutorial, we will guide you through the process of creating an LCD clock using an ESP32 with the following steps:
- Reading the current date and time from a DS3231 RTC module and displaying it on an LCD I2C 16x2.
- Reading the current date and time from a DS1307 RTC module and displaying it on an LCD I2C 16x2.
You have the option to choose between two RTC modules: DS3231 and DS1307. To assist you in making an informed decision, refer to the comparison outlined in DS3231 vs DS1307.
This tutorial will provide a step-by-step guide on integrating ESP32 with either the DS3231 or DS1307 RTC module to display accurate date and time information on a 16x2 LCD I2C screen.
Hardware Used In This Tutorial
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Introduction to LCD, DS3231 and DS1307 RTC module
Unfamiliar with LCD, DS3231 and DS1307, including their pinouts, functionality, and programming? Explore comprehensive tutorials on these topics below:
Install LCD and RTC Libraries
- Click to the Libraries icon on the left bar of the Arduino IDE.
- Search “LiquidCrystal I2C”, then find the LiquidCrystal_I2C library by Frank de Brabander
- Click Install button to install LiquidCrystal_I2C library.

- Search “RTClib”, then find the RTC library by Adafruit
- Click Install button to install RTC library.

- You may be asked to install dependencies for the library
- Install all dependencies for the library by clicking on Install All button.

Reading time from DS3231 RTC module and display it on LCD
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
ESP32 Code - DS3231 and LCD
Quick Instructions
- If this is the first time you use ESP32, see how to setup environment for ESP32 on Arduino IDE.
- Do the wiring as above image.
- Connect the ESP32 board to your PC via a micro USB cable
- Open Arduino IDE on your PC.
- Select the right ESP32 board (e.g. ESP32 Dev Module) and COM port.
- Copy the above code and open with Arduino IDE
- Click Upload button on Arduino IDE to upload code to ESP32
- See the result on LCD
If you're unfamiliar with how to supply power to the ESP32 and other components, you can find guidance in the following tutorial: The best way to Power ESP32 and sensors/displays.
Reading time from DS1307 RTC module and display it on LCD
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
ESP32 Code - DS1307 and LCD
Quick Instructions
- If this is the first time you use ESP32, see how to setup environment for ESP32 on Arduino IDE.
- Do the wiring as above image.
- Connect the ESP32 board to your PC via a micro USB cable
- Open Arduino IDE on your PC.
- Select the right ESP32 board (e.g. ESP32 Dev Module) and COM port.
- Copy the above code and open with Arduino IDE
- Click Upload button on Arduino IDE to upload code to ESP32
- See the result on LCD
Video Tutorial
Making video is a time-consuming work. If the video tutorial is necessary for your learning, please let us know by subscribing to our YouTube channel , If the demand for video is high, we will make the video tutorial.