Arduino + Temperature + Humidity




A simple temperature sensor using one LM35 Precision Temperature Sensor , Humidity Sensor and Arduino, so you can hookup on your future projects. The circuit will send serial information about the temperature and humidity so you can use on your computer. I have taken data from my compost. The project is related to an existing product daily dump with which anyone can convert kitchen waste into compost at home. For more details about product go to Digicompost displays the changes (change in temp, humidity) happening inside dump

Step 1: Materials

- Arduino (You can use other microcontroller, but then you will need to change the code).
- LM35 Precision Centigrade Temperature Sensor, you can get from any electronic store. Here is the DATA SHEET.
- BreadBoard.
- Humidity Sensor.
- Wires.

Step 2: Setting Up Arduino + Temperature

Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments. For more information log on to (

Connecting a temperature sensor:
The LM35 has three legs and looks like a transistor. The two outside legs are
+5v and Ground, and the middle leg develops the sample voltage.

The Analog to Digital Converter (ADC) converts analog values into a digital approximation
based on the formula ADC Value = sample * 1024 / reference voltage (+5v). So with a +5 volt
reference, the digital approximation will = input voltage * 205. (Ex. 2.5v * 205 = 512.5)

The LM35 is a precision linear temperature sensor that supplies 10mv per degree Celsius.
This means at 15 degrees Celsius, it would produce a reading of .150v or 150 millivolts.
Putting this value into our ADC conversion ( .15v * 205 = 30.75) we can get a close
approximation of the Celsius temperature by dividing the digital input count by 2.

If the LM35 were supplied by a different reference voltage (9v or 12v) we would have
to use a different conversion method. For this circuit, dividing by 2 works well.

Step 3: Connecting Humidity Sensor

There are two pins on to the humidity sensor one is for ground and other for out which goes on the pin 3 on to arduino. I have used a local made sensor for testing humidity/ moisture but one can go for SHT15 which have both temperature and humidity.

Step 4: Setting Up Code!!!

Plug in your arduino to the computer, open the application select proper port and model no. before you start any coding. After everything is done write down the code as shown below:

int pin = 5; // analog pin
int putPin = 3; // humidity
int tempc = 0,tempf=0; // temperature variables
int samples[8]; // variables to make a better precision
int maxi = -100,mini = 100; // to start max/min temperature
int i;

float humi = 0;
float prehum = 0;
float humconst = 0;
float truehum = 0;
float pretruehum = 0;
long pretruehumconst = 0;
long valb = 0;

void setup()
Serial.begin(9600); // start serial communication

void loop()

for(i = 0;i<=7;i++){

samples[i] = ( 5.0 * analogRead(pin) * 100.0) / 1024.0;
tempc = tempc + samples[i];

tempc = tempc/8.0;
tempf = (tempc * 9)/ 5 + 32;

valb = analogRead(putPin); // humidity calculation
prehum = (valb/5);
humconst = (0.16/0.0062);
humi = prehum - humconst;
pretruehumconst = 0.00216*tempc;
pretruehum = 1.0546-pretruehumconst;
truehum = humi/pretruehum ;

Serial.print(" Celsius, ");
Serial.print ("Humidity: ");
Serial.print ((long)truehum);
Serial.println ("% ");

tempc = 0;

delay(1000); // delay before loop

After everything is done click on the upload button which will take a little while to upload and when the uploading is done make sure you click on the Serial Communication to get the readings from the sensor !!!



    • Growing Beyond Earth Maker Contest

      Growing Beyond Earth Maker Contest
    • Planter Challenge

      Planter Challenge
    • Paint Challenge

      Paint Challenge

    25 Discussions


    2 years ago

    bro its working but the output is not correct when i place it in soil

    Daniel IsaiasU

    2 years ago

    veo el syh-1 conectado entre 3,3v y A3. Deberías dar mas información respecto al sensor de humedad y su código. Dislike+


    3 years ago on Introduction

    I am trying same thing using LM-35 and SYH-1 and the code is also same. But i am getting negative values of Humidity. Is it possible to obtain negative values of Humidity? But my actual humidity value in Chennai is 35%. Hereby i have attached the snapshot of it.


    4 years ago on Introduction

    will u please let me know the exact ic of humidity sensor that you have used. great instructable by the way.


    6 years ago on Step 3

    can i noe the exact model of the humidity sensor that is used?


    7 years ago on Step 3

    I am also interested to see the design of the humidity sensor. Please and thank you!


    7 years ago on Step 3

    Would like to see the design of your humidity sensor.


    8 years ago on Step 4

    Interesting code but reminds me of our crappy English education...code is just given to people without any explanation. I am a very competent coder so it's not a problem understanding your code - but arbitrary numbers such as 0.16, 0.0062, 0.00216, 1.0546 fellow coders and I call these magic numbers, because no explanation is given to them. I am sure they have a specific purpose, but an explanation would make this page 4021501258 times better


    8 years ago on Introduction

    Hi, Here is some additional information on doing this with Arduino:

    This uses a $2.50 sensor that is both temperature and humidity.


    9 years ago on Introduction

    Can I ask where you got the humidity sensor and how much it cost? Great instructable by the way.

    1 reply

    Reply 9 years ago on Introduction

    Its a local made humidty sensor i am not in the town for few days but can send you the pdf i have made. which has most of the information so let me know if you need it send me a hi mail to will send you the pdf


    Reply 9 years ago on Introduction

    Its a local made humidty sensor i am not in the town for few days but can send you the pdf i have made from it which has most of the information so let me know if you need it send me a hi mail to will send you the pdf


    Reply 10 years ago on Introduction

    ok, I read up on insulating the microchip in another instructable thanks. This arduino code that you have posted, I am not sure what the member "silver halo" meant by the code not working and needing some swaping. Can you explain the code or at least tell me what errors are in the code so I may adjust the code myself


    Reply 10 years ago on Introduction

    well if its possible for you to tell me where your facing the issue!!! then i can guide you with it !!!