Bei mir laufen ESP8266 mit DHT22 und Deep Sleep ohne Probleme. Die MCU bekommt seine Stromversorgung per USB und der DHT22 haengt an 3.3V Pin von der MCU. Dann dachte ich ESP01S zu nehmen und die mit Batterie zu betreiben. Dazu habe ich den DHT22 entsprechend an GPIO2 angeschlossen. Merkwürdigerweiß habe ich fast nie Werte vom DHT22 bekommen sondern nur nan. Bis ich schliesslich rausfand dass der DHT22 immer dann funktioniert wenn ich 3.3V neuu von meinem Labornetzteil anlegte. Wenn ich aber RST auf GND lege und einen Restart des ESPs dadurch erzeuge - was auch beim Aufwachen vom Deep Sleep passiert - liefert der DHT22 nan .Offensichtlich wird der DHT22 beim Aufwachen nicht richtig initialisiert.
Daraufhin habe ich verschiedene Threads gefunden wo exakt dasselbe Verhalten beschrieben war. Lösungen waren entweder Vcc vom DHT an einen GPIO zu legen und vor dem Runterfahren in deep sleep den GPIO zu deaktivieren und beim Hochfahren ihn zu aktivieren oder einen DS18B20 zu nehmen.
Weiss jemand noch eine andere Lösung? Ich habe nun DHT22 und würde die gerne nutzen. Per GPIO DHT ein/ausschalten gefällt mir irgendwie nicht.