Mini Temperature Logger

Based on Arduino Leonardo this extended thermometer brings some neat features to temperature measuring :)

Similar projects worth following
This device was supposed to be a project for a class but I decided to take it further. This project is in a pretty advanced state. I have written about 80% of the functionality and created a functional prototype based on Arduino Leonardo clone. I have sent the Gerber files to the factory and got hands on actual boards- Now they just need to be soldered.

Point of this devices existence is to have a nice thermometer with some extended functions. Here are some parameters/ facts about the project/ device:

-Hardware is created using Altium Designer

-Software is written in C language using Atmel Studio tool

-The heart of the device is Atmega32u4

-User interface consists 16x2 LCD display (HD44780 driver), 3 tact switches and 3 user LEDs

-The device logs temperature from last 24 hours (measured every 10 minutes). It downloads the time and date from DS1307 (via I2C) that is powered up with 3V cell battery when there is no power

-Temperature is measured using DS18B20 connected via 1-Wire. Board is ready for soldering SMD version and has a socket for connecting a device on a cable

-The main screen consists current date/ time and temperature

-Pressing middle button will show the highest and lowest temp from the last 24h

-Pressing left/right button will cycle through the temperature logs gathered

-Data is displayed on the screen using multiplexing

-Device can be connected to the PC via USB. The connection simulates a serial port. On the PC there is an app written in C# that allows user to set various parameters like date/time for the DS1307 or read the actual temperature. I plan to extend this application for logging way more data.

Here I have linked a video showing how does the device work (some early stage, didn’t use celcius sign yet lol). I will post more videos as soon as I solder-up the actual board. Keep in mind that logged data is held in SRAM which means it needs at least 24h to fill every “register”.

About the software:

I havent written everything from scratch- I have found some usefull libraries over the internet like the ones from Mr. Camera who I really admire for creating LUFA library and his commitment for AvrFreaks forums ( or Mr. Kardas (Blogger, programmer and book writer from my town). Thanks to their libsi could launch up this project really fast and its easily extendable. I obviously added some mad alghoritms of my own :>.

The PC app is written by mysalfe and for now it covers only basic functions but i want to extend it to a full temp logger with characteristics drawing etc.

About the Hardware:

The board may seem to big but there is a reason for all this free space on the board:

 LCD panel is pretty big and is stuck not so high in the same time. That means i couldnt really put anything else than SMD devices under it. All the connectors, buttons and LEDS had to be placed next to it.

  • 1 × ATmega32U4 8-bit AVR Microcontroller, 2.7-5.5V, 16MHz, 16KB Flash, 512 Bytes EEPROM, 1.25KB SRAM, USB Controller, 44-pin TQFP, Industrial Grade (-40°C to 85°C), Int RC
  • 2 × DS18B20Z High-Precision 1-Wire Digital Thermometer, -55 to 125 degC, 8-Pin SOIC (S8-2)
  • 1 × 16 Mhz oscilator
  • 1 × 32.768kHz oscilator Frequency Control / Oscillators
  • 15 × Some resistors [0805]

View all 11 components

  • Board soldered and running

    Łukasz Przeniosło07/21/2014 at 18:32 0 comments

    I managed to find the time to solder the board. Ive run into little problems with voltage setting of the LCD display but everything is fixed now on the schematics. For some reason i thought i can apply 0 V on VO pin of the LCD to get the perfect text brightness- I was wrong. The voltage has to be slightly higher. So either i would have to use DAC (that atmega8 devices dont have) or solder a pot somewhere (what I did, its under the LCD).

    As for the DS18B20, i have soldered it on a cable and put behind the window:

    Its covered by thermo-shrinking thingy so its quite waterproof. 

    Whats to be done now is to add some additional software features like turning the backlit of the LCD in the night etc. to save-up some energy. Also the PC application has to be extended to add more logging functionalities and plot drawings.

    Below I add a small demo video shopwing the soldered board. 

  • Github repo added

    Łukasz Przeniosło06/18/2014 at 06:27 0 comments

    Hello there,

    I have added all the sources for the project. They are avaible in the link section :). Planning to solder-up the project on an actual board soon.

View all 2 project logs

Enjoy this project?



Adam Fabio wrote 06/18/2014 at 01:55 point
Great Project bremenpl! So many industries are benefitting from low cost temperature logging these days - from shipping to storage, to debugging manufacturing issues. Since you're using Altium designer don't forget to put your schematics up in PDF format. There is a free vewer out there - try to link to that as well if you can. Thanks for entering The Hackaday Prize!

  Are you sure? yes | no

Łukasz Przeniosło wrote 06/18/2014 at 06:28 point
Hi there, thank you for the comment! I have added the resources as you adviced. Good luck in your projects :).

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates