Connect to a NTP server
Go to file
per1234 531eff39d9
Use major version ref of carlosperate/download-file-action (#160)
The `carlosperate/download-file-action` action is used in the GitHub Actions workflows as a convenient way to download
external resources.

A major version ref has been added to that repository. It will always point to the latest release of the "1" major
version series. This means it is no longer necessary to do a full pin of the action version in use as before.

Use of the major version ref will cause the workflow to use a stable version of the action, while also benefiting from
ongoing development to the action up until such time as a new major release of an action is made. At that time we would
need to evaluate whether any changes to the workflow are required by the breaking change that triggered the major
release before manually updating the major ref (e.g., uses: `carlosperate/download-file-action@v2`). I think this
approach strikes the right balance between stability and maintainability for these workflows.
2021-12-20 14:04:22 +01:00
.github Use major version ref of carlosperate/download-file-action (#160) 2021-12-20 14:04:22 +01:00
examples Merge pull request #71 from theandy94/master 2021-05-25 06:50:30 +02: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 2019-05-23 15:42:09 +02:00
library.properties Releasing v3.2.0 2019-09-18 10:01:20 +02:00
NTPClient.cpp Merge pull request #71 from theandy94/master 2021-05-25 06:50:30 +02:00
NTPClient.h Merge pull request #71 from theandy94/master 2021-05-25 06:50:30 +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.