Upgrade de Firmware do WiFi ESP8266 ESP-01 através do Arduino e Conversor USB Serial

Upgrade de Firmware do WiFi ESP8266 ESP-01 através do Arduino e Conversor USB Serial

A partir dos passos abaixo você vai aprender fazer a atualização / modificação de firmware do ESP8266 modelo ESP-01 no sistema operacional Windows. Para fazer upgrade de firmware da placa você poderá utilizar o Arduino Uno R3 ou um Conversor USB Serial.

Para conectar o ESP8266 ESP-01 ao computador é necessário utilizar um conversor USB serial. Caso você não possua um conversor USB serial convencional, poderá utilizar o conversor do Arduino Uno R3 como intermédio. Há vários modelos de conversores USB serial no mercado, mas para esta prática utilizei o Adaptador Conversor USB Serial TTL PL2303HX.

Para fazer atualização do ESP-01, iremos utilizar o ESP8266 Flash Download Tools:

Download ESP8266 Flash Download Tools v2.4

O firmware que vamos utilizar é o v0.9.5.2 AT Firmware:

Download v0.9.5.2 AT Firmware

Feito o download do programa e do firmware, copie ambos para a raiz (unidade C) do seu Windows.

Faça a descompactação do flash_download_tools_v2.4_150924.rar e a pasta FLASH_DOWNLOAD_TOOLS_v2.4_150924 será gerada.

O ESP-01 possui oito pinos de conexão, contudo, vamos utilizar apenas seis pinos:

img00_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Os pinos RST e GPIO2 não serão utilizados. O pino CH-PD pode estar identificado no módulo com a sigla EN, o GPIO0 pode ser identificado como IO0 e o GPIO2 pode ser identificado como IO2.

– Utilizando o conversor USB serial do Arduino Uno R3 como intermédio:

O próximo passo é conectar o ESP-01 ao computador. Caso não possua um conversor usb serial convencional, poderá utilizar o Arduino Uno R3 para fazer a ponte entre em ESP-01 e o computador. Além do Arduino Uno R3 com Cabo USB você irá precisar de:

01 – Módulo WiFi ESP8266 ESP-01
01 – Protoboard de 400 Pontos
01 – Chave Táctil / Push Button
03 – Resistor de 10KΩ
06 – Cabos Jumper macho-fêmea
07 – Cabos Jumper macho-macho

OBS: antes de montar o esquema de ligação com o Arduino, você deverá carregar um código em branco na placa para garantir que o conversor USB serial não esteja sendo utilizado. Carregue o código abaixo em seu Arduino e prossiga:

img01_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

– Utilizando o Adaptador Conversor USB Serial TTL PL2303HX:

Irá precisar do seguintes itens além do Adaptador Conversor USB Serial TTL PL2303HX:

01 – Protoboard de 400 Pontos
01 – Chave Táctil / Push Button
04 – Cabos Jumper macho-fêmea
01 – Cabos Jumper macho-macho
02 – Cabos Jumper fêmea-fêmea

img02_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

OBS: O PL2303 possui alimentação 5V e 3V3. Utilize a alimentação 3V3 e ignore o pino 5V.

Veja que em ambos os esquemas de ligação é necessário o uso de um botão que está conectado ao GND e ao pino GPIO0 do ESP-01. Para colocar o ESP-01 em modo de gravação é necessário que o pino GPIO0 inicie conectado ao GND. Portanto, sempre que for gravar um firmware / código em qualquer módulo da linha ESP8266, lembre-se de conectar o GPIO0 ao GND antes de inserir o cabo USB no computador. Caso não vá gravar um firmware / código no módulo, não há necessidade de conectar o GPIO0 ao GND.

Após efetuar um dos esquemas de ligação acima, basta manter pressionado o botão na protoboard e conectar o cabo USB (ao Arduino e ao computador) ou o conversor USB serial ao computador. Após conectado solte o botão, pois o ESP-01 já vai estar em modo de gravação.

Em seguida acesse o ‘Painel de Controle’ do Windows, ‘Gerenciador de Dispositivos’, e na janela que abrir vá até ‘Portas (COM e LPT)’. Você poderá ver o dispositivo conectado e o número da porta COM em que ele foi alocado. A título de demonstração, conectei tanto o Arduino quanto o conversor USB serial no computador e na imagem abaixo você pode ver como os dispositivos aparecem no gerenciador:

img03_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Se estiver utilizando o PL2303HX e o mesmo não estiver sendo reconhecido pelo o Windows, acesse a postagem Conversor USB Serial TTL PL2303HX – Instalação no Windows 10, veja como resolver e em seguida retorne para continuar.

Agora vá até a pasta FLASH_DOWNLOAD_TOOLS_v2.4_150924 e execute o ESP_DOWNLOAD_TOOL_V2.4.exe:

Com o programa aberto, marque a opção ‘SpiAutoSet’ para que o programa selecione de forma automática o tamanho correto do flash e a frequência do cristal, selecione a porta COM, selecione o ‘BAUDRATE’ 115200, desmarque qualquer checkbox marcado em ‘Download Path Config’ e clique em ‘START’:

img05_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Se a comunicação com o ESP-01 estiver OK, você verá informações em ‘DETECTED INFO’, ‘MAC Address’ e a escrita ‘SYNC’:

img06_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

OBS: caso o programa retorne ‘FAIL’, confira se selecionou a porta COM correta. Se o erro persistir, feche o ESP_DOWNLOAD_TOOL_V2.4.exe e repita todo o procedimento, desde o pressionamento do botão para colocar o ESP-01 em modo de gravação.

Em ‘Download Path Config’ você deverá selecionar o arquivo ‘v0.9.5.2 AT Firmware.bin’ baixado. Clique nas ‘…’ do primeiro campo e na janela que abrir navegue até a pasta em que colocou o firmware e selecione o arquivo ‘v0.9.5.2 AT Firmware.bin’. No campo ‘ADDR’ preencha com o offset 0x00000 e marque o checkbox para concluir. Ao terminar, você terá as configurações conforme a imagem abaixo:

img07_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Agora clique em ‘START’ para o processo iniciar:

img08_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Aguarde o processo de upgrade de firmware ser concluído:

img09_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Terminado o processo de upgrade de firmware, feche as janelas do ESP_DOWNLOAD_TOOL_V2.4, desconecte o cabo USB ou o conversor USB serial do computador e conecte novamente (SEM PRESSIONAR O BOTÃO NA PROTOBOARD).

Agora abra a IDE do Arduino para que você possa enviar comandos AT a placa para verificar se o firmware foi atualizado corretamente e se a placa está respondendo aos comandos.

Com a IDE aberta acesse o menu ‘Ferramentas’ e em seguida na opção ‘Porta’ selecione a porta COM. Note na imagem abaixo que selecionei a porta COM2:

img10_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Você NÃO precisa selecionar a placa na IDE, pois isto é irrelevante para o envio de comandos AT.

Abra o ‘Monitor Serial’ da IDE e no rodapé confira se a velocidade está definida em 115200 e se ‘Ambos, NL e CR’ está selecionado:

img11_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Agora digite o comando ‘AT’ (sem aspas) e dê ‘ENTER’ ou clique em ‘Enviar’. Se a conexão estiver funcionando você terá como retorno a mensagem de ‘OK’:

img12_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

OBS: se ao enviar o comando NÃO receber nenhum retorno ou receber uma série de caracteres aleatórios, altere a velocidade de 115200 do monitor serial para 9600 e envie o comando novamente.

No ‘Monitor Serial’ digite o comando ‘AT+GMR’ (sem aspas) e dê ‘ENTER’ ou clique em ‘Enviar’. Se receber como retorno as informações conforme a imagem abaixo, então seu ESP-01 foi atualizado com sucesso:

img13_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

Caso queira alterar o baudrate de comunicação com o ESP-01 para 9600, digite na IDE o comando ‘AT+CIOBAUD=9600’ (sem aspas) e dê ‘ENTER’ ou clique em ‘Enviar’. Se receber como retorno as informações conforme a imagem abaixo, então a velocidade de comunicação foi alterada:

img14_upgrade_de_firmware_do_wifi_esp8266_esp-01_atraves_do_arduino_e_conversor_usb_serial

OBS: ao mudar o baudrate do ESP-01, você deverá mudar também a velocidade de 115200 para 9600 no rodapé do ‘Monitor Serial’. Em seguida envie novamente o comando ‘AT’ (sem aspas) e dê ‘ENTER’ ou clique em ‘Enviar’. Se receber o ‘OK’ como retorno, então a comunicação está funcionando.

Vale ressaltar que, caso pretenda utilizar o ESP-01 para atribuir WiFi ao Arduino, a velocidade de comunicação ideal é de 9600 bauds.

Ao meu ver, o v0.9.5.2 AT Firmware é a versão que melhor se adequou ao uso do ESP8266 ESP-01 em conjunto com Arduino e bibliotecas responsáveis por gerenciar conexões WiFi. Inclusive, no uso do Blynk com o ESP-01 e Arduino, esta versão do firmware foi uma das pucas que consegui fazer a conexão com o servidor.

Gostou desta postagem? Então deixa seu comentário, dúvida ou sugestão aí embaixo!

Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop

Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.

Obrigado e até a próxima!

Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.

Upgrade de Firmware do WiFi ESP8266 ESP-01 através do Arduino e Conversor USB Serial
6 votos / Média de avaliação: 5 / Pontuação: 100%


Postagem anterior:
Próxima postagem:
Postagem feita por

Formado em Engenharia da Computação pela Faculdade Presidente Antônio Carlos, fundador e CEO da MasterWalker Electronic Shop. Se preocupa com o aprendizado dos seus clientes e daqueles interessados em aprender sobre Arduino e plataformas embarcadas em geral.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *