Connect to a NTP server
Go to file
per1234 94ad095c3f
Adjust CI workflow for flat library layout
This is one of the few official libraries that still uses the old "flat layout", but the CI workflow was configured for the modern "recursive layout.
2021-05-18 21:33:14 -07:00
.github Adjust CI workflow for flat library layout 2021-05-18 21:33:14 -07:00
examples Correct typos in comments and documentation 2021-04-12 00:13:30 -07:00
.codespellrc Add CI workflow to check for commonly misspelled words 2021-04-12 00:13:30 -07:00
CHANGELOG Update CHANGELOG 2016-05-31 16:33:15 -04:00
keywords.txt Update keywords.txt 2018-07-11 08:05:00 -04:00
library.properties Releasing v3.2.0 2019-09-18 10:01:20 +02:00
NTPClient.cpp Correct typos in comments and documentation 2021-04-12 00:13:30 -07:00
NTPClient.h Adding default port range (#117) 2020-09-07 17:14:47 +02:00
README.md Add CI workflow to do Arduino project-specific linting 2021-04-12 00:13:30 -07:00

NTPClient

Check Arduino status Compile Examples status Spell Check status

Connect to a NTP server, here is how:

#include <NTPClient.h>
// change next line to use with another board/shield
#include <ESP8266WiFi.h>
//#include <WiFi.h> // for WiFi shield
//#include <WiFi101.h> // for WiFi 101 shield or MKR1000
#include <WiFiUdp.h>

const char *ssid     = "<SSID>";
const char *password = "<PASSWORD>";

WiFiUDP ntpUDP;

// By default 'pool.ntp.org' is used with 60 seconds update interval and
// no offset
NTPClient timeClient(ntpUDP);

// You can specify the time server pool and the offset, (in seconds)
// additionally you can specify the update interval (in milliseconds).
// NTPClient timeClient(ntpUDP, "europe.pool.ntp.org", 3600, 60000);

void setup(){
  Serial.begin(115200);
  WiFi.begin(ssid, password);

  while ( WiFi.status() != WL_CONNECTED ) {
    delay ( 500 );
    Serial.print ( "." );
  }

  timeClient.begin();
}

void loop() {
  timeClient.update();

  Serial.println(timeClient.getFormattedTime());

  delay(1000);
}

Function documentation

getEpochTime returns the Unix epoch, which are the seconds elapsed since 00:00:00 UTC on 1 January 1970 (leap seconds are ignored, every day is treated as having 86400 seconds). Attention: If you have set a time offset this time offset will be added to your epoch timestamp.