Your new topic does not fit any of the above??? Check first. Then post here. Thanks.

Moderator: igrr

User avatar
By Sandmann86
#54564 Hey,

first of all sorry for my bad englisch.

And now my Problem. I have a ESP8266-12E and a DHT22. I soldered the Data Pin of the DHT22 to GPIO12 and used a Test Code for the DHT22
Code: Select all// Example testing sketch for various DHT humidity/temperature sensors
// Written by ladyada, public domain

#include "DHT.h"

#define DHTPIN 12     // what digital pin we're connected to

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor

// Initialize DHT sensor.
// Note that older versions of this library took an optional third parameter to
// tweak the timings for faster processors.  This parameter is no longer needed
// as the current DHT reading algorithm adjusts itself to work on faster procs.
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(115200);
  Serial.println("DHTxx test!");

  dht.begin();
}

void loop() {
  // Wait a few seconds between measurements.
  delay(2000);

  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // Compute heat index in Fahrenheit (the default)
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.print(" *F\t");
  Serial.print("Heat index: ");
  Serial.print(hic);
  Serial.print(" *C ");
  Serial.print(hif);
  Serial.println(" *F");
}


And in the Serial Monitor only appears "Failed to read from DHT sensor" . I tried other GPIO´s with the same result. A "blink" sketch on the ESP8266-12 works fine. And the DHT Code on a ESP8266-01 works perfectly.
Can anyone help and have an idea? i have tried so many things and nothing worked. i´m so confused:?
User avatar
By mrburnette
#54756 Hint: if you are trying to connect a very common sensor to an ESP8266 and having problems, look on Adafruit or Sparkfun to see if they are supporting the sensor on their ESP8266 offerings.

Here is the Huzzah and DHT22 dialog:
https://forums.adafruit.com/viewtopic.php?f=24&t=86054


Ray
User avatar
By Sandmann86
#54765 Thank you for your reply. I already used the Adafruit DHT library and used the DHTtester and it only worked with an esp8266-01. Before posting this Thread i spent a whole week testing different things and nothing worked :|

yesterday i ordered a new esp8266-12 to eliminate a hardware defect.
User avatar
By Sandmann86
#54882 my new ESP8266-12F arrived and i have the same problem.

could it be a wiring problem?

ESP8266 - USB/serial
VCC - VCC 3,3V
EN - VCC
RST - VCC
GPIO0(run) - VCC

TX - RX
RX - TX

GND - GND
GPIO15 - GND
GPIO0(flash)- GND

GPIO12 - DHT22

i saw so many pictures and the wiring was on every picture different.