Gravando firmware NodeMCU no ESP8266 ESP-01

Que tal programar o módulo Wifi ESP8266 ESP-01 utilizando Lua ? Isso é possível com o upgrade de firmware do módulo, já que a versão que vem de fábrica aceita apenas comandos AT. Neste tutorial, mostraremos como gravar o firmware NodeMCU no ESP8266 ESP-01.

Upgrade de firmware do ESP-01

Para realizar a gravação do firmware NodeMCU no ESP-01, vamos utilizar um módulo USB-TTL com chip FTDI, mas você pode usar outros conversores USB-Serial, e até mesmo um Arduino para fazer a ponte entre o computador e o ESP-01.

Conexão do módulo FTDI ao ESP-01

Conecte o conversor FTDI FT232 ao ESP-01 conforme o circuito abaixo. Não esqueça de mudar o jumper do módulo FTDI para a posição 3.3V, já que é essa a tensão de trabalho dos pinos do módulo ESP8266:

Para permitir a gravação do firmware, o pino GPIO0 do ESP-01 deve estar ligado ao GND, e deve ser desconectado quanto quisermos entrar em modo de programação.

Gravação do firmware NodeMCU no ESP-01

Primeiramente faça o download do firmware do NodeMCU neste link. Escolhemos o firmware nodemcu_integer, que consome menos memória:

Faça agora o download do programa de gravação do firmware, o NodeMCU Flasher. Não é necessária a instalação do programa, apenas descompacte o arquivo e execute o ESP8266Flasher.exe que está na pasta Win32Release (se o seu Windows for 32 bits), ou Win64Release (se o Windows for 64 bits) para que a tela principal do programa seja exibida, já com a porta serial (COM21, no nosso caso) do conversor FTDI:

Na aba Advanced acesse as configurações do programa e altere o Baudrate para 115200. Não é necessário mexer nos outros parâmetros.

Agora, vá até a aba Config e na primeira linha coloque o caminho (path) do arquivo do firmware que baixamos anteriormente. No campo relativo ao endereço, ao lado do nome do arquivo, selecione o endereço 0x00000:

Retorne à tela principal e clique no botão Flash(F). Aguarde o processo de upgrade. Se os endereços “MAC” do ESP-01 não forem detectados, desligue a alimentação do módulo por alguns segundos e ligue novamente

Finalizado o processo de upgrade, desconecte o pino GPIO0 para colocar o módulo em modo de programação.

Teste do firmware NodeMCU

Vamos testar o firmware gravado usando o ESPlorer, disponível neste link. Já vimos como usar esse programa no post Web Server com o módulo ESP8266 NodeMCU e DHT22. Depois de entrar no programa, selecione a porta serial do módulo FTDI e clique em Open.

Vamos ver se realmente funciona com a programação em Lua? Adicione um led ao circuito:

Na janela do lado esquerdo do ESPlorer, copie ou digite o programa abaixo, que vai piscar o led ligado à GPIO2 do ESP-01 em intervalos de 1 segundo:

-- Programa: Led com ESP8266 ESP-01
-- Autor: Arduino e Cia

-- Configuracao pinos e variaveis
pin = 4            --> GPIO2
value = gpio.LOW
duration = 1000    --> 1 second

-- Funcao que altera o estado do led
function toggleLED ()
    if value == gpio.LOW then
        value = gpio.HIGH
    else
        value = gpio.LOW
    end
    gpio.write(pin, value)
end


-- Inicializa a GPIO
gpio.mode(pin, gpio.OUTPUT)
gpio.write(pin, value)

-- Executa a função toggleLED()
tmr.alarm(0, duration, 1, toggleLED)

Clique no botão SEND to ESP para que o programa seja transferido para o módulo e automaticamente executado.

Gostou? Confira outros posts usando ESP8266 aqui mesmo no Arduino e Cia!

3.3/5 - (7 votos)

Related posts

Enviando mensagens MQTT com módulo ESP32

by Arduino e Cia
6 anos ago

Tutorial comunicação Xbee com Arduino

by Arduino e Cia
10 anos ago

Web Server com o módulo ESP8266 NodeMCU e DHT22

by Arduino e Cia
9 anos ago
Sair da versão mobile