Compare commits

...

3 Commits

Author SHA1 Message Date
c5901a2fa7 Merge commit '8edae04556c46aa0645792c6b3c021636bb454ff' into feat--add-ntp-support 2023-10-21 19:11:44 +02:00
2a61d59edc add sendTime 2023-09-01 21:09:08 +02:00
2c138a3225 feat: test ntp 2023-08-18 21:34:05 +02:00
4 changed files with 46 additions and 6 deletions

View File

@ -3,6 +3,8 @@
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
#include "DiscordAPI.h"
#include "SwitchableEncodeur.h"
@ -35,6 +37,15 @@ private:
DiscordAPI* discord;
LedLib* ledLib;
WiFiUDP* ntpUDP;
NTPClient* timeClient;
/**
* @brief Send time to discord
* the start time is automaticly set to the current time
* @param[in] timeEnd LabOuest closing time
*/
void sendTime(String timeEnd);
};
#endif

View File

@ -53,6 +53,7 @@ lib_deps =
; example:
; erropix/ESP32 AnalogWrite@0.2
adafruit/Adafruit NeoPixel@^1.11.0
arduino-libraries/NTPClient@^3.2.1
; Checker settings
check_tool = clangtidy, cppcheck

View File

@ -26,14 +26,21 @@ Program::Program() {
// Startup Discord API
this->discord = new DiscordAPI(DISCORD_HOOK);
delay(1000);
//Serial.println(this->discord->sendHeure("10h", "18h"));
// startup NTP
this->ntpUDP = new WiFiUDP();
this->timeClient = new NTPClient(*this->ntpUDP, "pool.ntp.org", 3600*2);//*2 = gnt+2
// Startup Encoder
this->encoder = new SwitchableEncodeur(ENCODER_DT, ENCODER_CLK, ENCODER_SWITCH, 3);
this->timeClient->update();
//this->sendTime("18h12");
}
// Startup LEDs
this->ledLib = new LedLib(PIXEL_COUNT, PIXEL_PIN, 255);
void Program::sendTime(String timeEnd){
String start = (String)this->timeClient->getHours() + "h";
int startQuater = this->timeClient->getMinutes()/15;
if (startQuater != 0){
start += (String)(startQuater * 15);
}
this->discord->sendHeure(start, timeEnd);
}
void Program::loop() {
@ -43,4 +50,23 @@ void Program::loop() {
Serial.print(" ");
Serial.println(this->encoder->getMenu());
}
delay(1000);
this->timeClient->update();
int currentHour = this->timeClient->getHours();
Serial.print("Hour: ");
Serial.println(currentHour);
int currentMinute = this->timeClient->getMinutes();
Serial.print("Minutes: ");
Serial.println(currentMinute);
int currentSecond = this->timeClient->getSeconds();
Serial.print("Seconds: ");
Serial.println(currentSecond);
int currentDayOfWeek = this->timeClient->getDay();
Serial.print("Day of week: ");
Serial.println(currentDayOfWeek);
}

View File

@ -9,3 +9,5 @@ void setup() {
void loop() {
program->loop();
}