function panic(reason) print("PANIC: "..reason) -- This will trigger a restart, but not immediately node.restart() end local inter = require('inter') local mq = require('mq') function configure_wlan() local wlan_ssid = read_cfg("wlan-ssid", false) local wlan_password = read_cfg("wlan-password", false) if not wlan_ssid or not wlan_password then info("Missing SSID and/or password configuration, use 'wlan' to configure") wifi.sta.config('', '') return end info("Connecting to SSID: "..wlan_ssid) wifi.setmode(wifi.STATION) wifi.sta.config(wlan_ssid, wlan_password) end local function print_status() ip, nm, gw = wifi.sta.getip() print("status uptime="..tmr.time().." heap-left="..node.heap().." ip="..tostring(ip).." netmask="..tostring(nm).." gateway="..tostring(gw)) end function main() local timers = { status = 0, inter = 1, mqtt = 2 } configure_wlan(wlan_ssid, wlan_password) local mac = wifi.sta.getmac() local client_id = "esp8266-"..mac mq.init(timers.mqtt, mac, client_id) inter.init(on_cmd) load_properties() info("init done") tmr.alarm(timers.status, 10 * 1000, 1, print_status) end