• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Решено Nodemcu(lua). Крашится init.lua

shavrin777

New member
имею код
Код:
print('\n',"Power on",'\n')

while wifi.sta.status() ~= 5 do end

-- дальше остальной код
Не знал как сделать так, чтобы код начинал работать только после подключения к wifi.
В голову пришла такая затычка, после опробованного решения с таймером,
теперь lua VM крашится и не выдаёт код ошибки, успеть залить код до зависания, даже пререзаливка прошивки не помогает.
Помогите пожалуйста.
И если кто знает как по нормальному решить, чтобы код начинал работать только после подключения к wifi, не через уродский зацикленный таймер с if в функции
 

shavrin777

New member
С этим разобрался - просто залил прошивку через arduino ide, а потом опять NodeMcu.
Но может кто-то подскажет как правильно сделать, чтобы код выполнялся только после соединения с wifi.
 

NeoroN

Member
Код:
wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)
dofile("program.lua");
end)
А вообще вот wifi - NodeMCU Documentation
почитайте на досуге, там много интересного - на Ардуино уже лень писать
 

shavrin777

New member
Если пишите в луа надо использовать
wifi.sta.status()
Gets the current status in station mode.
Syntax wifi.sta.status()
Parameters nil
Returns The current state which can be one of the following:
  • wifi.STA_IDLE
  • wifi.STA_CONNECTING
  • wifi.STA_WRONGPWD
  • wifi.STA_APNOTFOUND
  • wifi.STA_FAIL
  • wifi.STA_GOTIP
про это я знал но всё равно спасибо
 

shavrin777

New member
Сверху Снизу