I recently got excited about the idea of creating a web software to run locally for my home that could be accessed via computer, smart phone, or tablet, which would give me complete control over most of the house's functions.
I went ahead and wrote the code to control a virtual home that's displayed on the site to show your changes instantly. The virtual home responds great, however, I'm a bit stumped as to how I can implement many of the features into a real home. I already added function calls to empty functions that are supposed to change the actual hardware, however, I haven't written any code for them because I'm not really sure what's available and how I could implement it. Here's a few of the main features in the virtual home that I need to connect to and control via the server, so essentially I need a way of controlling these features from a computer.
I'd like to be able to install LED lights with color changing capabilities. I've tried LED lights in the past, and they don't quite work for this application for a few reasons:
- Narrow beam. I'd like it to spread light like a normal lightbulb, rather than having a beam of light.
- Color selection. I wrote the code to basically take colors in an RGB hex format, so I'd like a bulb that can do millions of colors, not just 16.
- Dimming options. I've seen bulbs that have like 255 different light levels, and I'd love that capability.
- Effects. If I could fade, flash, etc. from color to color, that'd be cool, or at least be able to do it using code, even if it's not built-in.
While these are fairly major, obviously the biggest problem is finding a way to individually control the lights via computer.
I'd like to install speakers throughout the house that can be controlled to play music from a centralized library, but more importantly, I'd like individual control of which speakers play what, so different rooms could be playing different songs simultaneously. Again, this would all need to be controllable from the server.
My wife was fond of the idea of being able to turn the oven on or off remotely, so she could access the house's server from her phone through a purchased domain name, and get the oven heating before she got home, or make sure she hadn't left it on.
Basically, if you know of any way to control various appliances and capabilities of a home via computer(preferably low-level commands, such as in a console), I'd love to see what options are available, and possibly expand the capabilities of my software.