Problemas con Wifi para conexión con ESP32 y Sensor MQ-7

Cuando ejecuto el codigo y abro el monitor serial me arroja el siguiente error:
(242349) wifi:sta is connecting, return error

Por favor necesito ayuda para solucionarlo, no me permite mostrar los datos del sensor.

Les comparto el código que estoy trabajando, tengo una ESP32 con un sensor MQ7 para detectar monóxido de carbono, la idea es poder graficar los datos con ThingSpeak

#include <WiFi.h>
#include <MQ7.h> 
#include <Wire.h>
#include <ThingSpeak.h>

#define A_PIN 33 
#define VOLTAGE 5.0

const char* ssid = "MOVISTAR_55725475_PLUS"; 
const char* password = "77096508";
const char* myWriteAPIKey = "3OLC6B160OBUXWN4"; 
unsigned long myChannelNumber = 1;

WiFiClient client;
MQ7 mq7Sensor(A_PIN, VOLTAGE); 

unsigned long lastTime = 0;
unsigned long timerDelay = 20000; 

void setup() {
  Serial.begin(115200);
  WiFi.mode(WIFI_STA);
  ThingSpeak.begin(client); 
}

void loop() {
  if ((millis() - lastTime) > timerDelay) {
    if (WiFi.status() != WL_CONNECTED) {
      Serial.print("Attempting to connect");
      while (WiFi.status() != WL_CONNECTED) {
        WiFi.begin(ssid, password);
        delay(5000);
      }
      Serial.println("\nConnected.");
    }

    float airQuality = mq7Sensor.readPpm(); 

    if (airQuality >= 0) { 
      Serial.print("Air Quality: ");
      Serial.print(airQuality);
      Serial.println(" PPM");

      int x = ThingSpeak.writeField(myChannelNumber, 1, airQuality, myWriteAPIKey);

      if (x == 200) {
        Serial.println("Channel update successful.");
      } else {
        Serial.println("Problem updating channel. HTTP error code " + String(x));
      }
    } else {
      Serial.println("Invalid air quality reading."); 
    }

    lastTime = millis(); 
  }
}

Cuando ejecuto el código me lo carga sin problemas:

El Sketch usa 931928 bytes (71%) del espacio de almacenamiento de programa. El máximo es 1310720 bytes.
Las variables Globales usan 46580 bytes (14%) de la memoria dinámica, dejando 281100 bytes para las variables locales. El máximo es 327680 bytes.
esptool.py v4.8.1
Serial port COM3
Connecting....
Chip is ESP32-D0WD-V3 (revision v3.1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: f8:b3:b7:3c:13:04
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00007fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x000f3fff...
Compressed 24976 bytes to 15952...
Writing at 0x00001000... (100 %)
Wrote 24976 bytes (15952 compressed) at 0x00001000 in 0.6 seconds (effective 348.2 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 146...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.1 seconds (effective 426.3 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 609.2 kbit/s)...
Hash of data verified.
Compressed 932048 bytes to 597484...
Writing at 0x00010000... (2 %)
Writing at 0x0001c5d5... (5 %)
Writing at 0x00026aed... (8 %)
Writing at 0x00033181... (10 %)
Writing at 0x0003c6a4... (13 %)
Writing at 0x00042439... (16 %)
Writing at 0x00047a8a... (18 %)
Writing at 0x0004d1a4... (21 %)
Writing at 0x0005277a... (24 %)
Writing at 0x00057e75... (27 %)
Writing at 0x0005d2a7... (29 %)
Writing at 0x000626de... (32 %)
Writing at 0x00067e5d... (35 %)
Writing at 0x0006d39a... (37 %)
Writing at 0x00072d9e... (40 %)
Writing at 0x00078512... (43 %)
Writing at 0x0007d683... (45 %)
Writing at 0x000829b8... (48 %)
Writing at 0x00088365... (51 %)
Writing at 0x0008dd9a... (54 %)
Writing at 0x00093845... (56 %)
Writing at 0x000992b4... (59 %)
Writing at 0x0009e8e3... (62 %)
Writing at 0x000a3bbf... (64 %)
Writing at 0x000a911a... (67 %)
Writing at 0x000ae3e4... (70 %)
Writing at 0x000b3ac3... (72 %)
Writing at 0x000b901a... (75 %)
Writing at 0x000be6b4... (78 %)
Writing at 0x000c47e9... (81 %)
Writing at 0x000ca036... (83 %)
Writing at 0x000d16b0... (86 %)
Writing at 0x000daf78... (89 %)
Writing at 0x000e0222... (91 %)
Writing at 0x000e5483... (94 %)
Writing at 0x000eada7... (97 %)
Writing at 0x000f0c3b... (100 %)
Wrote 932048 bytes (597484 compressed) at 0x00010000 in 9.6 seconds (effective 775.6 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

Pero cuando abro el monitor serial me arroja este error:

E (137329) wifi:sta is connecting, return error
E (142330) wifi:sta is connecting, return error
E (147331) wifi:sta is connecting, return error
E (152332) wifi:sta is connecting, return error

Por favor si alguien puede ayudarme les agradecería mucho, no he podido avanzar.

¿Cuál código? No vemos ningún código.

Adjunta el código y los errores de acuerdo a las normas.

1 Like

Hola muchas Gracias por tu observación, ya compartí el código con todos los detalles, agradezco tu soporte si puedes ayudarme.

Moderador:
Por favor, lee las Normas del foro y publica/edita tu código/error usando etiquetas de código, no se permiten capturas ni para códigos ni para errores. Editar no es dejar lo que tienes y pone un nuevo post. Lo aclaro porque muchos hacen eso.
Ve a edición, luego selecciona todo el código que has publicado/editado, lo cortas y click en (<CODE/>)




Edita el título sin usar mayúsculas. Usar mayúsculas es como gritar. No queremos que eso pase, tal vez no lo supieras pero en los foros no se usa mayúsculas salvo para enfatizar algo y este no es el caso.
Y finalmente mal la sección donde posteaste tu problema, asi que la muevo a Microcontroladores.

Ahora que responda no invalida todo lo que te he pedido.
Como alimentas el MQ-7, espero no lo hagas con el propio ESP32 no?
La resistencia calefactora del MQ consume mucho para cualquier micro.
Dicen sus datos que

Especificaciones técnicas

  • Voltaje de Operación: 5V DC
  • Voltaje de Calentamiento: 5V (alto) y 1.4V (bajo)
  • Resistencia de carga: regulable
  • Resistencia de calentamiento: 33 Ohm
  • Tiempo de Calentamiento: 60s (alto) 90s (bajo)
  • Consumo de Resistencia: aprox. 350mW

o sea se esperan I = 5 V/33 ohms = 151mA que son tolerables para un USB por ejemplo 2.0 que permite 500mA y 900mA para el 3.0
Sin llegar a esto yo he tenido siempre problemas con los ESP8266 y los ESP32 por culpa de malos cables asi que si algo que ya consume 150 le agregas otros 150mA lo que va a pasar es que se va a resetear a cada momento y justo en el instante de mas consumo, que es cuando intenta conectarse.
Solución: cable corto, de calidad.
O alimenta el sensor con 5V de forma distinta a como alimentas el ESP32, compartiendo GND claro.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.