Difference between revisions of "NTPClient"
| (22 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | author=Fabrice Weinberg<br> | + | |
| − | version=3.2.1<br> | + | [[Ideaspark-ESP32-0.96-OLED_Board| retour]]<br> |
| + | |||
| + | author = Fabrice Weinberg<br> | ||
| + | version = 3.2.1<br> | ||
| + | "pool.ntp.org"; // Default time server<br> | ||
| + | <br> | ||
| + | https://github.com/arduino-libraries/NTPClient<br> | ||
| + | <br> | ||
| + | <b>Advanced.ino</b>✅ Basé sur l'exemple Advanced donnée dans la bibliothèque sur GitHub<br> | ||
| + | |||
| + | |||
| + | [[File:Grove Base for XIAO 1.PNG|200px]] | ||
| + | [[File:XIAO-ESP32S3 1.PNG|125px]] | ||
| + | |||
| + | Grove Base for XIAO<br> | ||
| + | XIAO-ESP32S3<br> | ||
| + | |||
| + | |||
| + | ici on fixe "europe.pool.ntp.org" comme serveur de temps | ||
| + | <pre> | ||
| + | #include <NTPClient.h> | ||
| + | |||
| + | // change next line to use with another board/shield | ||
| + | // #include <ESP8266WiFi.h> | ||
| + | // #include <WiFi101.h> // for WiFi 101 shield or MKR1000 | ||
| + | // #include <WiFi.h> // for WiFi shield | ||
| + | |||
| + | #include <WiFi.h> | ||
| + | #include <WiFiUdp.h> | ||
| + | |||
| + | const char *ssid = "<SSID>"; | ||
| + | const char *password = "<PASSWORD>"; | ||
| + | |||
| + | WiFiUDP ntpUDP; | ||
| + | |||
| + | // You can specify the time server pool and the offset (in seconds, can be | ||
| + | // changed later with setTimeOffset() ). Additionally you can specify the | ||
| + | // update interval (in milliseconds, can be changed using setUpdateInterval() ). | ||
| + | |||
| + | 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); | ||
| + | } | ||
| + | </pre> | ||
| + | |||
| + | |||
| + | <br> | ||
| + | <b>IsTimeSet.ino</b> Basé sur l'exemple IsTimeSet donnée dans la bibliothèque sur GitHub<br><br> | ||
| + | ici on utilise <b>"pool.ntp.org"</b> comme serveur de temps | ||
| + | |||
| + | <pre> | ||
| + | #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; | ||
| + | // initialized to a time offset of 10 hours | ||
| + | NTPClient timeClient(ntpUDP,"pool.ntp.org", 36000, 60000); | ||
| + | // HH:MM:SS | ||
| + | // timeClient initializes to 10:00:00 if it does not receive an NTP packet | ||
| + | // before the 100ms timeout. | ||
| + | // without isTimeSet() the LED would be switched on, although the time | ||
| + | // was not yet set correctly. | ||
| + | |||
| + | // blue LED on ESP-12F | ||
| + | const int led = 2; | ||
| + | const int hour = 10; | ||
| + | const int minute = 0; | ||
| + | |||
| + | void setup(){ | ||
| + | Serial.begin(115200); | ||
| + | |||
| + | pinMode(led, OUTPUT); | ||
| + | // led is off when pin is high | ||
| + | digitalWrite(led, 1); | ||
| + | |||
| + | WiFi.begin(ssid, password); | ||
| + | |||
| + | while (WiFi.status() != WL_CONNECTED) { | ||
| + | delay (500); | ||
| + | Serial.print ("."); | ||
| + | } | ||
| + | |||
| + | timeClient.begin(); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | timeClient.update(); | ||
| + | |||
| + | Serial.println(timeClient.getFormattedTime()); | ||
| + | if(timeClient.isTimeSet()) { | ||
| + | if (hour == timeClient.getHours() && minute == timeClient.getMinutes()) { | ||
| + | digitalWrite(led, 0); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | delay(1000); | ||
| + | } | ||
| + | </pre> | ||
Latest revision as of 11:15, 21 September 2025
author = Fabrice Weinberg
version = 3.2.1
"pool.ntp.org"; // Default time server
https://github.com/arduino-libraries/NTPClient
Advanced.ino✅ Basé sur l'exemple Advanced donnée dans la bibliothèque sur GitHub
Grove Base for XIAO
XIAO-ESP32S3
ici on fixe "europe.pool.ntp.org" comme serveur de temps
#include <NTPClient.h>
// change next line to use with another board/shield
// #include <ESP8266WiFi.h>
// #include <WiFi101.h> // for WiFi 101 shield or MKR1000
// #include <WiFi.h> // for WiFi shield
#include <WiFi.h>
#include <WiFiUdp.h>
const char *ssid = "<SSID>";
const char *password = "<PASSWORD>";
WiFiUDP ntpUDP;
// You can specify the time server pool and the offset (in seconds, can be
// changed later with setTimeOffset() ). Additionally you can specify the
// update interval (in milliseconds, can be changed using setUpdateInterval() ).
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);
}
IsTimeSet.ino Basé sur l'exemple IsTimeSet donnée dans la bibliothèque sur GitHub
ici on utilise "pool.ntp.org" comme serveur de temps
#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;
// initialized to a time offset of 10 hours
NTPClient timeClient(ntpUDP,"pool.ntp.org", 36000, 60000);
// HH:MM:SS
// timeClient initializes to 10:00:00 if it does not receive an NTP packet
// before the 100ms timeout.
// without isTimeSet() the LED would be switched on, although the time
// was not yet set correctly.
// blue LED on ESP-12F
const int led = 2;
const int hour = 10;
const int minute = 0;
void setup(){
Serial.begin(115200);
pinMode(led, OUTPUT);
// led is off when pin is high
digitalWrite(led, 1);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay (500);
Serial.print (".");
}
timeClient.begin();
}
void loop() {
timeClient.update();
Serial.println(timeClient.getFormattedTime());
if(timeClient.isTimeSet()) {
if (hour == timeClient.getHours() && minute == timeClient.getMinutes()) {
digitalWrite(led, 0);
}
}
delay(1000);
}