Post your best Lua script examples here
User avatar
By lua2018
#68289 Hello,
I hope I post it in thr right forum.
When I print this code in my ESP8266:
Code: Select alli = 1
switch1 = 4
gpio.mode(switch1, gpio.INPUT)
while i ==1 do
    if gpio.read(switch1) == nil then
       print("Hello")
    end
end

I become this code in the Output:
Code: Select all...
Hello
Hello
Hello
Hello
Hellïc_ÇÏRSöfJSúfJSúfêø

NodeMCU 0.9.5 build 20150318  powered by Lua 5.1.4
Hello
Hello
Hello
...

I hope someone can help me and my English is not so bad:D
Thank you for your help

Felis
User avatar
By jankop
#68347 Hi, Felis

1. You have very old version of Lua firmware. Upload a new one. https://nodemcu-build.com/
2. Lua NodeMCU is RTOS, read NodeMCU documentation. https://nodemcu.readthedocs.io/en/master/
3. Read about tmr.delay() function too. https://nodemcu.readthedocs.io/en/master/en/modules/tmr/#tmrdelay
4. Here is your modified example, But it's not the best way to solve it.
Code: Select alli = 1
switch1 = 4
gpio.mode(switch1, gpio.INPUT)
while i ==1 do
    tmr.delay(5000)
   if gpio.read(switch1) == nil then -- why nil, rather 1 or 0?
       print("Hello")
    end
end