Como armazenar e criar programas na memória do ESP8266 com nodeMCU

Toda vez que um programa/script em LUA é enviado para o módulo, para que ele seja armazenado na memória, temos que escrevê-lo, seja editando um arquivo ou criando um novo. Vamos a um exemplo:

A estrutura do nodeMCU é baseada em arquivos, como em um sistema de arquivos comum. Esses arquivos armazenam os scripts, e podem ser executados no momento da inicialização do módulo ou em qualquer outro momento, se necessário.

O primeiro e principal arquivo é o “init.lua“. Este arquivo é executado sempre que o módulo inicia. Nele podemos inserir chamadas para outro arquivo, ou mesmo inserir o programa diretamente nele.

Para criar um arquivo, basta inserir o seguinte comando via porta serial:

Onde, o comando file.open(“nome-do-arquivo.lua”,”w”) abre ou cria um arquivo e o comando file.writeline([[xxxxxx]]) escreve no arquivo. Para salvar e fechar o arquivo, basta utilizar o comando file.close().

Ou seja, se for para criar um script de configuração por exemplo, basta criar da seguinte forma.

Feito isso, basta editar o arquivo de inicialização, “init.lua” para chamar o arquivo criado durante a inicialização do módulo.

Com isso, toda vez que o módulo iniciar, o arquivo “configurar.lua” será executado.

Outros comandos de manipulação de arquivos são:

file.remove(“arquivo.lua”) para remover um arquivo.

file.rename(“antigo.lua”,”novo.lua”) para renomear um arquivo.

file.open(“init.lua”, “r”)  print(file.read()) file.close() para ler o conteúdo do arquivo.

l = file.list(); for k,v in pairs(l) do print(“name:”..k..”, size:”..v) end para listar os arquivos criados.

Happy Hacking!