My previous project, I used PHP and a home server to run the home automation, but seeing how my homeserver draws 200 watts, I cant leave it on 24/7, so that kill the automation idea on it.
I reorganized all my ideas and managed to run ALL of it on the Arduino with an ethernet shield instead!!
Actually... it's a seeeduino mega, which is an arduino mega 1024 clone. But you can probably do all of it on a Arduino 328.
I prototyped on a 168, and it ran out of memory and would glitch a lot. So it's better to go with something with more memory. Also, I originally planned on using all the pins on the Mega for inputs and relays, but adding X10 saved me a whole bunch of pins, so I'm barely using up the pins available on the 328 when I prototyped.
Anywho, without further ado... here's the video:
A basic description:
This is an App I created using Google App Inventor for Android, which communicates with an Arduino with ethernet shield.
The lights and AMP for speakers for outdoor is controlled by X10. The curtains uses an H-Bridge and a small motor from a small battery operated screw driver and pulley system. The HVAC is controlled using some Solid State Relays and a couple analog temperature sensors.
Using the App Inventor TinyWebDB, I was able to communicate with Arduino Ethernet shield using JSON request.
It was a little difficult to figure out at first, but once I got it to send values back and forth, it work well.