Ir ao conteúdo

Posts recomendados

Postado

Fala pessoal.

 

Estou usando o ESP32 para enviar dados ao Google Sheets. O código está funcionando, porém a conexão com o host cai a partir da do 5 envio e o ESP32 já não consegue mais conectar. Alguém pode me dar uma força?? 

 

Segue o código:

 

#include "HTTPSRedirect.h"
#include <WiFi.h> 

const char* ssid = "Martins07"; 
const char* password = "casa0285";

const char *ID = "AKfycbzgQ11whfJjj4Kd5Bq0LYfn13rRvCO8k5Px2nw64tNRu47r3TA0";

const char* host = "script.google.com"; 
const char* googleRedirHost = "script.googleusercontent.com";

const int httpsPort = 443; 
HTTPSRedirect client(httpsPort);

const long intervalo = 1000;
long previusMillis;

int tentativas;

String url = String("/macros/s/") + ID + "/exec?";
const char* fingerprint = "4f649cbf7ed629ad3808a904c5be664897e5da19";

void setup() { 
  Serial.begin(9600); 
  void ConectaWIFI();
  void ConectaSheets();
}  

void loop() { 
  if (millis() - previusMillis >= intervalo) {
    MantemConectado();

      int data = 10;
      enviaDados("SoilMoisture", data); 

    previusMillis = millis();
  }
}


void ConectaSheets(){

    Serial.print(String("Conectando a: ")); 
    Serial.println(host);

     if (!client.connected()){
       if(client.connect(host, httpsPort)){ 
         Serial.println("---Conectado ao host!---");
       }
       else Serial.println("---Falha ao conectar ao host!---"); 
    }

    if (client.verify(fingerprint, host)) Serial.println("---Certificado de segurança correspondente!---"); 
    else Serial.println("---Certificado de segurança não correspondente!---"); 
 
}

void ConectaWIFI(){

    if(WiFi.status() == WL_CONNECTED) return;

    else {
      //WiFi.config(local_IP, gateway, subnet, DNS);
      WiFi.begin(ssid, password);
      Serial.print("AGUARDE - Conectando ao WIFI");
      while((WiFi.status() != WL_CONNECTED)&& (tentativas < 10)){
        Serial.print(".");
        delay(500);
        tentativas++;
      }

    if(tentativas == 10 ){
      Serial.println("\nERROR - Não foi possível conectar a rede!");
      Serial.print("Reenicie o sistema!");
    }
    else{
      Serial.println("\nConectado ao WIFI com sucesso!");
      Serial.print("IP: "); Serial.println(WiFi.localIP());
      tentativas = 0;
    }
  }
}

void enviaDados(String tag, float value){ 
  
    String urlFinal = url + "tag=" + tag + "&value=" + String(value); 
    client.printRedir(urlFinal, host, googleRedirHost); 
}

void MantemConectado(){
  if (WiFi.status() != WL_CONNECTED) ConectaWIFI();
    
  if(!client.connected()) ConectaSheets();
}

 

  • 2 semanas depois...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!