Remove auto-reboot and make timezone configurable
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
#include "time_manager.h"
|
||||
#include "config.h"
|
||||
#include <time.h>
|
||||
|
||||
static bool g_time_synced = false;
|
||||
@@ -12,15 +13,20 @@ static void note_last_sync(uint32_t epoch) {
|
||||
g_last_sync_utc = epoch;
|
||||
}
|
||||
|
||||
static void ensure_timezone_set() {
|
||||
if (g_tz_set) {
|
||||
return;
|
||||
}
|
||||
setenv("TZ", TIMEZONE_TZ, 1);
|
||||
tzset();
|
||||
g_tz_set = true;
|
||||
}
|
||||
|
||||
void time_receiver_init(const char *ntp_server_1, const char *ntp_server_2) {
|
||||
const char *server1 = (ntp_server_1 && ntp_server_1[0] != '\0') ? ntp_server_1 : "pool.ntp.org";
|
||||
const char *server2 = (ntp_server_2 && ntp_server_2[0] != '\0') ? ntp_server_2 : "time.nist.gov";
|
||||
configTime(0, 0, server1, server2);
|
||||
if (!g_tz_set) {
|
||||
setenv("TZ", "CET-1CEST,M3.5.0/2,M10.5.0/3", 1);
|
||||
tzset();
|
||||
g_tz_set = true;
|
||||
}
|
||||
ensure_timezone_set();
|
||||
}
|
||||
|
||||
uint32_t time_get_utc() {
|
||||
@@ -40,11 +46,7 @@ bool time_is_synced() {
|
||||
}
|
||||
|
||||
void time_set_utc(uint32_t epoch) {
|
||||
if (!g_tz_set) {
|
||||
setenv("TZ", "CET-1CEST,M3.5.0/2,M10.5.0/3", 1);
|
||||
tzset();
|
||||
g_tz_set = true;
|
||||
}
|
||||
ensure_timezone_set();
|
||||
struct timeval tv;
|
||||
tv.tv_sec = epoch;
|
||||
tv.tv_usec = 0;
|
||||
|
||||
Reference in New Issue
Block a user