Updates for reliable NTP
This commit is contained in:
1 parent
536b076f39
commit
e11aa92692
1 file changed
+9
-9
@@ -15,16 +15,10 @@ def time_from_iso(datetime_str):
|
|||||||
time_u = mktime((yyyy, mm, dd, h, m, s, 0, 0))
|
time_u = mktime((yyyy, mm, dd, h, m, s, 0, 0))
|
||||||
return time_u
|
return time_u
|
||||||
|
|
||||||
def connect_wifi():
|
def reconnect_wifi():
|
||||||
# Create network in station mode, activate it and connect
|
|
||||||
wlan = network.WLAN(network.STA_IF)
|
|
||||||
|
|
||||||
wlan.active(True)
|
|
||||||
wlan.connect(SSID, PASS)
|
|
||||||
|
|
||||||
while not wlan.isconnected():
|
while not wlan.isconnected():
|
||||||
try:
|
try:
|
||||||
wlan.connect(ssid, password)
|
wlan.connect(SSID, PASS)
|
||||||
max_wait = 10
|
max_wait = 10
|
||||||
while max_wait > 0:
|
while max_wait > 0:
|
||||||
if wlan.isconnected():
|
if wlan.isconnected():
|
||||||
@@ -47,7 +41,11 @@ def init_LEDs():
|
|||||||
led.off()
|
led.off()
|
||||||
|
|
||||||
# Connect Wifi
|
# Connect Wifi
|
||||||
connect_wifi()
|
# Create network in station mode, activate it and connect
|
||||||
|
wlan = network.WLAN(network.STA_IF)
|
||||||
|
|
||||||
|
wlan.active(True)
|
||||||
|
reconnect_wifi()
|
||||||
|
|
||||||
# Synchronize time of RTC with NTP
|
# Synchronize time of RTC with NTP
|
||||||
last_ntp_sync = -3700 # Init as more than an hour ago
|
last_ntp_sync = -3700 # Init as more than an hour ago
|
||||||
@@ -209,6 +207,7 @@ init_LEDs()
|
|||||||
while(True):
|
while(True):
|
||||||
# Synchronise NTP time if hasn't been done in 1 hour
|
# Synchronise NTP time if hasn't been done in 1 hour
|
||||||
if (time() - last_ntp_sync) > 3600:
|
if (time() - last_ntp_sync) > 3600:
|
||||||
|
reconnect_wifi()
|
||||||
try:
|
try:
|
||||||
ntptime.settime()
|
ntptime.settime()
|
||||||
print("Time synchronized successfully")
|
print("Time synchronized successfully")
|
||||||
@@ -218,6 +217,7 @@ while(True):
|
|||||||
|
|
||||||
# Have we queried API in the query_period seconds?
|
# Have we queried API in the query_period seconds?
|
||||||
if (time() - last_api_query) > query_period:
|
if (time() - last_api_query) > query_period:
|
||||||
|
reconnect_wifi()
|
||||||
# Query updated API
|
# Query updated API
|
||||||
trains = (requests.get("https://lapi.transitchicago.com/api/1.0/ttpositions.aspx?key="+APIKEY+"&rt=Blue&outputType=JSON")).json()['ctatt']
|
trains = (requests.get("https://lapi.transitchicago.com/api/1.0/ttpositions.aspx?key="+APIKEY+"&rt=Blue&outputType=JSON")).json()['ctatt']
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user