#include <WiFi.h>
#include "time.h"
const char* ssid = "Wokwi-GUEST";
const char* ntpServer = "pool.ntp.org";
const long gmtOffset_sec = 3600;
const int daylightOffset_sec = 3600;
void printLocalTime()
{
struct tm timeinfo;
if(!getLocalTime(&timeinfo)){
Serial.println("Failed to obtain time");
return;
}
Serial.println(&timeinfo, "%A, %B %d %Y %H:%M:%S");
}
void setup()
{
Serial.begin(115200);
//connect to WiFi
Serial.printf("Connecting to %s ", ssid);
WiFi.begin(ssid);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println(" CONNECTED");
//init and get the time
Serial.println("Press Key to Crash!!!");
while(Serial.available() == 0) { }
// This line crashes
configTime(gmtOffset_sec, daylightOffset_sec, ntpServer);
Serial.println("2");
printLocalTime();
//disconnect WiFi as it's no longer needed
Serial.println("3");
WiFi.disconnect(true);
Serial.println("4");
WiFi.mode(WIFI_OFF);
}
void loop()
{
delay(1000);
printLocalTime();
}