#include <time.h>
#include "my_lcd.h"
MyLCD lcd;
void setup() {
Serial.begin(115200);
lcd.begin();
struct tm timeinfo;
timeinfo.tm_year = 2025 - 1900; // Years since 1900
timeinfo.tm_mon = 4; // 0 = January, so 4 = May
timeinfo.tm_mday = 26; timeinfo.tm_hour = 12;
timeinfo.tm_min = 0; timeinfo.tm_sec = 0;
time_t t = mktime(&timeinfo);
struct timeval now = { .tv_sec = t, .tv_usec = 0 };
settimeofday(&now, NULL);
}
void loop() {
struct tm timeinfo;
if (!getLocalTime(&timeinfo)) {
Serial.println("Failed to obtain time"); return;
} // 123456789 123456789
char buffer[21]; // 26-05-25 12:00:00 PM
strftime(buffer, 21, "%y-%m-%d %I:%M:%S %p", &timeinfo);
lcd.display("ESP32-DevKitC-v4", "Hello, World!", "Ngee Ann Poly");
delay(5000);
lcd.clear();
lcd.datetime(buffer);
lcd.alarm(1, "Temp UL1:", "40.6", true);
delay(5000);
lcd.alarm(2, "Curr UL2:", "60.0", "A");
delay(5000);
}
LCD (20x4) (I2C)
DS1307 RTC