• Skip to main content
  • Skip to primary sidebar

Homemade Circuit Projects

Need circuit help? Post them in the comments! I've answered over 50,000!

Blog | Categories | About | Contact | Calculators-online
You are here: Home / Sensors and Detectors / Interfacing DHTxx Temperature Humidity Sensor with Arduino

Interfacing DHTxx Temperature Humidity Sensor with Arduino

Last Updated on March 23, 2022 by Swagatam 11 Comments

In this article we are going to take a look at DHTxx series sensors, which is used for measuring temperature and humidity, both the functionality is integrated into one module.

We are going to see their specification, so that you can choose best sensor for your project and finally we are going to interface it with arduino and read the values in serial monitor of arduino IDE software.

DHTxx consist of just two series DHT11 and DHT22. The major difference between them is their specification and cost. DHT11 is low end sensor and DHT22 is high end one. DHT22 is more expensive than DHT11, but low end is decent enough for hobby project unless you do some serious measurement with you project.

DHTxx is 4-pin device one of them is NC or no connection so, we are going to use just 3-pins. Two of them are supply pins and remaining one is output pin. The sensor may look simple, but it requires a library for handling it.

The sensor consists of a thermistor, a humidity sensing device and a microcontroller embedded in a module. Their specifications are as follows:

DHT11:
• Operating voltage range is 3 to 5V.
• Its maximum current consumption is 2.5mA.
• It can measure humidity ranging from 20% to 80% -/+ 5% accuracy.
• It can measure temperature ranging from 0 to 50 degree Celsius +/- 2% accuracy.
• It refreshes it value every one second.
• Its size is 15.5mm x 12mm x 5.5mm

DHT22:
• Operating voltage is 3 to 5V
• Its maximum current consumption is 2.5mA.
• It can measure humidity ranging from 0% to 100% 2-5 % accuracy.
• It can measure temperature ranging from -40 to +125 degree Celsius +/- 0.5% accuracy.
• It refreshes it value twice every one second.
• Its size is 15.1mm x 25mm x 7.7mm
From the above raw specifications you can choose which one is optimum for your project.

DHT11 Temperature Humidity Sensor

The data pin always should be connected with a pull-up resistor from 4.7K to 10K. The above illustrated sensor came with PCB with eliminated NC pin and with pull-up resistor. But some sensors come without those feature, without the pull-up resistor the readings send to arduino will be fatally error values.

Now we are going to interface DHT sensor with arduino. Before proceeding the project download the library file form the following link:

https://arduino-info.wikispaces.com/file/detail/DHT-lib.zip

You just need these four components: DHTxx sensor, arduino Uno, USB cable, and a PC.

Just insert the sensor on analog pins of the arduino as illustrated in prototype and dump the code to arduino, open the serial monitor and you can see the readings.
Author’s prototype:

Interfacing DHTxx Temperature Humidity Sensor with Arduino
//----------------------Program developed by R.Girish-------------//
#include <dht.h>
dht DHT;
#define DHTxxPIN A1
int p = A0;
int n = A2;
int ack;
int f;
void setup(){
  Serial.begin(9600);
  pinMode(p,OUTPUT);
  pinMode(n,OUTPUT);
}
void loop()
{
  digitalWrite(p,1);
  digitalWrite(n,0);
  ack=0;
  int chk = DHT.read11(DHTxxPIN);
  switch (chk)
  {
    case DHTLIB_ERROR_CONNECT:
        ack=1;
        break;
  }
  if(ack==0)
  {
  f=DHT.temperature*1.8+32;
  Serial.print("Temperature(°C) = ");
  Serial.println(DHT.temperature);
  Serial.print("Temperature(°F) = ");
  Serial.print(f);
  Serial.print("\n");
  Serial.print("Humidity(%) = ");
  Serial.println(DHT.humidity);
  Serial.print("\n");
  delay(500);
}
if(ack==1)
{
  Serial.print("NO DATA");
  Serial.print("\n\n");
  delay(500);
}
}
//----------------------Program developed by R.Girish-------------//

Serial monitor output:

You'll also like:

  • RCWL 0516 component sideHow to Connect and Use RCWL-0516 Microwave Motion Sensor
  • ELF monitor circuitExtremely Low Frequency (ELF) Radiation Monitor Circuit
  • mainsacvoltagemonitorMake an LED AC Voltage Indicator Monitor Circuit
  • AD590 temp sensorHow to Use Diodes, Transistors, ICs as Temperature Sensors

Filed Under: Sensors and Detectors Tagged With: Arduino, DHTxx, Humidity, Interfacing, Sensor, Temperature

About Swagatam

I am an electronics engineer and doing practical hands-on work from more than 15 years now. Building real circuits, testing them and also making PCB layouts by myself. I really love doing all these things like inventing something new, designing electronics and also helping other people like hobby guys who want to make their own cool circuits at home.

And that is the main reason why I started this website homemade-circuits.com, to share different types of circuit ideas..

If you are having any kind of doubt or question related to circuits then just write down your question in the comment box below, I am like always checking, so I guarantee I will reply you for sure!

Previous Post: « Make this Touch free Faucet Circuit for Hands-free Tap Control
Next Post: Make this Digital Temperature, Humidity Meter Circuit using Arduino »

Reader Interactions

Comments

SHAIK IBRAHIM says:
February 15, 2021 at 11:41 pm

THANKS,BRO. IN EGG INCUBATOR PROJECT
DHTLIB_ERROR_CONNECT’ was not declared in this scope. HOW CAN I SOLVE THIS ERROR.

Reply
Swagatam says:
February 16, 2021 at 2:46 pm

Sorry Shaik, I tried a lot to find the solution, but I could not understand the reason….. actually I am an Arduino expert, and this code was generated by an external author.

Reply
langat says:
May 16, 2020 at 11:12 pm

hi, I am also getting error : DHTLIB_ERROR_CONNECT
was not declared in this scope.
What could be the problem?

Reply
Swagatam says:
May 17, 2020 at 8:00 am

Hi, you must find and import the dht.h library correctly, it appears to be be slightly difficult since most files do not seem to work, but you have to do it, you can refer to the following link for some info:

https://community.blynk.cc/t/correct-dht-library/30774/5

Reply
Ubaid says:
April 13, 2018 at 3:02 pm

Hello sir !

I use correct library for dht as
Above mention link.but I face error in compilation.
Void loop:
error : DHTLIB_ERROR_CONNECT
was not declared in this scope.

but i delete this line from code
(case DHTLIB_ERROR_CONNECT:)

Compilation successful.

Reply
Nitin says:
November 7, 2017 at 7:05 pm

If can we control temperature and humidity, how

Reply
GR says:
November 8, 2017 at 4:31 am

Hi Nitin,

To control temperature and humidity you need a cooling or heating device or both. To control humidity you need water vaporizer (humidifier) or dehumidifier or both. The sensor and Arduino must be programmed in a way that it triggers the mentioned climate control devices on/off to meet your set temp & humidity.
The above concept works optimally in a closed enclosure.

One example of this is a incubator: https://www.homemade-circuits.com/incubator-using-arduino-with-automatic-temperature-and-humidity-control/

Regards

Reply
Swagatam says:
November 7, 2017 at 7:34 pm

Mr.GR will reply you soon…

Reply
Ananth kamath says:
July 14, 2016 at 1:44 pm

Sir can we use LM35 or thermistor sensors instead of DHTxx?

Reply
GR says:
November 13, 2016 at 6:27 pm

Hi,ananth

you can't use LM35 in the place of DHT sensor, they both work in very different way.

Reply
Swagatam says:
July 14, 2016 at 5:04 pm

Ananth, it will depend on the specifications of the two sensors, if they match reasonably well then perhaps it could work with the proposed Arduino design.

Reply

Need Help? Please Leave a Comment! We value your input—Kindly keep it relevant to the above topic! Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

circuit simulator image



Subscribe to get New Circuits in your Email



Categories

  • Arduino Projects (92)
  • Audio and Amplifier Projects (132)
  • Automation Projects (17)
  • Automobile Electronics (101)
  • Battery Charger Circuits (84)
  • Datasheets and Components (109)
  • Electronics Theory (148)
  • Free Energy (39)
  • Games and Sports Projects (11)
  • Grid and 3-Phase (19)
  • Health related Projects (25)
  • Home Electrical Circuits (12)
  • Indicator Circuits (16)
  • Inverter Circuits (94)
  • Lamps and Lights (158)
  • Meters and Testers (71)
  • Mini Projects (28)
  • Motor Controller (66)
  • Oscillator Circuits (28)
  • Pets and Pests (15)
  • Power Supply Circuits (90)
  • Remote Control Circuits (50)
  • Security and Alarm (64)
  • Sensors and Detectors (105)
  • SMPS and Converters (32)
  • Solar Controller Circuits (60)
  • Temperature Controllers (43)
  • Timer and Delay Relay (49)
  • Voltage Control and Protection (38)
  • Water Controller (36)
  • Wireless Circuits (30)





Other Links

  • Privacy Policy
  • Cookie Policy
  • Disclaimer
  • Copyright
  • Videos
  • Sitemap



People also Search

555 Circuits | 741 Circuits | LM324 Circuits | LM338 Circuits | 4017 Circuits | Ultrasonic Projects | SMPS Projects | Christmas Projects | MOSFETs | Radio Circuits | Laser Circuits | PIR Projects |

Social Profiles

  • Twitter
  • YouTube
  • Instagram
  • Pinterest
  • My Facebook-Page
  • Stack Exchange
  • Linkedin



Recent Comments

  • Swagatam on 100 Watt Amplifier Circuit Diagram using LM12 IC
  • Swagatam on IC SG3525, SG3524 Calculator
  • Swagatam on Making an EGS002 Equivalent Board using Arduino
  • Swagatam on Making an EGS002 Equivalent Board using Arduino
  • Swagatam on Ion Detector Circuit [Static Discharge Detector]

© 2025 · Swagatam Innovations