There's a new build coming out soon which frees up another 17K RAM or so for a slight performance hit, but worthwhile overall, IMO.
It's well worth your while keeping your init.lua as small as possible e.g.
Code: Select alltmr.alarm(6,2000,0,require ("app"))
Also note that extension names are a convention only as the bytecode content is detected by the
<ESC>Lua file header, so you can do a
node.compile("init.lua")and if you want and rename the lc file back to
init.lua. This way you avoid calling the compiler entirely which decreases memory fragmentation.
Also read my last section on the cost of subroutine calls, and use tailcalls wherever possible as this saves a stack frame.