#include <WiFi.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
#include <time.h>
const char* ssid = "Wokwi-GUEST";
const char* password = "";
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP, "pool.ntp.org");
void setup() {
Serial.begin(9600);
Serial.println("Connecting to WiFi");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println(" Connected!");
timeClient.begin();
timeClient.update();
}
void loop() {
timeClient.update();
// GTM format
Serial.print("1. ");
printGTMTime();
// Epoch format
Serial.print("2. ");
Serial.println(timeClient.getEpochTime());
delay(5000);
}
void printGTMTime() {
// get GTM time
unsigned long epochTime = timeClient.getEpochTime();
struct tm *timeInfo;
time_t rawTime = (time_t)epochTime;
timeInfo = gmtime(&rawTime);
// print GTM time using strftime
char formattedTime[50];
strftime(formattedTime, sizeof(formattedTime), "%A, %B %d, %Y %I:%M:%S %p", timeInfo);
Serial.println(formattedTime);
}