2019-05-18 10:57:04 +02:00
|
|
|
#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
|
2019-05-18 11:19:10 +02:00
|
|
|
NTPClient timeClient(ntpUDP,"pool.ntp.org", 36000, 60000);
|
2019-05-18 10:57:04 +02:00
|
|
|
// 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 ESP12F
|
|
|
|
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);
|
|
|
|
}
|