Taking a break from the EEG work.. Outdoor Automation
I’ve always wanted to implement some home automation system. My first attempt at implementing an X10 based system worked for a time, then it failed. Lights would turn on randomly, switches stopped working. Ultimately, the lesson I learned was that you get what you pay for. With the X10 system: cheap shit.
I’ve since implemented a couple systems, they work for a time, but nothing robust. I was happy to find the Electric Imp which is an inexpensive WiFi module with a cloud based backend. I wanted to test it out, and thought automating my backyard low voltage lights and sprinkler system would be a good first application. Luckily, most of the work was initially done by their developers in their implementation of the ‘Jane’ platform. I asked, and was given access to their source files (since posted on their site). I modified it to my liking:
- Only 3 relays, not 4 to reduce PCB size cost
- Swapped their temp sensor for an SHT71 temp/humidity sensor. Overkill, for this application, but I have a number of extra ones from a previous project
- Replaced their shift register with an I2C I/O expander (I need more I/O pins)
- Used a full bridge rectifier to allow more power to supply the caps. I also like the way full bridge rectifiers look.
- Added support for an external NPN based light sensor.
- Added support for an external rain sensor.
I need to test/debug the hardware, write code in some language named after a rodent, get a box to mount the electronics – and then I’ll be all set.
For the UI, I will be putting a framed Nexus 7 permanently in the wall. It will serve as a frontend to a number of applications I want to make.
I think I’m going to make a number of visualization widgets to plot things like power consumption, temp, etc, and have a webserver running on the hardware that will serve html pages to do the configuration (when the sprinklers work, etc). I plan on using it to control music in the house. Let see how far I get along this project before being sidetracked.