Remote Temperature Monitoring using GSM – AVR Project

If you want a live demo of this, please register from the link given below. (Only in Pune)
REGISTER NOW!

This project can also be implemented using a PIC18F4520 microcontroller.

Temperature monitoring have wide application in daily life. In modern day keeping an eye on temperature of places such as server rooms, hospital rooms, warehouses and green houses can help solve many problems. But with the use of normal temperature sensors, someone needs to go to the place in order to view the temperature. But with the development of GSM network, one can easily connect the sensor with GSM network, so that you don’t need to be present near the sensor in order to view the temperature. You can just pick up your cell phone and send a request to your sensor by a text message and in no time you will receive the temperature of the remote place !

The advantage is the you don’t need any kind of "special" device at the receiver end. You can use any cell phone to view the remote temperature. This reduces cost as you already have a cell phone.

Other benefit is that the range is not limited. You can be at any place in the world (with mobile coverage of course!), to request temperature data from your room.

gsm based remote temperature monitoring system

Fig. SMS Based Remote Temperature Monitoring

 

Stuffs Required and Estimate Cost

S. No. Item Image Cost
1

xBoard MINI v2.1

Contains the core AVR circuit including 5v regulator, reset, ISP. It also includes easy interface for 2×16 character LCD.

xBoard MINI v2.1
Rs.1788
2

GSM-GPRS Modem SIM300 KIT

For getting connected to the GSM Network.

sim300
Rs.1205
3

Single Pin Female to Female Burg Wires

Used to interconnect the two boards.

 

Burg Wires
Included with xBoard MINI
4

USB AVR Programmer

To upload the program to the development board.

USB AVR Programmer
Rs. 489
5

12V DC Adapter-2A-SMPS

To power up the GSM Module.

12v dc adaptor
Rs. 180
6

12V DC Adapter 1A SMPS

To power up xBoard MINI

12v adapter 1a smps
Included with xBoard MINI
    TOTAL
Rs. 3662

Construction of the Project

We have selected xBoard MINI v2.1 as the base to develop our project. This is because it has all the peripherals required for this project. It has an ATmega8 connected with a 16×2 character LCD Module, Temperature Sensor LM35 and a connector for USART. It has some other peripherals too, but they are NOT utilized in this project, they are:-

  • LED
  • IR Remote
  • Keypad
  • Real time clock and calendar.

But if you wish to extend the project they might be of great use.

Step I

Remove the MAX232 IC from the xBoard MINI.

xBoard MINI

Fig. MAX232 IC on xBoard MINI

 

MAX232 IC Removed

Fig. MAX232 IC Removed

Step II

Insert SIM Card in the GSM Module.

installing sim card

Fig. Installing SIM Card

 

installing sim card

Fig. Slide down to un-lock

 

installing sim card

Fig. Flip up the cover

 

installing sim card

Fig. Insert SIM Card

 

installing sim card

Fig. Slide up to lock

 

installing sim card

Fig. Finished !

Step III

Connect GSM Module with xBoard MINI

take three burg wires

Fig. Take 3 Burg Wires.

 

connect them to gsm module

Fig. Connect them to GSM Module Pins

 

gsm connection

Fig. Connection Done!

 

connect burg wires to xBoard MINI

Fig. Connect other end to xBoard MINI!

 

gsm connected to xBoard MINI

Fig. Finished !

Step IV

Power up the boards. Take a 12V 2A DC Adapter as shown in the image below.

12v dc adapter 2a

Fig. 12V 2A Adapter

 

gsm powered up

Fig. Connect Power Supply

Take a 12V 1A Adapter as shown in the image below.

12v 1a adapter

Fig. 12V 1A Adapter

and use it to power up the xBoard MINI development board.

power up xBoard MINI

Fig. Power up the development board.

 

GSM Based Remote Temperature Monitoring

Fig. The whole setup looks like this !

Step V

Programming the xBoard MINI

You will need a USB AVR Programmer as shown in the image below.

usb avr programmer

Fig. USB AVR Programmer.

Connect xBoard MINI with USB Programmer using a 10 PIN FRC Cable (provided with the programmer)

programming xBoard MINI

Fig. USB AVR Programmer.

Then connect the programmer with your PC using a USB Cable. On the PC launch eXtreme Burner AVR, and use it to load the hex file and transfer it to the development board. You can find the hex file of this project at the download section which is at the end of the article.

eXtreme Burner AVR

Fig. eXtreme Burner – AVR.

now the project is ready !

After burning the program, first switch on the GSM Module and then the xBoard MINI. If every thing is alright, like the SIM card is properly installed and network is present. You will see a screen like this.

gsm based temp sensor main screen

Fig. Main Screen

The home screen shows the current temperature as measured by the on board sensor of xBoard MINI. The status area shows a beating heart. This heart signifies that the program is running and everything is ok.

Now a take a mobile phone and compose a message like this :-

GET T

here GET is the command and T is the parameter.

type message get t

Fig. Compose a request

 

Which means, get the temperature.

Send this message to the sensor. I mean to the number of the SIM card inserted into the GSM Module.

As soon as a message is received by our sensor. The heart in the status area changes to a down pointing arrow as shown in the image below.

msg download

Fig. Message Being Received.

After message reception and processing, a reply is sent to the number from where the request came. On this phase the status area shows a up pointing arrow.

message sending

Fig. Message Being Sent.

In few seconds you will receive a reply from the sensor.

reply from sensor

Fig. Reply from Sensor

Open the message and you will get the temperature of the remote station !

reply from temperature sensor

Fig. Reply from Sensor

Downloads

By
Avinash Gupta
Facebook, Follow on Twitter.
www.AvinashGupta.com
me@avinashgupta.com

Facing problem with your embedded, electronics or robotics project? We are here to help!
Post a help request.

Avinash

Avinash Gupta is solely focused on free and high quality tutorial to make learning embedded system fun !

More Posts - Website

Follow Me:
FacebookLinkedInGoogle Plus

46 thoughts on “Remote Temperature Monitoring using GSM – AVR Project

  • By luis morales - Reply

    Es incredible la presentation y la buena informacion de su pagina y el tema que investigo en el momento.
    Mil gracias

    • By hafiz azeem - Reply

      plz contect with me i want to buy this project plz 03336574267

  • By RaZVaN - Reply

    Great tutorial again Avinash!
    I will try and use the GSM module to make my gates open when I get home 😀
    This is so versatile.
    Thank you again!

  • By ravi maurya - Reply

    sir i want project discription and hex file ready for gsm modem based bio medical monitoring system to monitor heart beat and body temp.using atemega32.

    • By hamed - Reply

      hi can who help me to make my projects sm900 mudel with atmega32

  • By kamran - Reply

    Hello Avinash
    Thanks again for your awesome project.

    I have two questions :
    Would you please tell me about the DIP Switch function in this circuit?

    And also,Would you please place the schematic of the circuit in this website?

    Many thanks again for your beautiful projects.
    Have a nice day.

  • By Shash - Reply

    sir can i use same code for atmega16 too..?
    can you give me its schematic plz

  • By omkar gupta - Reply

    hey,avinash …. i m doing gsm sim300d heart rate counter with temperature dispaly on lcd.So,i would like to have guidence from you on codings……please do help me as soon as possible

  • By Rajasekhar - Reply

    Hi| whether can i set temperature threshold range so that whenever the temperature reaches the particular range it should trigger sms. So that it will be very useful in server rooms and other sensitive areas wherever temperature needs to maintain.

  • By Joseph Jose - Reply

    with regard to temperature what could be the accuracy and temperature range. i dont see a temperature probe. is it suitable for out door temperature (green house farming)

  • By oyinlola - Reply

    Thanks for the upload.. is it necessary for me to get the Xboard before i can design the circuit.. or can i design it with the circuit diagram

    • By Avinash - Reply

      @Oyinlola

      Yes !

  • By Benoit de ley - Reply

    is it possible to monitor a battery with this ? and send an sms to a gsm when the battery is low? please help me

    • By Avinash - Reply

      @Benoit de ley

      Yes it is possible. The the actual implementation depend on the type of battery used.

  • By Neetu Mehra - Reply

    sir i want to get this Remote Temperature Monitoring using GSM at my work place. how i can get this and what will be the cost.

  • By Shekhar - Reply

    I need my LM35 to monitor negative temperature also, but the problem is that there is only one ADC channel left at my mcu. As data sheet says that we can measure negative temperature using LM35 with single power supply, but there are two outputs and we need to subtract them, but as i earlier said that i do have only one one adc channel hence i am using an op-amp as subtractor and giving the output to my mcu, but the output is not accurate and also varies with input supply. Can you help me or provide me some suggestions on how to tackle this problem.

  • By Debashish - Reply

    Isn’t source code required for this?

  • By OMPRAKASH CHOUDHARY - Reply

    sir how to connect mobile for GSM module in nokia x2-00

  • By OMPRAKASH CHOUDHARY - Reply

    hii…..
    avinash
    i want to help for a program lm35 sensor on based gsm module to avr ATMEGA16A
    pls send a proagram

  • By soumitra mandal - Reply

    Dear Avinashs ji,

    Thanx a lot for creating such a good tutorial site for embedded projects.

    I see this website and try to learn daily.

    I have downloaded the above project CODE and HAVE run succesfully but i am not able to open the progsm.a file located under lib folder.

    I am able to open the progsm header file.

    can you provide me the progsm main code file that can be viewed in notepad so that i can learn in deeply the gsm module code for calling, sending and receiving text.

    For your kind information I am the regular customer of your store.

    Thanks and regards

    Soumitra Mandal,
    from ADRA ,
    PURULIA dISTRICT,
    WEST bENGAL

    • By Avinash - Reply

      @soumitra mandal
      Yes sure we can give it to you.

      But do you follow us on Facebook?

      • By SOUMITRA MANDAL -

        sent you a friend request. pl. accept

        waiting for your valuable posts in fb.

        thanx

      • By Avinash -

        @SOUMITRA MANDAL
        I am talking about our Facebook page
        http://facebook.com/eXtremeElectronics

        Actually the thing is that if people are using some resources then they should also support us.

  • By SOUMITRA MANDAL - Reply

    I understood your meaning in 1st comment. so I saw that fb page also and liked that also follow it for more knowledges
    I fully agreed and like your views in last comment.

    thanks

    • By Avinash - Reply

      @SOUMITRA MANDAL,

      I didn’t asked you to join the Facebook page. I just asked whether you are following it? If NO, then it implies you do not like our contents.

      • By soumitra mandal -

        if the answers of your question is limited to the words “yes/no”.

        then the answer is yes.

      • By Avinash -

        @SOUMITRA MANDAL

        Ok so you are following the page. Thats good. But then why haven’t I noticed you liking or sharing any of the posts there? I remember names of all loyal readers very well!

  • By SOUMITRA MANDAL - Reply

    actually at maximum of my free time i see your this website in learning so that matter of liking and sharing has not been come in my mind

    i shall told you in previous that all of your contents in website are unique and high grade and i very much like that.

    only the action of clicking the like button is due from my end and i should do that in previous.

    and offcourse i shall share your valuable content to my circle.

    thanx

  • By Amit Kumar - Reply

    Sir,

    I want to purchase this project. Project report signed by guide. The guide shoud be MTech with 5 year experience or PHD.

    Kindly, let me know how do i pay the payment of this project.

  • By ross - Reply

    Hi Avinash.

    Thanks for your tutorial. I have a question for you please?

    Would it be possible to implement your project above using just an arduino uni and any gsm shield please?

  • By ross - Reply

    Hi Avinash.

    Thanks for your tutorial. I have a question for you please?

    Would it be possible to implement your project above using just an arduino uno and any gsm shield please?

    • By Avinash - Reply

      @Ross,

      Sorry but this is NOT based on Arduino.

      • By ross -

        Thanks for your prompt reply.

        Yeah I know that is not the case. I just wanted to know if using just a gsm module and an arduino uno could go a similar job?

  • By murugesan - Reply

    greetings sir, i just need a product. my requirement is a temperature switch should send a msg and switch on a motor if the surrounding reaches a preset temp. along with above msg the motor status ie running r not is also to be sent. for eg set temp is 30c when temp reach 30c a msg to be sent as “temp is 30c and motor start when temp 28c msg to be sent as “temp is 28c and motor stop”

  • By murugesan - Reply

    in xboard mini where should i connect thermocouple. thank u

  • By Tebe-ebi Justice Timiyo Binmo - Reply

    Sir, I need a help from you. I am working on a project. Title: “Wireless weather station using gsm module”. The project is to log the sensors data to data file on a computer or sd card. And if sd card is used, when i dialed the gsm module SIM number, the sensors data should appear (that is, should be downloaded on to my pc) on my pc. And if any book relating to this project, plz let me know. I was searching online and i came across this name, Avinash Gupta. I don’t know if you are the right person. Anyway, just help me. I am working with National Space Research and Development Agency (NASRDA), Nigeria. I am not saying you should do it for free but just let me know how much it will cost me. I usually use PICmicros and Mikroc. Thanks!

    • By Avinash - Reply

      @Tebe-ebi Justice Timiyo Binmo,

      This is a time consuming and large project.

    • By Oluwatobi Oyinlola - Reply

      It’s cool to see such problem solved.
      Kindly send your contact
      +2348063370311
      i have a full knowledge of Embedded System. I have design Automatic Weather station with 3 different interfaces.
      Sdcard, Embedded server, GPRS.
      Kindly contact me for details

  • By mayank - Reply

    hello sir,
    i want to program atmega8 with variable frequency and variable duty cycle so plz help me to solve dis i have tried using different registers for 8bit timers and 16bit timers too bt i didnt gt both the function at a time. so plz help me…

  • By hassan shahsavari - Reply

    its very good.
    i used your subject. thanks .

  • By Akila - Reply

    Sir i need circiut diagram for this project.. canu u please post circuit diagram??

  • By H123456789a - Reply

    sir i need this project component, how i can get?

  • By raghav - Reply

    what do i have to do if i have to change a few things in the hex file.
    Also the sensors are not downloading the sms i send And hence the code is not working properly.

    • By Avinash - Reply

      delete sms of the SIM card by putting it in a cell phone. SIM card has only 32 or so SMS space that are already full.

  • By vaishali - Reply

    sir will you please help me for the same project by using ATmega32

  • By ???????? ????????? ????????? - Reply

    Could not load C Source Code

Leave a Reply

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


7 − five =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>