A CoAP Based Temperature Sensor

A CoAP Based Temperature Sensor

This is a simple project, where we have a board that measures the temperature and sends it to a CoAP server for storage in database. In this project, we have used basic hobby grade components that you will find in your junk box or at online hobby stores.

CoAP Based Temperature Sensor Board

CoAP Based Temperature Sensor Board

The board has 3 core components – the temperature sensor, a GSM board and a Netduino board.

We have used DS18B20 as the temperature sensor. For the GSM board, we used a SIM900 based TTL board available from www.rhydolabz.com. And finally, we used a Netduino board to run the logic and the CoAPSharp library.

Another problem we had to fix was that the temperature sensor needed about 5V, Netduino needs about 7.5V – 9V and the GSM board needs about 12V, 2A. Therefore, we used a 12V, 2A power supply, and from that, we created a 9V supply using LM 7809 and a 5V supply for the temperature sensor using a zener diode.

The 3 layers that you see in the picture, contain the following:

1. Bottom Layer – The Netduino board
2. Middle Layer – The GSM board
3. Top Layer – The temperature sensor and the power supplies

Temperature Sensor Schematic

Temperature Sensor Schematic

The Netduino board reads the temperature using the one-wire protocol. It also controls the GSM board and sends data using TX/RX pins (UART). The GSM board is controlled using AT-commands.

The way this works, is that the Netduino first measures the temperature, then, using the GSM board, it opens a transparent data connection over UDP. The measured value is then sent over the GSM network using the CoAPSharp library to another CoAP server, which in turn stores the value.

Temperature Sensor Setup

Temperature Sensor Setup

Happy CoAP-ing !

 

4 Responses so far.

  1. Bill says:

    Is the source available?

Leave a Reply

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

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=""> <strike> <strong>