This is my Nintendo Wii Controlled Smart Home. Using the Wii-Mote and my Nintendo Wii, I have an onscreen Flash User Interface that lets me control the following aspects of my home: Lights, Thermostat, Security Camera, Music Playback, Cable DVR, and more.
Watch the Video:
Q: How did you do this?
The heart of this control system is a custom script written in PHP that does all of traffic directing. A mysql database holds command sets and ip addresses for each device, and forwards the appropriate status signals to the Flash GUI. Simple button press events in flash trigger PHP scripts which blink the IR emitters, and communicate with the lighting controller.
Q: What gear did you use?
Smarthome Insteon Lights w/ ControlLinc
Aurora Multimedia WACI NX
Debian Linux PC running LAMP services
AXIS PTZ IP Security Camera
Proliphix IP Thermostat
Controlling the lights:
Controlling the A/V equipment:
These pictures are from an older interface I created to control everything wirelessly from the PSP.
By using a controller device called the WACI NX I can make a macro to turn on the TV, turn on the XBOX, switch to the correct input on the TV, and send the PLAY command to XBMC all in 1 button press .
So far I have the ability to turn my lights on and off. Have full control (Play, Stop, Pause, Menu) of my DVD player, TIVO, and High Def TV, all wirelessly from my PSP. I can also send commands to my PC running Winamp to tell it to Play Stop and Pause my music, or even browse my playlists.
To do most of the controlling I used this tiny little web server control box called the WACI NX. It's great because it has an HTTP and FTP server and uses regular HTML to issue the commands making it the perfect match for my PSP, Wii, or just about any other web browser enabled device. The PSP or Wii talks to the WACI NX via wifi through the network. In turn the WACI emits the IR signal to the TV through one of my IR Emitters, just as if I had pressed the button on the remote.
The WACI NX has a built in IR Learner so you can grab all of your remotes, learn all the button commands, and save them in the WACI to be played back and emitted later. You could even do macros so it sends out a sequence of button presses with a specified delay between each button press.
So for example, a single button press can: Turn on TV, wait 2 seconds, change input, turn on dvd player, wait 5 seconds, press play on dvd player. In 1 button press your TV is on with the DVD playing.
The actual links are name value pairs going to a script I made on the WACI NX. http://192.168.1.102/ rpcpost.asp?method=IRSend&amp;amp;amp; Param1=1&Param2=DVD&Param3=Play
That script is written to execute the IR Send then report back it's status. To change which command I run, I just change the url string in my link.
Techmall SmartHome Forum
$120 Mini PC that will run LAMP
Global Cache Ethernet -> Ir & Serial Devices
SmartHome Insteon Lighting
Home Automation Links Directory
Linux Home Automation
If you are a PHP/AJAX developer and interested in home automation, send me an email (liquidice629 at gmail).
I could also use some help taking this project to the next level. Contact me to discuss.
Feel free to leave me any questions and feedback in the comments of this post. Looking forward to hearing your thoughts...