Wordclock/init.lua
2017-01-03 14:07:23 +01:00

57 lines
1.3 KiB
Lua

uart.setup(0, 115200, 8, 0, 1, 1 )
print("Autostart in 5 seconds...")
ws2812.init() -- WS2812 LEDs initialized on GPIO2
counter1=0
ws2812.write(string.char(0,0,0):rep(114))
tmr.alarm(2, 85, 1, function()
counter1=counter1+1
ws2812.write(string.char(128,0,0):rep(counter1))
end)
local blacklistfile="init.lua config.lua"
function recompileAll()
-- compile all files
l = file.list();
for k,_ in pairs(l) do
if (string.find(k, ".lc", -3)) then
print ("Skipping " .. k)
elseif (string.find(blacklistfile, k) == nil) then
-- Only look at lua files
if (string.find(k, ".lua") ~= nil) then
print("Compiling and deleting " .. k)
node.compile(k)
-- remove the lua file
file.remove(k)
else
print("No code: " .. k)
end
end
end
end
function mydofile(mod)
if (file.open(mod .. ".lua")) then
dofile( mod .. ".lua")
else
dofile(mod .. ".lc")
end
end
tmr.alarm(1, 5000, 0, function()
tmr.stop(2)
if (file.open("main.lua")) then
recompileAll()
print("Rebooting ...")
-- reboot repairs everything
node.restart()
elseif (file.open("main.lc")) then
print("Starting main")
dofile("main.lc")
else
print("No Main file found")
end
end)