Help with DHT11 and Power

Hi,

I’m going insane trying to work this out and I’m hoping someone can help.

I have an Arduino (call it Arduino A) with a LCD Shield being powered by a USB cable from a PC. That works just fine but I want to display the results from the DHT11 (Temperature and Humidity Sensor).

DHT11 has 4 pins, + / data / nc / - with the data one connected to Arduino A. The LCD shield makes is difficult to then power this sensor and eventually I want to hook up some other sensors, so I bought a Ywrobot Power adapter board. This can provide both 3.3v and 5v and the DHT11 works with 3.3v-5v.

Whilst I was waiting for the Ywrobot power adapter board to arrive, I had a spare Arduino (let’s call it Arduino B), which I used to just power the DHT11.

I hooked the DHT11’s + to the 3.3v on Arduino B and the - to Ground on Arduino B. This works great, but I’m using two Arduinos with the second one just doing power. The Ywrobot power arrived and I set it up on a breadboard. I tested it to make sure it was supplying power with an LED. This worked, but when hooking the DHT11’s + and - up to the breadboard, nothing, it didn’t work.

So, I don’t understand why the DHT11 would work when powered by an Arduino but not by the Ywrobot power adapter, which clearly is providing power.

Any ideas ?

poweradapter-works.jpg

lcdanddht11work-onlywhenpoweredbyarduino.jpg

Is that a led, directly on the 5V power on the breadboard ?

Do you know this tutorial ? http://learn.adafruit.com/dht

I would use 5V and 10k pull-up resistor. Did you use a pull-up resistor ?

Do you have a multimeter to check all the voltages ?

I think that if the DHT is powered by 3.3V the data line will also give 0 or 3.3V which cannot be read by the 0/5 V Arduino.

Not using a resistor ... when I did try that the humidity value came back as gobbledygook. Seems to work fine without it.

One thing I noticed with the multimeter, is that from the Arduino's 3.3v outputs 3.42v and the 3.3v from the Ywrobot power adapter outputs 3.27v

Both the Arduino and the Ywrobot power adapter both output 4.95v from their 5v

The DHT11 is suppose to work with a range of 3.3v-5v so I'm guessing the 3.27v is not enough, but even when powering it with 4.95v I get nothing.

Use a 10k pull-up resistor and use 5V. Can you make a photo of that and upload it, to show how it is connected ?

No worries … here’s 3 pictures

  1. Using the 5v rail off Ywrobot power adapter and 10k resistor on the data

  2. Same as 1 but with a multimeter showing there is 4.95v coming from power adapter

  3. Off the 3.3v on the Arduino with the LCD Shield

5v-with-res.jpg

5v-with-res-mm.jpg

off-arduino.jpg

Okay had a bit more of a play around and found that the Arduino with DHT11 requires 0.2 amps.

When the Ywrobot is powered by either a 9v battery or a 9v power pack (500 mA) it only provides 0.1 amp.

When the Ywrobot is powered by a USB male A to A cable it provides the 0.2 amps and the sensor works.

So, I'm speculating that the voltage regulator on the Ywrobot when given 9v then drops the amps, whereas when the Ywrobot is given 5v, the voltage regulator isn't needed and so doesn't drop the amps.

Where is the DHT11? How about pulling the ywrobot gizmo out, and running 3 jumpers to the Arduino? The extra wires are confusing. You need a ground connection to that - pin on the DHT11, put 5 the Volts to the positive, connect the data line to an input. I think the DHTLIB calls for pin 2? Get it to work with a single voltage source first. I have the same LCD shield and DHT11, it works with the USB power.

Personally I have 2x DHT22 powered by Arduino's 3.3V, and with a 4.7K pull up resistor, working really good.

The DHT11 requires 2.5mA