LCD Display with Backlight

There is a tutorial and code on the Arduino site on how to  use a 74HC595 shift register  to control a LCD Display here  The Garden Station project uses a modified version of this library which adds the facility to add a second shift register for a second set of outputs, which I used to control the LED statuses.  I’ve also used the QC pin to control the backlight via a MOSFET.   As part of this I added a few extra methods (void setSecondPins(uint8_t secondPins),backlightOn() and  backlightOff() ).   The code is checked into github:-

The garden station code has also been updated to use this code.



I ordered a USBtiny a few weeks ago from ebay to use to program the garden station and it arrived today!


Got it up and running an it works great!  I was previously using a spare Arduino Uno board but this new programmer is simpler and doesn’t require a bunch of jumper wires via a bread board (also frees up the Arduino for something else).   The power also seems to work to power the board via the programmer.

I had to bend back the spare data pins on the prototype board (they were right next to the ISP pins), however I’ve already moved them on the SMD version of the board.

GardenStation Intro

This project is simple ATMega based plant watering system.    This automatically monitors the soil and water when necessary.

The current prototype is built on a through hole PCB (made at seed studio).  There was a couple of issues withe the prototype build.   The 74HC595 shift register was wired slight wrong and the display interface had a couple of issues.   These have been fixed in the SMD version (I will go and fix up the through whole version).

The moisture sensor uses a couple of nails and the water valve are made from an off the shelf hobby servo and a manual valve.  There is also provision for a temperature sensor and using the ICSP and a couple exposed pins it should be possible to add a simple SSD card for logging or ethernet module for networking.

I will post a more complete description in the next couple of days. The circuit,PCB and code is available on github –