Really, is there anything Linux can't do? You be the judge. Bkimmons, a member of the DIY gadget Web site Instructables, came up with a crafty way to use Linux to control the flow of water to his garden sprinklers.
To put this project together yourself, all you'll need is a garden hose, an electric sprinkler valve, a diode, a 5V relay, and a couple of other items that should be readily available around the house or at your local electronics store.
The entire process relies on the parallel port from your computer outputting 5v logic to activate the relay and power on the sprinkler valve. The Parallel port is capable of provide the 5v logic from the data pins 2-9. This will be +5v when activated and 0v when off. We just need to grab that on off signal and use it to control our sprinkler valve.
In the diagram you will see how everything is connected. The 5v logic comes through the DB25 connector on any pin 2-9 and then powers the coil in the relay and returns to the computers ground. The diode protects the computer from any current stored in the relay coil. when the relay is activated the power from the wall wart will flow through the relay opening the sprinkler valve. thus causing the water to flow.
I used a Sharpie to draw a simple circuit to solder the wires for the relay and diode too. Simply draw it on the copper side etch and drill. I also had some screw terminals left over from a previous project that I incorporated but they are not necessary.
Once all the electronics are in place, grab your favorite Linux flavor and install it followed by a tiny app called parcon to turn the parallel port's data lines on and off. Follow the post's directions for using crontab to schedule watering, and you're good to go. Be sure to check out the author's notes for the lessons he learned about modifying the water pressure, why you shouldn't use old printer cables to make a DB25 connector, and why you should always carry a towel everywhere you go.