Arduino based temperature sensing

For this project, I used an Arduino Uno board and  MCP9808 heat sensor from adafruit. In the firmware I used Adafruit_MCP9808 library provided with the sensor and Arduino wire library for I2C  communication. With this setup I was able to get the temperature reading from the sensor through serial monitor without a trouble.


Next part is to visualize the temperature reading meaningfully. I decided to try out a very simple mechanism to provide a visual expression about the current temperature. Here my goal wasn’t to visualise the exact temperature value, but to provide a sense of in which range the temperature is. Derived from the previous work “Unlocking the Expressivity of Point Lights” by Harrison et al, I decided to use a single LED to create a temperature visual expression.

I modulate the temperature reading to a square single as follows and send it to the LED. In my experiment I used 110F as the upper limit.

pulse width = (110- temp_reading) * 10


So, the LED will blink faster as the temperature increases and slower as the temperature decreases.  

After few experiments with different temperatures (on top of my coffee cup, inside a ice cup and in normal room temperature) I learned this method is capable of expressing temperature levels, but human eye is not capable of identify the change of the blink rate when it increases gradually.

So in next steps I will need to try few other blinking patterns as Harrison suggested going beyond directly modulating to the pulse width in order to provide a rich visual expression of temperature using this simple method.

Measuring UV Exposure when you’re NOT out in the Sun

We all worry about UV exposure when we are at the beach or spending unusually long hours outside in the sun. What we don’t worry about is the ways we can still expose ourselves to UV when we are NOT out in the sun, or when we think we are protected from UV.

UV exposure is cumulative and it is not possible to measure the extent of exposure with a UV measuring system.

The idea for this assignment was to use the Sparkfun Arduino SI1145 visible-UV-IR sensor for this purpose.

The first roadblock was the complete lack of any coding experience. I have tweaked Scratch and R to suit project needs but never “written” code from scratch and was very enthusiastic and hopeful about this assignment and didn’t want to limit the project to a blinking LED. The Windows interface posed an additional initial challenge but Stacey and Jennifer saved the day!

This is what the initial setup looked like


The final code

The output – indoor

WP_20150922_13_16_38_Pro (2)

The output – outdoor

WP_20150922_13_18_27_Pro (2)

It will be interesting to take the system on a drive with me even on a cloudy day, or even check artificial light sources for UV radiation