My new home automation project – KitchenTouch

It has been a little quiet in my blog lately. But it’s not because I was lazy (well, maybe just a little).

I’ve been busy celebrating many many birthdays in July (including my own) and also I spent a lot of my time learning new technologies (namely HTML5, CSS3 and C# languages) and coding my own home automation project called KitchenTouch.

That last thing is what I want to tell you about.

Origins

Here’s a bit of a history for this project.

KitchenTouch originally started as part of an anniversary gift for my wife, when I decided to install a tiny Win7 Home Premium HTPC for her entertainment in the kitchen. For the curious ones the HTPC is the Acer AspireRevo 3610 with dual-core Intel Atom, Nvidia ION graphics and 2Gb of RAM. If you want more details on the Revo system check this very good site called RevoHTPC by James “Motz” Montemagno.

I started thinking of how to customize that system and make it easier for my wife to use. Taking into account the kitchen environment and possible usage patterns, I realized that keyboard and mouse were impractical controls while cooking. Therefore I decided to look into touch options. I acquired a touch-screen monitor for that system and started looking into available user interfaces. Alas, all products I could find were either too sophisticated (complex and difficult to use) or didn’t provide the features I was looking for. So, naturally I decided to write my own. 🙂

I had limited time on my hands (around 2 weeks before the event), but I really wanted to learn a new programming language – C#. I set off to quickly learn C# while doing something useful. Thus, KitchenTouch was born! I really didn’t have the time to plan the project through properly, but I had a general idea of what I want to achieve. Some features were written and re-written several times, layout was constantly changing as I was testing the program’s usability. And I expect it to change in the future as I go ahead with new features.

Objectives

Modules supported / planned

Screenshots

The screenshots are available in Picasa.

System Requirements

To run:

To build:

License

This project is a free software developed under GNU Lesser General Public License (aka GNU LGPL).

Please see http://www.gnu.org/licenses/lgpl.html for details.

Icons by Axialis Team (http://axialis.com)

For now there are no binaries (aka Setup/Installer) to download, but the full C# source code is available for anyone interested from http://kitchentouch.codeplex.com.

Let me know if you want to see photos of my kitchen HTPC set-up and I’ll post them here. Stay tuned for updates to this project — follow me on Twitter (@rusgrafx).

I’d also like to get feedback from C# developers, as this is my first project in this language and I’m sure there is a lot of code that could be improved.