A while back I came across Sous Vide cooking. (I also occasionally cook, among my other interests.) Sous Vide is French for “under vacuum” and refers to a style of cooking where the food is sealed in a bag and cooked at a controlled temperature in a water bath. I tried a couple of experiments using a pot of water on the stove with me as the temperature controller, switching the stove on/off while watching a thermometer. The results were certainly worthwhile and prompted me to explore the possibility of building a temperature controller using the Arduino, a very capable micro-controller hardware/software platform, and a hot plate. A search of the inter-tubes quickly showed that I was not alone and that many had traveled this or a similar road. (One reason for DIY is the relatively high cost of commercial Sous Vide appliances. At least in my case it was. And besides, hacking something together would be fun.)
I knew I wanted the end result to be stand-alone and that meant some kind of user interface. The great folks at Adafruit had just introduced their LCD Shield with a 16×2 display and input buttons. I ordered one and started work on a display/menu system. Soon, I was able to set the desired temperature and display the actual vs. goal temperatures. It was easy enough, then, to send a control signal, based on the water temperature difference, to the hot plate.
LCD Shield Kit w/ 16×2 Character Display – Only 2 pins used! [BLUE AND WHITE]. This new Adafruit shield makes it easy to use a 16×2 Character LCD. We really like the Blue & White 16×2 LCDs we stock in the shop. Unfortunately, these LCDs do require quite a few digital pins, 6 to control the LCD and then another pin to control the backlight for a total of 7 pins. That’s almost half of the pins available on a classic Arduino!
With this in mind, we wanted to make it easier for people to get these LCD into their projects so we devised a shield that lets you control a 16×2 Character LCD, up to 3 backlight pins AND 5 keypad pins using only the two I2C pins on the Arduino! The best part is you don’t really lose those two pins either, since you can stick i2c-based sensors, RTCs, etc and have them share the I2C bus. This is a super slick way to add a display without all the wiring hassle.
This shield is perfect for when you want to build a stand-alone project with its own user interface. The 4 directional buttons plus select button allows basic control without having to attach a bulky computer.
The shield is designed for ‘classic’ Arduinos such as the Uno, Duemilanove, Diecimilla, etc. It will also work perfectly with Arduino Mega R3’s. Earlier Mega’s have the I2C pins in a different location and will require you to solder two wires from the I2C pins on the shield and plug them into the different I2C locations at Digital 20 & 21.
This product comes as a kit! Included is a high quality, USA-made PCB and all the components (buttons, header etc). This product comes with a 16×2 Blue & White LCD. Assembly is easy, even if you’ve never soldered before and the kit can be completed in 30 minutes. Check the product tutorial page for assembly instructions before purchasing
Of course, we even wrote an easy-to-use Arduino library that you can easily add to your project. It acts just like the built in LiquidCrystal library, but automatically uses the shield pins. You can also easily query the 5 keypad buttons to get input through the library, so you get extra buttons without using any more pins. At this time, the library and shield can control the backlight of our character LCDs by turning the LED on or off. There is no support for PWM control of the backlight at this time, so if you need to have more granular control of the backlight, this shield can’t do that (the I2C expander does not have PWM output).
- Dimensions: 2.1″ x 3.2″
- Comes with a 16×2 Blue&White backlight LCD
- Plug and play with any Arduino ‘classic’ – UNO, duemilanove, diecimilla, etc as well as Arduino Mega R3.
- Uses only the I2C pins – Analog 4 & 5 on classic Arduinos, Digital 20 and 21 on Arduino Mega R3