Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Heute suchte ich mehrere Stunden warum mein ESP8266 keine Daten von dem DHT22 Sensor erhält. Ich prüfte die Verkabelung mehrere Male, 10k Widerstand, - alles OK. ich benutze ein kräftigeres Netzteil - keine Daten. DHT22 an 5V angeschlossen - keine Daten. ich schloss einen anderen DHT22 an - keine Daten. Schliesslich fand ich einen Thread im Arduino Forum wo exakt dasselbe Problem diskutiert wurde. jemand schrieb da man solle D2 anstatt 2 für die Pin Definition benutzen. Ich dachte D2 ist GPIO Pin 2 ... Nachdem ich im Code D2 benutzte bekam ich einen Compilerfehler dass D2 nicht definiert ist. Ich benutzte bis dahin das generic ESP8266 Board Modell im Arduino. Nachdem ich auf  NodeMCU 1.0 (ESP 12E Module)(Ich benutze NodeMCU Lua Lolin V3 Modul mit ESP8266 12E) umstellte war der compile erfolgreich. Auch bekam ich nun Daten vom DHT22.  Jetzt wurde mir klar dass man sehr genau hinsehen muss ob man die Devkit Namen oder die GPIO Pins benutzt. Vor allen Dingen ist die Devkit Nummer nicht identisch mit der GPIO Nummer. Für mein Board ist D2 GPIO pin 4. D.h. ich kann D2 oder 4 benutzen um den Pin für DHT22 zu definieren.

Fazit: Benutze entweder die vordefinierten Devboard Namen D1, D2, ... oder benutze die sorgsam nachgesehenen GPIO Pinnummern des Dev Boards welches genutzt wird. Und stelle sicher dass im Arduino das richtige Development Board ausgewählt wurde.