I've been blogging about my experience in Road Test reviewing the Ultimate Raspberry Pi Bundle. As a part of this Road Test I'm creating a Fridge/Freezer Temperature Alarm system for our local food shelf, Channel 1. You can see where this Road Test started for me here
Since my last post I've been busy, last weeks on FIRST Robotics, but I managed to order some temperature sensors and get them working with the Raspberry Pi! So I'm quite close to my target project the temperature sensor/monitor for our local Food Shelf known as Channel One (and in the last week they've had another weekend outage, and another loss of food, so these sensors can really fill a need)
Previously I used the PiFace Control and Display to create a Raspberry Pi Powered Joke Machine - The Ultimate Raspberry Pi Bundle
for the Channel One Temperature Sensor I cracked open the Adafruit version of an LCD display (also included in the Ultimate Raspberry Pi Bundle) It's known as the Adafruit RGB Positive 16x2 LCD + Keypad Kit for Raspberry Pi I was glad I did too, for the following reasons:
- The Adafruit LCD Plate is mutli colored, you can programmatically change the LCD background to 7 different colors. I decided to use the color feature to my advantage, my Temperature Sensor is normally Green, and I change it to Red if the temperature is too hot, and blue if the temperature is too cool
- The Adafruit LCD features a nice set of Tutorials right on the product website and one tutorial was almost exactly what I was looking for, it explains how to use the DS18B20 1-wire temperature sensor and the Pi and PiPlate. I simply had to modify things slightly to use 2 sensors and then figure out how to use the LCD display as well.
- With the PiFace I was wondering how to tap into the open ports after the shield was plugged in, Adafruit pointed out a neat device that could be used to make things easier here...stacking headers
- Assembly instructions were very clear and easy to follow even though the pcb had been recently rearranged.
- The Adafruit LCD does not have the IR sensor found on the PiFace CAD, or the extra togglebutton. However for this project I didn't really need those features
- The Adafruit LCD buttons are controlled by polling instead of the event driven design found on the PiFace CAD. This is significant, for example I wanted to have a button that cancels the temperature sensor...if the buttons were event driven this would be easy, but since I have to poll the buttons with the Adafruit design, I'll need to poll temp sensor one, temp sensor two, then loop looking for button presses and then timeout when no buttons are pressed.
So the Raspberry Pi and the temperature sensors can detect when the Freezer or Fridge unit are out of range (too hot or too cold) and the LCD display can show the current temperature and even change colors when the temp is out of range? But how do we notify someone who can hopefully correct the situation? Well we don't have to worry about the issue of a power outage, as there is already an alarm in place for that, we also can assume that we have Wifi access. In a previous project I sent a twitter message to send a warning Create an Internet Connected Pill Dispenser but Channel One wanted to have a text message sent to one or more folks. While Twitter was free, I couldn't find a free SMS solution, but Twilio seemed like a reasonable cost for this project, each text costing only a penny or so. (Still would like to find a free solution)
Assembling the Adafruit LCD 16x2 Plate
Testing on the home Fridge and Freezer
Issues I found this time around
- The mini keyboard is once again annoying, sometimes types multiple characters and I found it does not have a "\" ...a key that is necessary with python
- Running out of time to review/blog about all the things in my Ultimate pi Bundle, still to come: Gertboard, PiFace Digital, Camera, Protoboard, and Embedded Pi
temp4sensor.py.txt.zip 2.1 KB