Added time synchronization again

This commit is contained in:
ollo 2016-06-19 00:30:09 +02:00
parent 6874d1545b
commit 7140717696
2 changed files with 81 additions and 72 deletions

View File

@ -1,14 +1,18 @@
-- Main Module
function startSetupMode()
tmr.stop(0)
tmr.stop(1)
-- start the webserver module
mod="webserver"
function mydofile(mod)
if (file.open(mod .. ".lua")) then
dofile( mod .. ".lua")
else
dofile(mod .. ".lc")
end
end
function startSetupMode()
tmr.stop(0)
tmr.stop(1)
-- start the webserver module
mydofile("webserver")
wifi.setmode(wifi.SOFTAP)
cfg={}
@ -20,20 +24,6 @@ function startSetupMode()
startWebServer()
end
print("Solving dependencies")
dependModules = { "timecore" , "wordclock", "displayword" }
for _,mod in pairs(dependModules) do
print("Loading " .. mod)
if (file.open(mod .. ".lua")) then
dofile( mod .. ".lua")
else
dofile(mod .. ".lc")
end
end
ledPin=4
-- Color is defined as GREEN, RED, BLUE
color=string.char(0,0,250)
function syncTimeFromInternet()
--ptbtime1.ptb.de
@ -47,9 +37,14 @@ function syncTimeFromInternet()
)
end
connect_counter=0
-- Wait to be connect to the WiFi access point.
tmr.alarm(0, 500, 1, function()
function normalOperation()
ledPin=4
-- Color is defined as GREEN, RED, BLUE
color=string.char(0,0,250)
connect_counter=0
-- Wait to be connect to the WiFi access point.
tmr.alarm(0, 500, 1, function()
connect_counter=connect_counter+1
if wifi.sta.status() ~= 5 then
print("Connecting to AP...")
@ -62,9 +57,12 @@ tmr.alarm(0, 500, 1, function()
tmr.stop(0)
print('IP: ',wifi.sta.getip())
tmr.alarm(2, 500, 0 ,function()
syncTimeFromInternet()
end)
print("Start webserver...")
tmr.alarm(2, 2000, 0 ,function()
dofile("webserver.lua")
tmr.alarm(3, 2000, 0 ,function()
mydofile("webserver")
startWebServer()
end)
@ -74,9 +72,9 @@ tmr.alarm(0, 500, 1, function()
if (connect_counter == 300) then -- 300 is 30 sec in 100ms cycle
startSetupmode()
end
end)
end)
tmr.alarm(1, 15000, 1 ,function()
tmr.alarm(1, 15000, 1 ,function()
sec, usec = rtctime.get()
-- Include the timezone
sec = sec + (timezoneoffset * 3600)
@ -101,12 +99,23 @@ tmr.alarm(1, 15000, 1 ,function()
words=nil
time=nil
collectgarbage()
end)
end)
end
-- Logic
if ( file.open("config.lua") ) then
--- Normal operation
print("Solving dependencies")
dependModules = { "timecore" , "wordclock", "displayword" }
for _,mod in pairs(dependModules) do
print("Loading " .. mod)
mydofile(mod)
end
wifi.setmode(wifi.STATION)
dofile("config.lua")
normalOperation()
else
-- Logic for inital setup
startSetupMode()
end