28 janeiro 2017

Upgrade de firmware do ESP8266 ESP-07

O ESP-07 é mais um módulo da família ESP8266, e neste tutorial vamos mostrar como realizar o upgrade de firmware do ESP8266 ESP-07 caso o seu módulo precise de uma atualização ou não esteja funcionando corretamente e você queira "zerar" o ESP.

ESP8266 ESP-07

O módulo do link acima acompanha um adaptador, que facilita a conexão se você deseja usar o ESP-07 para prototipagem e/ou em uma protoboard:

Adaptador ESP8266

O módulo wireless ESP8266 ESP-07


O ESP8266 ESP-07 é um módulo que usa o CI ESP8266 da Expressiff (datasheet), e tem 9 portas de I/O (GPIO) que podem ser usadas como portas digitais e podem ser configuradas como interface I2C, PWM e SPI, além do pino ADC (analógico).

Pinagem ESP8266 ESP-07

O ESP-07 já vem com uma antena cerâmica na placa, mas se você preferir pode usar o conector para antena U.FL e conectar um cabo pigtail U.FL e uma antena 2.4GHz com conector SMA, melhorando o alcance do módulo.

ESP8266 ESP-07 Frente e Verso

Conexão FTDI e ESP-07


Muitas vezes temos a necessidade de regravar o firmware do módulo, seja por algum comportamento estranho do mesmo, ou simplesmente para colocar uma versão mais atualizada.

Para atualizar o ESP-07, vamos usar praticamente o mesmo esquema que foi utilizado no post Gravando firmware NodeMCU no ESP8266 ESP-01, usando um módulo FTDI para realizar a comunicação com o ESP-07. Note que no ESP-07 o pino GPIO15 está ligado ao GND.

Circuito ESP-07 e conversor FTDI

Para gravar o firmware, o pino GPIO0 deve estar conectado ao GND, e devemos desconectá-lo para que o mesmo entre em modo de programação. Não se esqueça que a alimentação do ESP8266 é de 3.3V, assim, se o seu módulo FTDI não possuir um pino de saída nesse valor de tensão, será necessário alimentar o módulo ESP com uma fonte externa.

Upgrade de firmware do ESP-07


Com o circuito montado, vamos à parte de upgrade do módulo ESP8266 ESP-07, começando pelo download do ESP8266 Flash Download Tool (estamos usando a versão 3.4.4). É uma ferramenta que não precisa de instalação, bastando que você descompacte a pasta.

Precisamos também do firmware AT do ESP8266, que você encontra clicando neste link, que já faz o download do arquivo zip com o firmware, bastando descompactar no local de sua preferência.

Apenas recapitulando então, você terá 2 pastas: uma com o ESP8266 Flash Download Tool e outra com o firmware AT do ESP8266.

Entre na pasta do Flash Download Tool e execute o arquivo ESPFlashDownloadTool_v3.4.4.exe, clicando em ESP8266 Download Tool na tela inicial:

Tela Inicial Flash Download Tool

Com a ferramenta carregada, será exibida a seguinte tela:

Tela inicial ESP8266 Download Tool

Na parte superior da tela, em Download Path Config, vamos selecionar os seguintes arquivos do firmware que foi baixado:

...\ESP8266_NONOS_SDK\bin\boot_v1.5.bin
...\ESP8266_NONOS_SDK\bin\esp_init_data_default.bin
...\ESP8266_NONOS_SDK\bin\blank.bin
...\ESP8266_NONOS_SDK\bin\at\512+512\user1.1024.new.2.bin

Preencha também, no lado direito, o endereço de gravação do firmware na memória do ESP8266 conforme imagem abaixo e selecione a opção SpiAutoSet. Sua tela ficará assim:

Firmware - Path

Na parte inferior, selecione a porta correspondente ao adaptador FTDI que está sendo utilizado (no nosso caso, porta COM8), a velocidade de 115200 e clique em START para que o processo de upgrade tenha início. 

Caso tudo esteja ok, os endereços MAC do ESP-07 serão mostrados no Download Panel, na parte inferior do programa. Acompanhe o progresso de upgrade pela barra azul no rodapé:

Firmware Update

Após o update, desconecte o pino GPIO0 do GND, reinicie o módulo e carregue um programa de comunicação serial, usando o comando AT+GMR para verificar a versão do firmware que foi gravado:

Teste firmware

7 comentários:

  1. TUNIOT é um gerador de código de bloco para NODEMCU.
    http://easycoding.tn/

    ResponderExcluir
  2. Você pode passar o seu email? gostaria de tirar algumas duvidas...

    ResponderExcluir
  3. Boa tarde!
    Excelente post.
    Atualizei e configurei esp07 no termite 3.2.
    Comando AT+GMR resulta "ERROR" em 115200.
    Sabe o que poderia ser?
    Grato.

    ResponderExcluir
    Respostas
    1. OLA, ESTOU COM O MESMO PROBLEMA APÓS A ATUALIZAÇÃO.
      PESSOAL DO SITE, NOS AJUDE POR FAVOR.

      Excluir
    2. estou com o mesmo problema após a atualização. Pessoal do site, por gentileza, nos ajudem

      Excluir
  4. Pessoal, UFAAA , Descobri e espero ajudar.
    O problema esta no comunicador serial, precisa ser configurado para enviar um caracter de final de linha.

    Se estiver usando o TERMITE como eu, basta ir em SETTINGS e deixar marcado a flag APPEND CR-LF

    Espero ter ajudado, o meu funcionaou depois disso :)

    ResponderExcluir