Home Automation

I am looking into starting a small home automation project. I am currently a college student and would like to eventually control the lamps, tv, radio etc. in my room with my iPod touch. I have been researching various devices and arduino seems like a very good option both with its capability and price.
I was wondering what everyone thinks is the best way to go about doing this? maybe with ethernet through a router? or maybe just using xbee? or x10?
Thanks for the ideas, suggestions, and points in the right direction

Try to do a search in the forum, there has been a number of threds on homeautomation recently, and i think some people have arranged to share whatever info / projects they have


I'm looking into Home Automation as well, and put my notes here: http://sites.google.com/site/hamsproject/

Feel free to contact me off-list.

Greetings, EriSan500

So I was doing some thinking last night and thought about going about this in the following manner.. I would like to hook both my iPod (or computer) up to a wireless router by wifi and then hook up the arduino board to the router using the ethernet shield.. then would it be possible to send packtes to communicate from my iPod/computer through the router to the arduino board in order to control it? and then have the arduino dim a light or send an IR signal from there? Thanks for the help!

In theory, yes (you're going to need a bunch of glue code, though).

Not to deter you from using an Arduino, but using one technically complicates matters; there are tons of USB interface boards out there to allow digital i/o control, relay control, analog i/o, etc - all via simple USB interfaces (in many cases done with FTDI USB serial, like the Arduino).

Now - if your goal is to replicate one of those boards, and to use the Arduino in the development (ie, creating an embedded controller with a command set to control various relays and such - based on an ATMega uC); that is one thing. But if your end goal is just control of lights and such, other solutions are readily available, and save you that much extra effort (believe me, writing the controlling code and interfacing to all of the external lights and such will be tough enough).

Just a thought...good luck.


cr0sh - you said that there are other solutions readily available that will make this much easier for me... I was wondering what other solutions you would recommend? Thanks

programmerml -

I have been doing Home Automation for about 15 years, so I will try to give you a snapshot of info and help you out. I agree with everything cr0sh has said...

When you are working with Home Automation there are basically two types of automation. Ad-hoc communication meaning a few devices with a remote to control them, and having a centralized controller.

Since you want to be able to control you devices from you iPod touch, you would most likely need to look to the centralized controller model. That means one central point that knows the status of all of your "devices" (switches, lights, etc...) and how to communicate to them. You would also need to find one with a built in web interface (so you iPod can control it).

Nowadays, most people run software on a computer to act as this centralized home automation controller. This HA controller runs software to monitor the states of the devices, provides a UI for controlling them, allows you to trigger events, and has physical hardware interface so it can communicate to the devices. (For example a special cable that goes from a serial port to a wall jack can allow the server to control X-10 devices).

So there are two ways for you to start -

(A) buy a "starter kit' with a few controllable switches/outlets and a remote control unit. While this wouldn't initially allow you to leverage your iPod, you could later expand the system, and add a home controller with a web interface.

(B) read some review of various home automation software programs and try a few. Most of them have built in web interfaces, which would allow you to control you "devices" from the web browser in your iPod Touch.

All of my experience is with a program called Homeseer, which has a huge community of users/hobbyists who work with it (very similar to the Arduino community). You can download a free trial of HomeSeer here http://homeseer.com/downloads/index.htm

Once you have picked out a program, you need to decide which Home Automation Technology you want to use. The original HA products used a technology called X-10. These devices still exist (and work) today, and you can often find them very cheap on eBay. You might even be able to buy a starter package consisting of a home automation program, computer interface, and a few controllable switches for a decent price.

Once you learn more about HA, you will discover that there are lots of competing standards each with their pros/cons. You can also design custom circuits (like ones based on Arduino) and integrate them into your Home Automation system via a serial connection (or even Xbee)

The first place I would start is to start reading forums dedicated to Home Automation. It will be a much better place to get information. The HomeSeer forums can be found here (even though some parts are specific to their software, much of it is great general HA information): http://board.homeseer.com/

I hope this helps get you going in the right direction.

33Warlord thank you so much for your input… this definitely helps as I am completely new to home automation and am just trying to find a starting point. Thanks!

Hi, I'm working on a HA project right now as my first Arduino project. It's going to be a centralized system with ONE Arduino Mega based custom made controller with a lot of digital inputs, solid state outputs on 220V and 12/24V, and dimmer type outputs from 0V to 220V. Analog inputs also :)

This type of HA type requires a special wiring, not the regular one. Every cable must start from the controller to the controlled object (lamps, motors, etc.).

The objects will be controlled either by wall switches (normal push buttons), or by touchscreen tablets/smartphones/laptops... just everything that has a browser and WiFi. This is how I do it:

Device with WiFi -> WiFi router -> PC -> Arduino

Right now I'm doing a research on the best interface technology. I like Flash/Flex, but Apple (iPhone) doesn't :D The new Windows Phone 7 OS that was introduced by Steve Ballmer today, well... also doesn't support Flash. Android is on the right way, however. There is however an option to go with a "native" apps for the unsopported platforms. A regular HTML/JavaScript interface is much more easy to do, but where is the fun?! ;)

P.S. EriSan500, I like your notes. What's the status of the project?

FWIMBW, here’s a link to HA projects I’ve built with Arduino and X10.