From d5f28ce7e4fe75f1b79d1076cf214045d1531add Mon Sep 17 00:00:00 2001 From: Christian Zufferey Date: Wed, 1 Jan 2020 12:46:20 +0100 Subject: [PATCH] =?UTF-8?q?Corrig=C3=A9=20le=20port=20de=20la=20LED=20sur?= =?UTF-8?q?=20le=20SonOff=20et=20refactoris=C3=A9=20encore=20une=20fois=20?= =?UTF-8?q?la=20proc=C3=A9dure=20de=20boot=20avec=20le=20WIFI=5Finit.=20Le?= =?UTF-8?q?=20mode=20AP=20est=20maintenant=20au=20tout=20d=C3=A9but=20de?= =?UTF-8?q?=20la=20phase=20de=20boot,=20afin=20de=20pouvoir=20voir=20l'adr?= =?UTF-8?q?esse=20IP=20avant=20que=20boot2=20ne=20plante?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../energy/transfo_courant_clip_2/boot.lua | 4 +- .../energy/transfo_courant_clip_2/boot2.lua | 19 ++-------- .../energy/transfo_courant_clip_2/initz.lua | 10 +++-- .../transfo_courant_clip_2/wifi_init.lua | 38 ++++++++++++++++--- SonOff/SonOff_2/boot.lua | 4 +- SonOff/SonOff_2/boot2.lua | 19 ++-------- SonOff/SonOff_2/initz.lua | 10 +++-- SonOff/SonOff_2/wifi_init.lua | 38 ++++++++++++++++--- 8 files changed, 86 insertions(+), 56 deletions(-) diff --git a/Mesures/energy/transfo_courant_clip_2/boot.lua b/Mesures/energy/transfo_courant_clip_2/boot.lua index dba8694..ebcd739 100644 --- a/Mesures/energy/transfo_courant_clip_2/boot.lua +++ b/Mesures/energy/transfo_courant_clip_2/boot.lua @@ -1,11 +1,11 @@ -- Scripts à charger après le boot pour démarrer le core system -print("\n boot.lua zf191221.1509 \n") +print("\n boot.lua zf200101.1235 \n") function boot() gpio.trig(zswitch, "none") hvbouton=nil zswitch=nil reset_reason=nil - f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end + f= "web_srv2.lua" if file.exists(f) then dofile(f) end f= "wifi_init.lua" if file.exists(f) then dofile(f) end end boot() diff --git a/Mesures/energy/transfo_courant_clip_2/boot2.lua b/Mesures/energy/transfo_courant_clip_2/boot2.lua index f07225c..c6f1695 100644 --- a/Mesures/energy/transfo_courant_clip_2/boot2.lua +++ b/Mesures/energy/transfo_courant_clip_2/boot2.lua @@ -1,28 +1,15 @@ -- Scripts à charger après le boot pour démarrer son projet -print("\n boot2.lua zf191228.2303 \n") +print("\n boot2.lua zf200101.1240 \n") function boot2() + print("boot2 starting...") second_chance=nil initz=nil boot=nil zLED=nil boot2_tmr=nil secrets_wifi=nil wifi_init=nil cli_ssid=nil cli_pwd=nil boot2_tmr1=nil wifi_init1=nil wifi_info=nil boot2_go=nil - - f= "secrets_project.lua" if file.exists(f) then dofile(f) end - f= "set_time.lua" if file.exists(f) then dofile(f) end collectgarbage() - wifi.setmode(wifi.STATIONAP,true) - wifi.ap.config({ ssid = ap_ssid.."_"..node_id, pwd = ap_pwd, save=true }) - ap_ssid=nil ap_pwd=nil - f= "web_srv2.lua" if file.exists(f) then dofile(f) end - boot2_tmr3=tmr.create() - boot2_tmr3:alarm(60*1000, tmr.ALARM_SINGLE, function() - print("BOOOOUM, y'a plus de AP WIFI !") - wifi.setmode(wifi.STATION,true) boot2_tmr3=nil - print(node.heap()) collectgarbage() print(node.heap()) - end) - --f= "0_htu21d.lua" if file.exists(f) then dofile(f) end --f= "0_send_data.lua" if file.exists(f) then dofile(f) end --f= "0_cron.lua" if file.exists(f) then dofile(f) end @@ -32,7 +19,7 @@ function boot2() verbose = true boot2_tmr2=tmr.create() - boot2_tmr2:alarm(3*1000, tmr.ALARM_SINGLE, function() + boot2_tmr2:alarm(4*1000, tmr.ALARM_SINGLE, function() print("BOOOOUM, y'a plus de boot2 !") boot2=nil boot2_tmr2=nil print(node.heap()) collectgarbage() print(node.heap()) diff --git a/Mesures/energy/transfo_courant_clip_2/initz.lua b/Mesures/energy/transfo_courant_clip_2/initz.lua index c566d5e..2a8684e 100644 --- a/Mesures/energy/transfo_courant_clip_2/initz.lua +++ b/Mesures/energy/transfo_courant_clip_2/initz.lua @@ -3,10 +3,10 @@ -- le script repair.lua pendant xx secondes avant de continuer --Source: https://nodemcu.readthedocs.io/en/master/en/modules/node/#nodebootreason -print("\n init.lua zf191221.1509 \n") +print("\n init.lua zf200101.1244 \n") function initz() - zswitch=3 --switch flash + zswitch=3 --switch flash ou SonOff gpio.mode(zswitch, gpio.INT, gpio.PULLUP) function hvbouton() @@ -20,9 +20,11 @@ function initz() function second_chance() print("seconde chance...") - zLED=4 gpio.write(zLED, gpio.LOW) gpio.mode(zLED, gpio.OUTPUT) + zLED=4 -- NodeMCU + --zLED=7 -- SonOff + gpio.write(zLED, gpio.LOW) gpio.mode(zLED, gpio.OUTPUT) initalarme=tmr.create() - initalarme:alarm(5*1000, tmr.ALARM_SINGLE, function() + initalarme:alarm(10*1000, tmr.ALARM_SINGLE, function() f= "boot.lua" if file.exists(f) then dofile(f) end end) initalarme2=tmr.create() diff --git a/Mesures/energy/transfo_courant_clip_2/wifi_init.lua b/Mesures/energy/transfo_courant_clip_2/wifi_init.lua index 380300f..1bcfafe 100644 --- a/Mesures/energy/transfo_courant_clip_2/wifi_init.lua +++ b/Mesures/energy/transfo_courant_clip_2/wifi_init.lua @@ -1,16 +1,30 @@ -- Petit script pour initaliser la couche WIFI function wifi_init() - print("\n wifi_init.lua zf191222.2356 \n") + print("\n wifi_init.lua zf200101.1244 \n") -- charge les secrets pour le wifi f= "secrets_wifi.lua" if file.exists(f) then dofile(f) end + f= "secrets_project.lua" if file.exists(f) then dofile(f) end + + wifi.setmode(wifi.STATIONAP,true) - wifi.setmode(wifi.STATION,true) wifi.sta.config{ssid=cli_ssid, pwd=cli_pwd, auto=true, save=true} - wifi.sta.autoconnect(1) - wifi.sta.connect() + wifi.sta.autoconnect(1) wifi.sta.connect() - zLED=4 gpio.write(zLED, gpio.HIGH) gpio.mode(zLED, gpio.OUTPUT) + if node_id == nil then node_id = "generic" end + wifi.ap.config({ ssid = ap_ssid.."_"..node_id, pwd = ap_pwd, save=true }) + ap_ssid=nil ap_pwd=nil + + wifi_init2=tmr.create() + wifi_init2:alarm(60*1000, tmr.ALARM_SINGLE, function() + print("BOOOOUM, y'a plus de AP WIFI !") + wifi.setmode(wifi.STATION,true) wifi_init2=nil + print(node.heap()) collectgarbage() print(node.heap()) + end) + + zLED=4 -- NodeMCU + --zLED=7 -- SonOff + gpio.write(zLED, gpio.HIGH) gpio.mode(zLED, gpio.OUTPUT) i=1 wifi_init1=tmr.create() wifi_init1:alarm(1*1000, tmr.ALARM_AUTO , function() @@ -18,7 +32,7 @@ function wifi_init() if wifi.sta.getip() == nil then print("Connecting to AP...") i=i+1 - if i > 10 then + if i > 15 then i=nil wifi_init1:unregister() print("booum!") enduser_setup.start(function() @@ -34,3 +48,15 @@ function wifi_init() end wifi_init() + +--[[ +zLED=7 +gpio.mode(zLED, gpio.OUTPUT) +gpio.write(zLED, gpio.HIGH) +gpio.write(zLED, gpio.LOW) + +zSWITCH=3 +gpio.mode(zSWITCH, gpio.INPUT) +print(gpio.read(zSWITCH)) + +]] diff --git a/SonOff/SonOff_2/boot.lua b/SonOff/SonOff_2/boot.lua index dba8694..ebcd739 100644 --- a/SonOff/SonOff_2/boot.lua +++ b/SonOff/SonOff_2/boot.lua @@ -1,11 +1,11 @@ -- Scripts à charger après le boot pour démarrer le core system -print("\n boot.lua zf191221.1509 \n") +print("\n boot.lua zf200101.1235 \n") function boot() gpio.trig(zswitch, "none") hvbouton=nil zswitch=nil reset_reason=nil - f= "telnet_srv2.lua" if file.exists(f) then dofile(f) end + f= "web_srv2.lua" if file.exists(f) then dofile(f) end f= "wifi_init.lua" if file.exists(f) then dofile(f) end end boot() diff --git a/SonOff/SonOff_2/boot2.lua b/SonOff/SonOff_2/boot2.lua index f07225c..c6f1695 100644 --- a/SonOff/SonOff_2/boot2.lua +++ b/SonOff/SonOff_2/boot2.lua @@ -1,28 +1,15 @@ -- Scripts à charger après le boot pour démarrer son projet -print("\n boot2.lua zf191228.2303 \n") +print("\n boot2.lua zf200101.1240 \n") function boot2() + print("boot2 starting...") second_chance=nil initz=nil boot=nil zLED=nil boot2_tmr=nil secrets_wifi=nil wifi_init=nil cli_ssid=nil cli_pwd=nil boot2_tmr1=nil wifi_init1=nil wifi_info=nil boot2_go=nil - - f= "secrets_project.lua" if file.exists(f) then dofile(f) end - f= "set_time.lua" if file.exists(f) then dofile(f) end collectgarbage() - wifi.setmode(wifi.STATIONAP,true) - wifi.ap.config({ ssid = ap_ssid.."_"..node_id, pwd = ap_pwd, save=true }) - ap_ssid=nil ap_pwd=nil - f= "web_srv2.lua" if file.exists(f) then dofile(f) end - boot2_tmr3=tmr.create() - boot2_tmr3:alarm(60*1000, tmr.ALARM_SINGLE, function() - print("BOOOOUM, y'a plus de AP WIFI !") - wifi.setmode(wifi.STATION,true) boot2_tmr3=nil - print(node.heap()) collectgarbage() print(node.heap()) - end) - --f= "0_htu21d.lua" if file.exists(f) then dofile(f) end --f= "0_send_data.lua" if file.exists(f) then dofile(f) end --f= "0_cron.lua" if file.exists(f) then dofile(f) end @@ -32,7 +19,7 @@ function boot2() verbose = true boot2_tmr2=tmr.create() - boot2_tmr2:alarm(3*1000, tmr.ALARM_SINGLE, function() + boot2_tmr2:alarm(4*1000, tmr.ALARM_SINGLE, function() print("BOOOOUM, y'a plus de boot2 !") boot2=nil boot2_tmr2=nil print(node.heap()) collectgarbage() print(node.heap()) diff --git a/SonOff/SonOff_2/initz.lua b/SonOff/SonOff_2/initz.lua index c566d5e..03b7172 100644 --- a/SonOff/SonOff_2/initz.lua +++ b/SonOff/SonOff_2/initz.lua @@ -3,10 +3,10 @@ -- le script repair.lua pendant xx secondes avant de continuer --Source: https://nodemcu.readthedocs.io/en/master/en/modules/node/#nodebootreason -print("\n init.lua zf191221.1509 \n") +print("\n init.lua zf200101.1223 \n") function initz() - zswitch=3 --switch flash + zswitch=3 --switch flash ou SonOff gpio.mode(zswitch, gpio.INT, gpio.PULLUP) function hvbouton() @@ -20,9 +20,11 @@ function initz() function second_chance() print("seconde chance...") - zLED=4 gpio.write(zLED, gpio.LOW) gpio.mode(zLED, gpio.OUTPUT) + --zLED=4 -- NodeMCU + zLED=7 -- SonOff + gpio.write(zLED, gpio.LOW) gpio.mode(zLED, gpio.OUTPUT) initalarme=tmr.create() - initalarme:alarm(5*1000, tmr.ALARM_SINGLE, function() + initalarme:alarm(10*1000, tmr.ALARM_SINGLE, function() f= "boot.lua" if file.exists(f) then dofile(f) end end) initalarme2=tmr.create() diff --git a/SonOff/SonOff_2/wifi_init.lua b/SonOff/SonOff_2/wifi_init.lua index 380300f..1ffee1a 100644 --- a/SonOff/SonOff_2/wifi_init.lua +++ b/SonOff/SonOff_2/wifi_init.lua @@ -1,16 +1,30 @@ -- Petit script pour initaliser la couche WIFI function wifi_init() - print("\n wifi_init.lua zf191222.2356 \n") + print("\n wifi_init.lua zf200101.1236 \n") -- charge les secrets pour le wifi f= "secrets_wifi.lua" if file.exists(f) then dofile(f) end + f= "secrets_project.lua" if file.exists(f) then dofile(f) end + + wifi.setmode(wifi.STATIONAP,true) - wifi.setmode(wifi.STATION,true) wifi.sta.config{ssid=cli_ssid, pwd=cli_pwd, auto=true, save=true} - wifi.sta.autoconnect(1) - wifi.sta.connect() + wifi.sta.autoconnect(1) wifi.sta.connect() - zLED=4 gpio.write(zLED, gpio.HIGH) gpio.mode(zLED, gpio.OUTPUT) + if node_id == nil then node_id = "generic" end + wifi.ap.config({ ssid = ap_ssid.."_"..node_id, pwd = ap_pwd, save=true }) + ap_ssid=nil ap_pwd=nil + + wifi_init2=tmr.create() + wifi_init2:alarm(60*1000, tmr.ALARM_SINGLE, function() + print("BOOOOUM, y'a plus de AP WIFI !") + wifi.setmode(wifi.STATION,true) wifi_init2=nil + print(node.heap()) collectgarbage() print(node.heap()) + end) + + --zLED=4 -- NodeMCU + zLED=7 -- SonOff + gpio.write(zLED, gpio.HIGH) gpio.mode(zLED, gpio.OUTPUT) i=1 wifi_init1=tmr.create() wifi_init1:alarm(1*1000, tmr.ALARM_AUTO , function() @@ -18,7 +32,7 @@ function wifi_init() if wifi.sta.getip() == nil then print("Connecting to AP...") i=i+1 - if i > 10 then + if i > 15 then i=nil wifi_init1:unregister() print("booum!") enduser_setup.start(function() @@ -34,3 +48,15 @@ function wifi_init() end wifi_init() + +--[[ +zLED=7 +gpio.mode(zLED, gpio.OUTPUT) +gpio.write(zLED, gpio.HIGH) +gpio.write(zLED, gpio.LOW) + +zSWITCH=3 +gpio.mode(zSWITCH, gpio.INPUT) +print(gpio.read(zSWITCH)) + +]]