ESP8266 ESP-01 DHT11

Hola, me encuentro comenzando a utilizar el ESP8266 ESP-01 junto con un DHT11, tengo algunas dudas que quizas puedan responder. el ESP--01lo programo a travez del arduino sin el Chipset, no tuve inconvenietes y pude conectarlo a las redes wifi e incluso enviar informacion a servidores, el problema es que no logro hacer funcionar el DHT 11 en el ESP-01, siempre me aparece el valor 255 de temperautra y humedad, supongo que es un fondo de escala, el dht 11 me funciona bien con el arduino. Puede ser esto porque estoy utilizando tanto para el ESP-01 como para el DHT11 la fuente del arduino? es necesario si o si descargar algun firmware en el esp-01? como se si debo hacerlo?.

Muchas Gracias

Hola Mardefondo,

¿Podrías pasarnos el código que estás utilizando?

Saludos

Adjunto el codigo.

#include "DHT.h"        // including the library of DHT11 temperature and humidity sensor
#define DHTTYPE DHT11   // DHT 11

#define dht_dpin 0
DHT dht(dht_dpin, DHTTYPE); 
void setup(void)
{ 
dht.begin();
Serial.begin(115200);
Serial.println("Humidity and temperature\n\n");
delay(700);

}
void loop() {
  float h = dht.readHumidity();
  float t = dht.readTemperature();         
  Serial.print("Current humidity = ");
  Serial.print(h);
  Serial.print("%  ");
  Serial.print("temperature = ");
  Serial.print(t); 
  Serial.println("C  ");
delay(800);
}

Gracias por pasarlo. Es extraño, el código parece correcto. Por probar, podrías utilizar el GPIO2 e invertir el orden de la línea "dht.begin();" y "Serial.begin(115200);".

Por cierto, ¿cómo alimentas el ESP01?

Saludos

Hola, El ESP-01 lo tengo alimentado con los 3.3vcc que salen de la placa arduino al igual que el dht11, también lo alimento con los mismos 3.3vcc y la placa la tengo conectada a un transformador de 9VCC.

Gracias por la colaboracion

Creo que @Mardefondo se pasó por altos las normas del foro, que tal una leída y luego editas ese post"2 con código mal posteado.

Acá esta tu error

El ESP-01 lo tengo alimentado con los 3.3vcc que salen de la placa arduino al igual que el dht11, también lo alimento con los mismos 3.3vcc

El ESP01 como cualquier ESP salvo el ESP32 consume 150 a 200mA en modo RX/TX.
Dirás pero cómo si me ha funcionado? Bueno a veces lo hace a regañadientes... pero no es para nada aconsejable.

Tendrás que buscar un AMS1117 regualdor LDO 5 a 3.3V y alimentarlo debidamente o bien con una fuente STEP DOWN.

Existen otros reguladores LDO que puedes usar que tienen otros nombres.

Muchas Gracias voy a probar ya compre una fuente, aviso las novedades.

Listo, ya lo edité yo, pero el próximo por favor ten presente de postearlo debidamente.
Observa como debe verse un código posteado con etiquetas. Vuelve a mirar el post#2.

Buenas, disculpen que siga con el tema pero probé con una fuente para protoboard de 5 y 3.3 Vcc, alimentando el ES-01 y el sensor de humedad con la fuente, mientras que el arduino para hacer el tx/rx del esp lo alimento desde el USB de la PC pero referenciando la masa con la masa de la fuente. El sensor mide 255 % de humedad y 255 °C de temperatura constantemente es como que esta fuera de escala, cualquier cable que le desconecto al sensor hace que mida 0 y 0 por lo que señal esta enviando. alguien tiene alguna idea? aclaro que ya probe el mismo sensor con la misma conexión con el arduino solo y funciona bien y también probé con otro ESP-01y hace exactamente lo mismo. Agradecería cualquier indicio.

Gracias

probé con una fuente para protoboard de 5 y 3.3 Vcc, alimentando el ES-01 y el sensor de humedad con la fuente

ESP y Sensor a 3.3V. no puedes enviarle 5V al ESP jamás!!

No tolera entradas de 5V.
Verifica los pines GPIO0 y GPIO1 a ver si estan bien, solo prueba un blink de esos pines y mide la salida a ver si lees 3.3V o algo cercano.

Gracias, siempre estoy trabajando con 3.3VCC no tengo nada conectado a 5VCC. los GPIO funcionan bien porque probe un codigo de intermitencia de un led y funciona perfectamente. No se si el ESP requiere que le descargue algun firmware en especial.

No se si el ESP requiere que le descargue algun firmware en especial.

No. No hay nada especial para descargar.

Tal vez haya dado con el problema.
Según el foro en inglés, hay un problema con las librerías DHT >1.2 las anteriores no tienen ese problema con el ESP.

La solución es simple y debes corregir algo en la librería

Primero confirma que hablamos de la misma librería DHT-sensor-library de Adafruit

Ahora en este comentario #48 se sugiere hacer una modificación a la librería

And the solution is as simple as commenting out two lines (line 155 and 156 of the current library), and avoiding having the processor force the data line high on the DHT22:

// End the start signal by setting data line high for 40 microseconds.

digitalWrite(_pin, HIGH);
delayMicroseconds(40);

Debes probarlo si hablamos de la misma librería y si no te recomiendo que pruebes con esta.

Voy a hacer la prueba con esa libreria y esa modificacion y aviso las novedades.

Muchas Gracias

Simpre que tengas un problema como el tuyo, coloca un enlace de tu librería para estudiar el problema porque como veras se trata de un problema de timming ya que el DHT tiene un protocolo especficio y como el ESP es muy rápido ese timming falla por lo visto, dicho a grandes rasgos.