This new Adafruit Pi Plate makes it easy to use an RGB 16x2 Character LCD. We really like the RGB Character LCDs we stock in the shop. Unfortunately, these LCDs do require quite a few digital pins, 6 to control the LCD and then another 3 to control the RGB backlight for a total of 9 pins. With this in mind, we wanted to make it easier for people to get these LCD into their projects so we devised a Pi plate that lets you control a 16x2 Character LCD, up to 3 backlight pins AND 5 keypad pins using only the two I2C pins on the R-Pi!
To keep costs low, the Raspberry Pi does not include a Real Time Clock module. Instead, users are expected to have it always connected to WiFi or Ethernet and keep time by checking the network. Since we want to include an external module, we'll have to wire one up. We'll go with the easy-to-use and low-cost DS1307.
In this tutorial we'll be showing how to utilize a DHT sensor Python library based on C for high-speed GPIO polling to handle bit-banged sensor output. Many low cost sensors have unusual output formats, and in this case, a "Manchester-esque" output that is not SPI, I2C or 1-Wire compatible must be polled continuously by the Pi to decode. Luckily, the C GPIO libraries are fast enough to decode the output.
Adding a LCD to any project immediately kicks it up a notch. This tutorial explains how to connect a inexpensive HDD44780 compatible LCD to the raspberry pi using 6 GPIOs. While there are other ways to connect using I2C or the UART this is the most direct method that get right down the bare metal. This technique allows for less expensive LCDs to be used, it does not require any i2c drivers and it won't steal the only serial port on the Pi.