DHT22 aansluiten op een Wemos D1 miniDHT22 aansluiten op een Wemos D1 mini

Altijd al een temperatuurmeter in je Domotica systeem willen opnemen? Dat kan nu heel gemakkelijk met een ESP8266 WiFi chip en een DHT11/22 temperatuur en humidity sensor!

Keuze module, shield of losse sensor?

De DHT temperatuursensoren zijn verkrijgbaar in vele vormen. Je hebt de DHT11 (blauw) en de DHT22 (wit). De DHT11 is minder nauwkeurig, ongeveer op 2 graden celsius en de DHT22 is op 0,5 graden celcius precies. De sensor is als module, shield of als losse sensor te koop, de keuze is of je een beetje kunt/wilt solderen of niet.

Bij de losse sensor zul je zelf aan de slag moeten met weerstandjes en headers om deze aan de sensor de solderen. Hierdoor heb je wel de keuze waar je ze plaatst. De losse sensor kun je op deze manier wat makkelijker wegwerken mocht dat nodig zijn.

Let op bij onderstaande aanbiedingen hoeveel stuks er geleverd worden!

DHT11 module

DHT22 module

Losse DHT11 sensor

Losse DHT22 sensor

DHT11 Shield voor Wemos D1 mini

DHT22 shield voor Wemos D1 mini

Wat je misschien opvalt is dat de losse sensoren 4 pinnen hebben en de modules 3. Dat komt omdat de 4e pin niet nodig is voor gebruik met Arduino of ESP8266.

Hoe sluit ik de temperatuursensor aan?

Je hebt de keuze uit een Arduino of een ESP8266 bordje. Omdat we de sensor in ons domotica systeem willen opnemen is de keuze voor een ESP8266 logisch omdat die WiFi functionaliteit aan boord heeft en zo verbinding kan leggen met het systeem. Gelukkig zijn de bordjes erg eenvoudig in gebruik en ook nog eens spotgoedkoop!

Wemos D1 mini. Arduino met WiFi en Micro USB

Heb je een Wemos of NodeMCU gekocht en wil je eerst wat oefenen? Lees mijn blogpost over de eerste stappen met een ESP8266 of het flashen van ESPeasy op de Wemos D1 mini.

Het aansluiten van de DHT sensor op een ESP8266 is erg eenvoudig. Je hebt nodig:

  • Wemos D1 mini,
  • 10KΩ weerstand
  • DHT sensor
  • Breadboard en draad

Maak de onderstaande schakeling:

DHT22 aansluiten op een Wemos D1 mini
DHT22 aansluiten op een Wemos D1 mini

Klaar!

De sensor werkt op 5V, wat je op de eerste twee pinnen zet. Op pin2 van de DHT sensor sluit je ook een draad aan naar een GPIO poort. Ik heb gekozen voor D4. Dit is in de Arduino software pin 2. Als je de sensor met een andere pin wilt gebruiken kijk dan hieronder welk pinnummer dat is in de software. De laatste pin van de DHT, de GND, sluit je aan op de GND van de Wemos.

Wemos D1 mini pinout
Wemos D1 mini pinout

Temperaturen uitlezen met Arduino

Sluit de Wemos aan op je PC met een micro USB kabel op een USB poort. We gaan testen of de sensor werkt. Installeer alle benodigde drivers en software zoals je kunt lezen in de startgids ESP8266 in hoofdstukken “Aansluiten en Installeren” en “Arduino IDE”.

Heb je dit gedaan, voeg dan de DHT library toe aan je sketch door Schets -> Bibliotheek gebruiken -> Bibliotheken beheren te kiezen. Zoek op DHT.

DHT library toevoegen
DHT library toevoegen

Installeer de DHT sensor library van Adafruit.

Kies vervolgens uit de voorbeelden “DHT tester”

DHTtester
DHTtester

Pas de volgende waarden aan op jouw situatie:

#define DHTPIN 2 // 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)

Geef achter DHTPIN het GPIO poortnummer op. Als je D4 hebt gekozen op een Wemos D1 mini zoals in mijn voorbeeld, kun je dit 2 laten. Heb je een andere pin gekozen, wijzig het dan in het juiste nummer volgens de pinout hierboven.

Als alles juist is aangesloten zul je steeds per regel de temperatuur en luchtvochtigheid zien binnenkomen. Om dit te integreren in Domoticz lees je verder in WiFi Thermometer toevoegen aan Domoticz

 

Wat vond je van deze blogpost?

Klik op een ster om een beoordeling te geven!

Gemiddelde score 5 / 5. Aantal stemmen: 3

Er heeft nog niemand gestemd. Wees de eerste, het kost niets en geen registratie!

Jammer dat de post niet behulpzaam was.

Laten we deze post verbeteren!

Wat zou er beter kunnen?

Door Wouter

10 gedachten over “WiFi Thermometer met ESP8266/Wemos D1 mini”
    1. Beste Wim,

      In de toelichting onder het schema en boven de pinout staat dit toegelicht:

      Op pin2 van de DHT sensor sluit je ook een draad aan naar een GPIO poort. Ik heb gekozen voor D4. Dit is in de Arduino software pin 2. Als je de sensor met een andere pin wilt gebruiken kijk dan hieronder welk pinnummer dat is in de software.

      De pinnen hebben een ander nummer in de software dan op de pcb gedrukt staan. Beetje verwarrend maar met de pinout erbij kom je er wel uit!

      Groet Wouter

  1. Bedankt, dit werkt bij mijn Wemos D1 mini pro v2.0.0 met DHT22 module (, pinout is nuttig!

    N.B. Bij mij duurde het ±40 seconden voordat de DHT22 module data terug gaf, daarvoor kreeg ik “Failed to read from DHT sensor!” Mochten anderen dit hebben: even geduld ?

  2. beste wouter wat gaat er mis

    Arduino:1.8.9 (Windows 10), Board:”WeMos D1 R1, 80 MHz, Flash, Disabled, All SSL ciphers (most compatible), 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600″

    In file included from C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.cpp:15:0:

    C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.h:36:29: fatal error: Adafruit_Sensor.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Fout bij het compileren voor board WeMos D1 R1

    Dit rapport zou meer informatie bevatten met
    “Uitgebreide uitvoer weergeven tijden compilatie”
    optie aan in Bestand -> Voorkeuren.

    met die blink test gaat alles goed

    1. Dag arie,

      Heb je de library goed geïnstalleerd? Of te wel staat dht_u. cpp op de juiste locatie?

      Voeg de DHT library toe aan je sketch door Schets -> Bibliotheek gebruiken -> Bibliotheken beheren te kiezen. Zoek op DHT.

      Wouter

  3. beste wouter
    heb dht tester sketch er op gezet en de andere aanwijzingen het zelfde gedaan
    maar krijg elke keer het zelfde probleem. weet niet waar ik dht_u. cpp kan vinden.
    B,v.d
    Arie

    1. Hoi Arie,

      Wanneer je de library hebt geïnstalleerd zou die in ‘mijn documenten / arduino / library’ moeten staan. Zie melding vorige post. Staat ie daar niet check dan even waar de ide library’s dan neer zet.

      Wouter

  4. Arduino:1.8.10 (Windows 10), Board:”WeMos D1 R1, 80 MHz, Flash, Disabled, All SSL ciphers (most compatible), 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600″

    Meerdere bibliotheken gevonden voor “DHT.h”
    Gebruikt: C:\Users\Arie
    In file included from C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.cpp:15:0:

    C:\Users\Arie Megens\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.h:36:29: fatal error: Adafruit_Sensor.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Fout bij het compileren voor board WeMos D1 R1

    Dit rapport zou meer informatie bevatten met
    “Uitgebreide uitvoer weergeven tijden compilatie”
    optie aan in Bestand -> Voorkeuren.
    dit doet ie bij elk bord

  5. Beste Wouter,

    Dank je wel voor de heldere en duidelijke uitleg! Heb hem helemaal gevold maar kom nu twee dingen tegen die ik niet weet:
    Heb je uitleg stap voor stap gevolgd, alleen zie ik nergens de temperatuur verschijnen. Jij zegt in je handleiding helemaal onderaan “Als alles juist is aangesloten zul je steeds per regel de temperatuur en luchtvochtigheid zien binnenkomen.” Waar zou ik dit moeten zien?
    Vraag twee: wat moet ik allemaal wijzigen in het blokje: moet ik hier dingen weghalen die niet van toepassing zijn? (bijvoorbeeld DHT11, ik gebruik een DHT22)
    #define DHTPIN 2 // 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)

    Alvast bedankt!

    Hartelijke groet,
    Bas

    1. Hoi Bas,

      De temperatuur verschijnt in de serial monitor van arduino ide. Je kunt de regels met DHTTYPE verwijderen die niet van toepassing zijn.

      Als alternatief, wanneer je de data naar domoticz zou willen sturen, kun je ook espeasy flashen. Daar heb ik ook een blog over geschreven.

      Succes
      Wouter

Laat weten wat je van dit artikel vindt!

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

%d bloggers liken dit: