É possível programar um ESP
pelo ar? Sim. Essa é a resposta. E o que isso significa? Que você não vai mais
gravar o microcontrolador pelo cabo USB, mas, sim, através de WiFi. Essa
possibilidade é legal por facilitar a nossa vida, pois permite que façamos a
atualização de software de um dispositivo que está fixado em um telhado, por
exemplo, sem precisar retirá-lo do lugar.
Então, neste artigo e no vídeo
abaixo vou tratar de um exemplo básico de programação OTA (Over The Air) no
ESP32 e mostro também como adaptar o mesmo projeto para o ESP8266 com uma
pequena mudança no código. Esse nosso programa foi desenvolvido na linguagem C
do Arduino IDE.
Recursos usados
2 Leds
2 Resistores de 220 ohm
ESP32
Protoboard
Código OTA
Organização do código e
códigos obrigatórios
É preciso que você tenha um
pedaço do código dentro do Setup, além de um grupo de funções que chamei de
OTA, e mais um pedacinho de código dentro do Loop. Isso porque, quando você
grava pelo ar, você tem que colocar um código dentro do ESP que permite que
esse dispositivo passe a se comunicar pela rede IP com a IDE do Arduino. Então,
ao invés de você escolher uma COM serial (porta de comunicação) você vai
escolher um IP.
Esse código, portanto, precisa
estar dentro do ESP. A parte que trato aqui exibe primeiramente três funções
que devem obrigatoriamente estar dentro do Setup. Na sequência coloco outras
quatro funções envolvendo OTA que fazem parte do código fonte vindo pelo ar.
Setup – ESP32
Nesta parte do código eu trago
os defines. O código OTA traz pedaços que você precisa colocar dentro do seu
programa e, aqui, trato de algumas partes obrigatórias. Nesta etapa também
trabalhamos os Leds, sendo que o vermelho vai confirmar quando o dispositivo
for atualizado pelo ar, por exemplo.
#include <WiFi.h> //lib para configuração do Wifi #include <ArduinoOTA.h> //lib do ArduinoOTA #include <ESPmDNS.h> //lib necessária para comunicação network #include <WiFiUdp.h> //lib necessária para comunicação network #define ledVerde 23 //este led sinaliza que o ESP foi conectado //#define ledVermelho 22 //este led é usado como exemplo de atualização const char* ssid = "robotica"; //nome da rede const char* password = "12345678"; //senha da rede void setup() { //define pino como saída pinMode(ledVerde,OUTPUT); //define pino como saída //código da atualização //pinMode(ledVermelho,OUTPUT); //inicia serial com 115200 bits por segundo Serial.begin(115200); Serial.println("Booting"); //define wifi como station (estação) WiFi.mode(WIFI_STA); //inicializa wifi WiFi.begin(ssid, password);
Setup – ESP8266
Exibo aqui as partes do código
fonte do ESP32 que devem ser modificadas para aplicação no ESP8266. Lembro, no
entanto, que deixo as duas versões disponíveis para download ao fim deste
artigo.
#include <ESP8266WiFi.h> //lib do wifi para o ESP8266 #include <ESP8266WiFiMulti.h> //lib do wifi para o ESP8266 #include <ArduinoOTA.h> //lib do ArduinoOTA #define ledVerde 23 //este led sinaliza que o ESP foi conectado //#define ledVermelho 22 //este led é usado como exemplo de atualização ESP8266WiFiMulti wifiMulti; const char* ssid = "robotica"; //nome da rede const char* password = "12345678"; //senha da rede void setup() { //define pino como saída pinMode(ledVerde,OUTPUT); //define pino como saída //código da atualização //pinMode(ledVermelho,OUTPUT); //inicia serial com 115200 bits por segundo Serial.begin(115200); Serial.println("Booting"); wifiMulti.addAP(ssid, password); Serial.println("Connecting ..."); while (wifiMulti.run() != WL_CONNECTED) { delay(250); Serial.print('.'); }
Continuação - Setup ESP32
Prosseguimos aqui com o código
fonte do OTA com definições que são padrão.
//enquanto o wifi não for conectado aguarda while (WiFi.waitForConnectResult() != WL_CONNECTED) { //caso falha da conexão, reinicia esp Serial.println("Connection Failed! Rebooting..."); delay(5000); ESP.restart(); } // A porta fica default como 3232 // ArduinoOTA.setPort(3232); // Define o hostname (opcional) ArduinoOTA.setHostname("myesp32"); // Define a senha (opcional) ArduinoOTA.setPassword("password123"); // É possível definir uma criptografia hash md5 para a senha usando a função "setPasswordHash" // Exemplo de MD5 para senha "admin" = 21232f297a57a5a743894a0e4a801fc3 // ArduinoOTA.setPasswordHash("21232f297a57a5a743894a0e4a801fc3");
Setup – Configuração da instância ArduinoOTA
Fiz algumas alterações no
código fonte original para facilitar a leitura, as quais podem ser bem
percebidas nesta etapa.
//define o que será executado quando o ArduinoOTA iniciar ArduinoOTA.onStart( startOTA ); //startOTA é uma função criada para simplificar o código //define o que será executado quando o ArduinoOTA terminar ArduinoOTA.onEnd( endOTA ); //endOTA é uma função criada para simplificar o código //define o que será executado quando o ArduinoOTA estiver gravando ArduinoOTA.onProgress( progressOTA ); //progressOTA é uma função criada para simplificar o código //define o que será executado quando o ArduinoOTA encontrar um erro ArduinoOTA.onError( errorOTA );//errorOTA é uma função criada para simplificar o código //inicializa ArduinoOTA ArduinoOTA.begin(); //exibe pronto e o ip utilizado pelo ESP Serial.println("Ready"); Serial.print("IP address: "); Serial.println(WiFi.localIP()); digitalWrite(ledVerde,HIGH); }
Funções de exibição dos estágios de upload (start, progress e end)
Trago novamente todas as
funções comentadas.
//funções de exibição dos estágios de upload (start, progress, end e error) do ArduinoOTA void startOTA() { String type; //caso a atualização esteja sendo gravada na memória flash externa, então informa "flash" if (ArduinoOTA.getCommand() == U_FLASH) type = "flash"; else //caso a atualização seja feita pela memória interna (file system), então informa "filesystem" type = "filesystem"; // U_SPIFFS //exibe mensagem junto ao tipo de gravação Serial.println("Start updating " + type); digitalWrite(ledVerde,HIGH); delay(300); digitalWrite(ledVerde,LOW); delay(300); digitalWrite(ledVerde,HIGH); delay(300); digitalWrite(ledVerde,LOW); delay(300); } //exibe mensagem void endOTA() { Serial.println("\nEnd"); } //exibe progresso em porcentagem void progressOTA(unsigned int progress, unsigned int total) { Serial.printf("Progress: %u%%\r", (progress / (total / 100))); }
Funções de exibição dos estágios de upload (error)
O mesmo fiz nesta parte do
código que trata de possível erro.
//caso aconteça algum erro, exibe especificamente o tipo do erro void errorOTA(ota_error_t error) { Serial.printf("Error[%u]: ", error); if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed"); else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed"); else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed"); else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed"); else if (error == OTA_END_ERROR) Serial.println("End Failed"); }
Loop
Por fim, exibo aqui o nosso
programa.
void loop() { //Handle é descritor que referencia variáveis no bloco de memória //Ele é usado como um "guia" para que o ESP possa se comunicar com o computador pela rede ArduinoOTA.handle(); //código de atualização /* digitalWrite(ledVermelho,HIGH); delay(1000); digitalWrite(ledVermelho,LOW); delay(1000); */ }
Seleção de porta de rede no Arduino IDE
Após a primeira gravação feita
pela porta Serial, deve-se selecionar a porta de rede conforme a figura abaixo.
Para isso é fundamental que o computador esteja conectado na mesma rede que o
ESP.
Na nossa montagem colocamos
dois resistores e dois Leds. O projeto é bastante simples e basta seguir a
imagem para reproduzi-lo. No nosso exemplo, o Led verde indica que o ESP está
conectado, enquanto o Led vermelho é usado para visualizar a atualização feita
pelo OTA, como pode ser visto no vídeo, na nossa demonstração.
Faça o download dos arquivos:
66 Comentários
E tanto OTA que me senti um idi no meio de tudo isso!
ResponderExcluirSou inscrito e sempre dou meu like.
Bom dia Fernando, muito bom seu trabalho, parabéns.
ResponderExcluirVc poderia disponibilizar o link da library ESP8266WiFiMulti.h.
Eu não estou achando e não faz parte do repositório do Arduino.
Gostaria de testar o seu código OTA.
Obrigado.
Bom dia Roberto.
ExcluirA biblioteca ESP8266WifiMulti.h é baixada junto ao módulo do ESP8266. Siga estes passos para baixar:
1. Vá em Arquivo->Preferências;
2. Em "URLs Adicionais para Gerenciadores de Placas" adicione o link http://arduino.esp8266.com/stable/package_esp8266com_index.json e clique em OK;
3. Vá em Ferramentas->Placa->Gerenciador de Placas
4. Procure por "esp8266", selecione o pacote encontrado como "esp8266 by ESP8266 Community" e clique em Instalar.
Para mais detalhes veja em "Introdução ao ESP8266" (https://www.youtube.com/watch?v=QXB5WHH9GOE&t=997s), aos 16:50 ensino como baixar o módulo.
Para evitar possíveis problemas de compilação sugiro que baixe novamente o código ESP8266_OTA.ino pois ele foi atualizado aqui no meu blog!
Um abraço!
Boa tarde Fernando. Tentei usar o seu código OTA ESP32, apresentou o seguinte erro [1432], pode me ajudar? que erro é esse?
ResponderExcluirEste comentário foi removido pelo autor.
ExcluirBoa tarde, Roberto!
ExcluirA biblioteca ESP8266WifiMulti.h é instalada junto ao módulo do ESP8266. Verifique se este módulo está instalado. O correto seria instalar este módulo na Arduino IDE.
Bom dia, Fernando.
ResponderExcluirRealmente o modulo ESP8266 não estava instalado "corretamente", reinstalei o modulo esp-8266, última versão e a biblioteca foi instalado também.
Porém ao tentar compilar o código ESP8266_OTA, aparece este erro:
ESP8266_OTA:54: error: invalid use of void expression
ESP8266_OTA:57: error: 'progress' was not declared in this scope
ESP8266_OTA:57: error: 'total' was not declared in this scope
ESP8266_OTA:57: error: expected primary-expression before ')' token
ESP8266_OTA:57: error: expected ';' before ')' token
ESP8266_OTA:60: error: 'error' was not declared in this scope
ESP8266_OTA:60: error: expected primary-expression before ')' token
ESP8266_OTA:60: error: expected ';' before ')' token
exit status 1
invalid use of void expression
Pode me ajudar?
Desde já muito obrigado.
Olá Roberto.
ExcluirO código do ESP8266 estava com erros de sintaxe nas funções OTA, já atualizei e ele está compilando sem erros agora.
Obrigado pelo comentário!
Oi Fernando.
ResponderExcluirMuito obrigado pela resposta e correção do código.
Está funcionando perfeitamente com a placa ESP8266.
Agora eu consigo fazer upload via OTA do sketch.
Excelente trabalho o que vc faz.
Parabéns.
Oi Fernando.
ResponderExcluirTentei usar o seu código OTA ESP32, ele compila sem qualquer erro pela IDE Arduino, última versão.
Mas, quando tento repassar o código via OTA para a placa ele apresentou o seguinte erro [1432], pode me ajudar? que erro é esse?
obrigado.
Este comentário foi removido por um administrador do blog.
ResponderExcluirApós gravar o código OTA pela primeira vez (usando a porta serial) no ESP a rede deve aparecer na IDE automaticamente. Lembrando que o seu computador e o ESP devem estar na mesma rede. Tente também resetar o ESP após a primeira gravação.
ExcluirOi Fernando. Fiz conforme sua orientação, apos repassar o código OTA para o ESP:
ResponderExcluirresetei o ESP32; Conectei na mesma rede wifi do computador (desliguei o cabo de rede);
Até desativei meu antivirús. Mas não deu certo, os mesmos erros, veja as mensagens.
Sending invitation to 192.168.1.6
Authenticating...OK
12:35:55 [ERROR]: No response from device
Sending invitation to 192.168.1.6 ......
Authenticating...OK
12:36:15 [ERROR]: No response from device
Sending invitation to 192.168.1.6 ......
Authenticating...OK
12:36:35 [ERROR]: No response from device
Sending invitation to 192.168.1.6
Authenticating...OK
Uploading...................................................................................................................................................................................................................................................................................................................................................................
12:36:58 [ERROR]: 1432
Sending invitation to 192.168.1.6
Authenticating...OK
Uploading...................................................................................................................................................................................................................................................................................................................................................................
12:37:10 [ERROR]: 1432
Sending invitation to 192.168.1.6
Authenticating...OK
Uploading...................................................................................................................................................................................................................................................................................................................................................................
12:37:24 [ERROR]: 1432
Sending invitation to 192.168.1.6
Authenticating...OK
Uploading...................................................................................................................................................................................................................................................................................................................................................................
12:37:41 [ERROR]: 14321432
Este erro "No response from device" geralmente ocorre quando o computador não está na mesma rede que o ESP.
ExcluirJá verificou se pode ser este o problema?
Se não, abra o prompt de comando (cmd) e digite "ping 192.168.1.6" e veja se seu computador obtém resposta do ESP.
"No response from device"
ExcluirNo meu caso, desliguei temporariamente a firewall do windows (windows7). A partir daí o upload do esp8266 e esp 32 funcionaram 100%.
Olá! Adorei o post e tudo, perfeito! Mas tenho uma duvida, e se eu não quiser utilizar um IP Local, quiser utilizar um IP remoto pela internet? por TCP ou HTTP? O que vc recomenda? Obrigado e parabens!
ResponderExcluirOlá Fernando... estou adorando suas aulas e experimentos.
ResponderExcluir, muito obrigado pela dedicação do seu tempo.
Eu tentei baixar a ino da OTA do seu blog mas quando tento abri diz que o arquivo está em formato desconhecido ou danificado.
Você pode me ajudar?
muito obrigado
Olá, Gilbert.
ExcluirTestamos o link aqui e está ok. Pode tentar denovo?
O arquivo está em .rar!
Olá, Fernando.
ResponderExcluirBaixa o arquivo normal, o problema esta na hora de abrir.
Mas de qualquer forma obrigado. Deve ser problema do meu pc.
Mas gostei muito do seu suporte, responde muito rápido.
Um grande abraço. Sou seu fã
Ola Fernando, teria como disponibilizar o INO. Infelizmente o link esta com erro.
ResponderExcluirOlá, Drielly. Desculpe. Fizemos umas atualizações ontem nos links e este ficou com erro. Pode tentar novamente, por favor? Atualizamos agora msm. Obrigado. Abraço
ExcluirBoa tarde Fernando.
ExcluirO arquivo ESP32eESP8266CodigoOTA.rar baixa entretanto não abre. Mensagem de formato invalido ou corrompido.
Obrigado e super abraço!
Olá, José Antonio.
ExcluirSubstituímos o arquivo para ver se melhora. Pode tentar novamente, por favor?
Se não der certo, me avise aqui, que lhe enviaremos por e-mail.
Abraço
Ola, bom dia.
ResponderExcluirProgramação no Ar para ESP32, na transferencia ocorre esse erro.
Sera que vc pode me ajudar.
esptool: error: argument --baud/-b: invalid arg_auto_int value: '{upload.speed}'
DÚVIDAS???
ResponderExcluirSeu ESP32 ou ESP8266 não aparece listado nas portas COM da Arduino IDE? Tente baixar o driver USB to UART seguindo os links abaixo de acordo com a versão do seu Windows:
Para o Windows 10
https://www.silabs.com/documents/public/software/CP210x_Universal_Windows_Driver.zip
Para o Windows 7/8/8.1
https://www.silabs.com/documents/public/software/CP210x_Windows_Drivers.zip
Para o Windows XP/Server 2003/Vista
https://www.silabs.com/documents/public/software/CP210x_VCP_Windows.zip
Ou acesse esta página e procure o instalador:
https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
Feito isso, o ESP8266 e ESP32 deve aparecer nas portas COM normalmente.
Abraço!
Ola, Boa noite Fernando! Primeiramente gostaria de te agradecer imensamente suas aulas estão me ajudando muito em meu projeto para a faculdade. Gostaria de ter o pdf dessa aula mas o link esta quebrado. Tem como consertar?
ResponderExcluirExcelente trabalho!
ResponderExcluirFicaria perfeito se pudesse integrar está solução com o Wi-Fi manager! É possível o Wi-Fi manager entrar caso não consiga acessar o Wi-fi?
Muito boa sua didática, agora segundo entendi , montamos nossas aplicações com esse código e poderemos ter mais flexibilidade em cada projeto em relação a atualização !
ResponderExcluirOi Fernando!
ResponderExcluirO endereço do arquivo PDF está errado: http://74.117.156.195/verify.php?arquivo=ESP32eESP8266Programa%C3%A7%C3%A3oOTA.pdf
O correto deve ser: http://download.fernandok.com/ESP32eESP8266Programa%C3%A7%C3%A3oOTA.pdf
Parabéns pelo trabalho!
Ola Fernando, muito bons e didáticos seus artigos e videos, parabens !
ResponderExcluirTenho o ESP-12 já funcionando pelo OTA, mas senti falta das informações usando o monitor serial, que só funciona conectado via USB/FTDI. Existe alguma maneira de usar o monitor serial através do OTA / Wi-Fi ? Sei que o monitor serial funciona através de porta serial , mas tem alguma saída para isso ? A mensagem que obtenho na IDE do Arduino quando tento abrir o monitor serial é : "Serial monitor is not supported on network ports such as 0.0.0.0 for the null in this release". Grato.
Alessandro, a interface do Arduino permite somente uma conexão por vez, e como o Monitor serial esta dentro você não conseguirá mesmo acessar ao mesmo tempo. Sugestão, monitore sua serial com outro SFT, por exemplo eu utilizo o Hércules: https://www.hw-group.com/software/hercules-setup-utility
ExcluirBom dia Fernando não estou conseguindo baixar o arquivo em pdf.
ResponderExcluirola Fernando tenho uma duvida uma vez que eu gravei com o CÓDIGO OTA EU SEMPRE VOU PRECISAR DE COLOCA ESSE CÓDIGO EX: COLOQUEI ESSE CÓDIGO AI O OTA VOU FAZER OUTRO PROJETO COM ESP8266 PRECISO COLOCAR AS PRINCIPAIS COISAS QUE ESTA NO OTA?
ResponderExcluirBoa tarde Fernando, se eu tiver varias placas com programação pelo ar, tem como eu deixar o ip estático? se não como eu vou saber que cada nodemcu não será programada errado? Se eu colocar um rede e usuário diferente resolve o problema?
ResponderExcluirPessoal no meu teste aqui, o ide pede a senha eu digito, mas sempre da errado. Alguém poderia me dizer o que pode ser?
ResponderExcluirNão encontrei a lib "ESPmDNS.h"
ResponderExcluir
ResponderExcluirBoa tarde Professor, tentei instalar porém fica dando este erro, o que faço?
C:\Users\TIA Portal V13\Documents\Arduino\ota_fernado_k\ota_fernado_k.ino:3:66: fatal error: ESPmDNS.h: No such file or directory
#include //lib necessária para comunicação network
^
compilation terminated.
exit status 1
Erro compilando para a placa NodeMCU 0.9 (ESP-12 Module)
Olá Prof. Fernando! Muito boa a matéria mas, não consegui entender de primeira; é meio difícil pra mim, a questão das partes do código que devem ser adicionados em um código simples. Por exemplo, eu tenho um sketch de um Relógio (MatrixClock) com 887 linhas que, se vc me permitisse, eu lhe enviaria para vc adicionar o OTA nesse sketch pra mim ter uma melhor ideia mas, para mim enviar o sketch por aqui, é muito grande não? Obrigado
ResponderExcluirFernando, a porta da rede não está aparecendo no meu, como proceder?
ResponderExcluirOlá! Você conseguiu sanar o problema? Estou com o mesmo e não consegui encontrar a solução.
ExcluirUsei outro computador e nele funcionou normalmente. Verifiquei o IDE a fim de identificar a causa e não encontrei. Para resolver removi completamente a IDE do Arduíno e instalei novamente. Problema solucionado.
ExcluirTudo bem meu Chará sou Fernando donati estou iniciando na área de reparo e reprogramação de módulos de gerenciamento eletrónicos de motores diesel minha maior dificuldade são os valores dos equipamentos pra simulação dos ecu agora com o esp32 tenho como editar as formas de ondas pra simular vários sensores e suas explicações sobre a programacao são excelente apesar de eu não saber muito sobre o assunto com a sua ajuda vai dar certo
ResponderExcluirÓtimo post.
ResponderExcluirEstou com o seguinte erro:
11:13:04 [ERROR]: Bad Answer: ERR: ERROR[4]: Not Enough Space
a porta serial
selecionada não existe ou sua placa não está conectada
Boa noite Fernando, você já configurou o Esp8266 alguma vez para atualizar automaticamente a partir de um site ou servidor na web? Gostaria poder configurar meus Esps remotamente, sem estar na mesma rede.
ResponderExcluirBom dia Fernando tudo bom ?
ResponderExcluirNo meu caso consseguir fazer o upload do firmware no meu esp32 utilizando a porta serial com sucesso, mas quando eu vou selecionar a porta de rede, ela nao aparece pra mim, o ip foi atribuindo ao esp, estou na mesma rede, ja reiniciei a ide arduino, reiniciei o computador, o ip atribuido esta pingando sem problemas, mas ah porta de rede nao abre.. Podeeria me ajudar ?
Bom dia Fernando! Tudo bem?
ResponderExcluirGostei muito do seu artigo, estou em um projeto onde tenho que fazer atualização OTA mas utilizando o IDF do ESP32, poderia me dar um dica de onde buscar ? Obrigado
Olá Fernando.
ResponderExcluirMuito boa e didática essa sua abordagem sobre OTA.
Veja a possibilidade de fazer uma abordagem sobre "Como atualizar os ESP8266 e ESP8266 somente enviando o executável, sem utilizar a IDE do Arduino".
Boa tarde, Fernando.
ResponderExcluirPrimeiramente parabéns pelos seus artigos e seus vídeos. Sua didática simples e competente está me fazendo gostar muito do ESP. Gostaria de saber se existe alguma maneira de subir os programas no ESP, sem usa a ide do arduino. Pergunto isso, porque precisamos preservar os nossos fontes, para o caso de ter que mandar alguém fazer upload nas placas.
Obrigado por seus ensinamentos.
Abcs.
Apenas o Código OTA ja Utiliza 56% da memoria do ESP32,
ResponderExcluirNão consigo por o Programa por Telegram pois falta Memoria.
como fazer nesse caso onde não tem espaço?
(Mensagem que aparece ao clicar em Verificar no Arduino IDE "Só com o Código OTA")
"O sketch usa 734358 bytes (56%) de espaço de armazenamento para programas. O máximo são 1310720 bytes.
Variáveis globais usam 43216 bytes (13%) de memória dinâmica, deixando 284464 bytes para variáveis locais. O máximo são 327680 bytes."
Olá Fernando, excelente tutorial; sou inscrito em seu canal e, tenho duas questões:
ResponderExcluir1) Para qualquer sketch com esp8266 ou esp32 que se pretenda atualizar via OTA, são os arquivos que vc menciona no tutorial, que devem ser adicionados no código Arduino?
2) Quando se quer gravar (atualizar) via OTA, vc diz: é fundamental que o computador esteja conectado na mesma rede que o ESP. OK; isso quer dizer que: se eu gravo um sketch pela primeira vez, devo colocar o SSID e a Senha do Roteador ao qual o ESP esteja conectado, ou seja, depende do local? Obrigado
Prezado Fernando, criei um projeto no VS Code, para tentar compilar e mandar pro ESP8266, mas algumas funções não estão declaradas na lib arduinoOTA que baixei. Você poderia me dizer em qual site está essa lib que usou no projeto ? Obrigado.
ResponderExcluirPerfeito, professor!
ResponderExcluirComigo deu tudo certo!
Eu tinha um projeto de leitura do volume da caixa d'água com ESP8266. Tive que subir muitas vezes no telhado para atualizar via serial rsrsrs... com o OTA não serei mais feito de OTArio. :D
Fernando boa noite, coloquei o projeto ota na minha nodemcu8266 porém no IDE não aparece na verdade na IDE nem aparece a opção por rede somente porta serial tem algo que pode ser feito ja atualizei IDE ja testei o projeto basico do IDE ja coloquei o seu, fiz de tudo e não aparece ela de jeito nenhum, estou na mesma rede, desliguei firewall, dei um ping funciona tudo ok, na placa uso NodeMCU 1.0 mais ja tentei varios o 0.9 entre outros nenhum aparece a porta de rede nem o titulo do menu vazio aparece. Poderia me dar uma luz
ResponderExcluirO meu também está com esse mesmo problema? Como resolver?
ExcluirTente instalar o python 2.7.x (caso ainda não tenha instalado), após instalar, reinicie o computador.
ExcluirOla Fernando
ResponderExcluirParabens, excelente tutorial, gostaria de saber se tem alguma forma de efetuar esse upload por um webserver atraves do codigo compilado, no esp8266 eu tenho um que funciona muito bem, nao sendo necessario sequer a IDE, basta um computador com o arquivo salvo e acessar a pagina e efetuar o upload.
Voce tem algum assim para disponibilizar?
grato e obrigado pelos conhecimentos.
Boa noite Fernando, tudo bom?
ResponderExcluirSegui todo o procedimento, mas obtive o seguinte erro:
Sending invitation to 192.168.0.10 ..........
22:45:24 [ERROR]: No response from the ESP
poderia me ajudar??
Eu tive o mesmo problema, resolvi comentando parte do código .onStart existe o primeiro IF que pega a informação ArduinoOTA.getCommand() "vai saber de onde ele pega esta informação", eu tirei este IF deixando apenas o carregamento da variável no caso type = "sketch";
Excluir.onStart([]() {
String type;
// if (ArduinoOTA.getCommand() == U_FLASH)
type = "sketch";
// else // U_SPIFFS
// type = "filesystem";
Olá Fernando.
ResponderExcluirPosso carregar o Wifimaneger com o OTA, tipo, é possível ter esses 2 recursos rodando? pois se acaso trocar o roteador facilita a reprogramação;
Este comentário foi removido pelo autor.
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluirMarcisio, funcionou para você o WiFiManager o o OTA?
ExcluirEstou justamente no ponto de aplicar o OTA em um ESP32 que já roda o WiFiManager.
Acabei de implementar, ficou show.
ExcluirFernando K, obrigado mais uma vez por tanto selecionado conteúdo.
Fiz todo o procedimento, inclusive instalei o arquivo para usb, o programa compila, identifica o IP, mas a porta na IDE do Arduino, não aparece a opção do esp32, alguém sabe como resolve?
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluirOi Fernando, parabéns pelo trabalho, sou seu seguidor há bastante tempo no youtubr. Eu estou tentando desenvolver um projeto aqui usando a ESP01 - vc sabe se ela suporta OTA? Eu estou tentando seguir o tutorial e não consigo concluir a gravação quando o chip está desconectado. Procurei alguma coisa na internet sobre isso e parece que há uma limitação no tamanho da memória disponível nessa placa. Você sabe se é isso mesmo? Obrigado!
ResponderExcluir