Ich habe versucht, Zeit mit NTP-Servern zu synchronisieren, jedoch scheint Nodemcu den Serverparameter zu ignorieren.Sntp.sync() ignoriert Server
-- sync.lua
sntp.sync("fr.pool.ntp.org", function()
tm = rtctime.epoch2cal(rtctime.get())
print(string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"]))
end)
Execution ..
> dofile('sync.lua')
> 2017/05/22 21:38:39
Es ist die Unix-Epoche Zeit (https://www.epochconverter.com/). Soll es die Serverparameterzeit sein (in diesem Fall Frankreich)? Ich versuchte mehrere verschiedene Server (d. H. http://www.pool.ntp.org/zone/europe), aber die Antwort bleibt gleich.
Irgendwelche Vorschläge? Vielen Dank!
Nein, Epochenzeit ist UTC. Sie müssen Zeitzonen auf das Ergebnis anwenden, um die lokale Zeit zu erhalten. Ich bin nicht sicher, was in Ihrer Umgebung für Sie verfügbar ist, aber Frankreich ist 2 Stunden vor UTC. – ktb
@ktb so ... wieso darf man den ntp-server als parameter benutzen, wenn er immer die UTC-zeit zurückgibt? – hugalves
Sie wollen Ihre Zeit beheben, um genau zu sein, oder? Nun, wenn du in Frankreich lebst, willst du einen französischen Server, keinen japanischen Server, der dir die Zeit sagt. Man ist etwas weiter von deinem Wohnort entfernt. – ktb