Files
NodeMCU_Lua/DeepSleep/Pet_tracker_2/boot.lua
Christian Zufferey d9d92f34ba Voilà mon dsleep commence enfin à fonctionner
J'ai fait un sacré moment car quand le NodeMCU se réveille d'un dsleep il est toujours vu comme venant d'un hard reset et pas moyen alors de détecter que l'on était en dsleep.
Maintenant je sauve un flag dans la rtc-mem et je peux tester ce flag au moment du reset et détecter si je sors du dsleep.
Reste encore à mieux faire la détection wifi pour savoir si on arrête le dsleep ou si on le relance
2020-07-22 11:49:42 +02:00

72 lines
2.5 KiB
Lua

-- Scripts à charger après le boot pour démarrer son projet
function boot()
print("\n boot.lua zf200722.1132 \n")
print("On lance le boot...")
collectgarbage() print(node.heap())
local f
-- f = "0_http_post.lua" if file.exists(f) then dofile(f) end
-- collectgarbage() print(node.heap())
-- local _, boot_reason = node.bootreason()
-- zarg_boot= "energy,memory=boot_"..yellow_id.." ram="..node.heap().."\n"
-- zarg_boot=zarg_boot.."energy,value=boot_reason_"..yellow_id.." val="..boot_reason
-- http_post(influxdb_url,zarg_boot)
f = "set_time.lua" if file.exists(f) then dofile(f) end
print(node.heap()) collectgarbage() print(node.heap())
-- f = "flash_led_xfois.lua" if file.exists(f) then dofile(f) end
-- print(node.heap()) collectgarbage() print(node.heap())
-- f = "0_zdyndns.lua" if file.exists(f) then dofile(f) end
-- print(node.heap()) collectgarbage() print(node.heap())
-- f="0_btn_flipflop.lua" if file.exists(f) then dofile(f) end
-- collectgarbage() print(node.heap())
-- f="0_ultra_son.lua" if file.exists(f) then dofile(f) end
-- collectgarbage() print(node.heap())
-- f="0_cron.lua" if file.exists(f) then dofile(f) end
-- collectgarbage() print(node.heap())
verbose = true
print("verbose: ",verbose,"\nle boot est lancé...")
gpio.write(zLED, gpio.HIGH)
f=nil boot=nil
end
-- function debug_rec(zdebug)
-- local sec, usec = rtctime.get() local tm = rtctime.epoch2cal(sec + 2*3600)
-- local ztm = string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"])
-- file.open("00_debug.txt", "a+") file.writeline(ztm.."."..usec..", "..zdebug) file.close()
-- end
--
-- function rec_boot()
-- sntp.sync(nil, nil, nil, 1)
-- tmr_rec_boot1=tmr.create()
-- tmr_rec_boot1:alarm(1*1000, tmr.ALARM_AUTO, function()
-- print("beep...")
-- if rtctime.get() > 0 then
-- tmr_rec_boot1:unregister()
-- print("Voilà on à l'heure, on peut enregistrer la raison du boot...")
-- local _, zboot_reason, zboot_detail = node.bootreason()
-- debug_rec("boot reason: "..zboot_reason)
-- tmr_rec_boot1=nil rec_boot=nil
-- collectgarbage() print(node.heap())
-- end
-- end)
-- end
verbose=true
if rec_boot~=nil then rec_boot() end
boot()
collectgarbage() print(node.heap())
--[[
verbose = true
verbose = false
]]