Automation Core

Here's a quick look at my automation system. I have been working to get this on paper so it'll be easier to discuss with people. My vision for the system has expanded over the years but there are still remnants of my senior thesis in this design. The main processing of the system is handled by the Crestron processor, Raspberry Pi, and Universal Devices ISY. Each part handles different aspects of the system. The Crestron mainly handles multimedia and human interfacing. ISY handles lighting and sensor input via Insteon. The Raspberry Pi handles computing and processing that can't easily be handled by the other processors (amazon dash, web scraping, internet stuff, data logging/graphing, etc.) A lot of the Raspberry Pi stuff is planned but not implemented. So far the Dash buttons are all that I have setup on the RPi.

Crestron TSW Touchpanels

I'm a big fan of the TSW series touch panel from Crestron. I have 4 of them in my condo at the moment. 2 of them are on my and my wife's night stands. This model doesn't offer tactile buttons so when I wake up in the morning and want to turn the lights on, I need to physically look at the touch panel to do that.

Since the touch panel has 5 capacitive buttons on the right hand side of the panel I just needed to give them tactile feedback. So a few weeks ago I purchased capacitive suction cup buttons for smart phones and found that they work great on the touch panels except they fall off after 30 minutes or so.

Tonight I designed a prototype plate to fit on the touch panel and stuck the buttons inside the plate. An hour and a half of my time to measure, design, and print a great addition to my touch panels. Take a look at the results. It will need a little fine tuning and a reprint in black. But for a prototype this works great.

Bluetooth Beacons

I'm looking for not-so-expensive ways to track occupants inside a home. I have been for years. I have looked at RFID with mid-range readers, motion detection, IR beam-break detectors, etc. They all fall short for me though. I want to know exactly who is in what room and when so that I can actually tailor the home environment to them. I thought bluetooth could be useful for this because BT devices are cheap. I could put readers around the house and measure RF power to estimate a position.

Recently I noticed that the concept of beacons was becoming popular in retail. I started exploring this as an option for my home. What I found is that the typical use case is for the beacons to be placed in specific locations and then the user launches a phone app to determine where in space the phone is based on those beacons. Retailers can then target messages, ads, or customer service to them. I wanted the system to work in reverse.

I finally found a project where someone has created a proof of concept where the user is the Bluetooth Beacon and there are static receivers (Raspberry PIs) located in the home. The receivers can then transmit information when the beacon (ie. Occupant) comes into the room.  http://stackoverflow.com/questions/21733228/can-raspberrypi-with-ble-dongle-detect-ibeacons

I hope to get to this sometime soon.

Network Scripts

This is how I make my life easier. I am constantly moving between home base and client sites and this means I need to make network configuration changes almost daily. It gets even crazier than that some days too. Some sites have multiple VLANs with no routing and I need to change network address space for each VLAN I’m working on. These are the scripts that make my life easier.

My new work PC doesn’t have a switch to turn WiFi on or off. Since I keep the lid closed and in a docking station at work I can’t use the FN+Hotkey to turn WiFi on or off. So I created these batch files to turn the adapter on and off instead. Each one lives in its own batch file and I simply “Run as Administrator” to execute.

File "Disable Wireless Connection":

netsh interface set interface "Wireless Network Connection" Disable
netsh interface set interface "Wireless Network Connection" Disable

File “Enable Wireless Connection”:

 

netsh interface set interface "Wireless Network Connection" Enable

I used to have a script that let me configure and save network configurations but when I switched PCs a few years ago I never updated it. Instead I created a bunch of batch files like this one:

File “Wired Adapter Client Video Lan”:

netsh interface ip set address "Local Area Connection" static 198.9.200.40 255.255.255.0 192.9.200.1
pause

When you run it as administrator you can see it is designed to set a static IP address of the network I need to work on. These networks don’t have external network access so I didnt’ specify the DNS servers.

This is how you set the adapter back to DHCP
netsh interface ip set address "Local Area Connection" dhcp

These scripts mean I don’t need to take the time to muddle through the GUI and waste time looking up which IP address to use and typing it in. When laying out the networks I keep track of which IP is used for my configuration PC and leave that IP address free for my use.

 

Amazon Dash Buttons

Amazon Dash Buttons

Amazon has this amazing product called Dash. It’s a product line of WiFi buttons that connect to your wireless network and when you press the button Amazon orders the associated product for you...but where's the fun in using something the way you're supposed to.

I'm going to hack my first Dash button to remind me when I run out of shampoo so I can put a new bottle in the shower before I'm already in the shower so I don't drip water everywhere.

Motorizing Blinds

I'm a strong believer that home automation should make life more enjoyable and that it's not just about having some "cool" new gadget. I actually enjoy the more obscure and transparent automation devices. Take a look at this picture and you'll notice a lack of anything technical. It's just a picture of the blinds in our home office.

Typically, a person will go into a room and open the blinds every morning. Then at night they'll go around closing all the blinds. If you're in my house then the blinds typical stay closed since doing the same task every day just seems boring and wasteful of my time. Though having closed blinds leads to less natural light, more use of artificial light, and less enjoyment of my natural environment; it's like living in a cave.

I ended up purchasing Somfy RTS motors for my blinds and installing them myself. These work with 2" blind systems and have the option to plug into an outlet or be powered by a battery wand. You'll need a RTS remote to program and use them. You can also purchase a RS-232/485 interface so you can control them with an automation system. I believe they sell a few other options for interfacing them as well.

You can purchase blinds with these motors already installed but I found that the blind companies wanted at least 250 dollars more per window covering and installation had to be done professionally. These motors cost me 135 dollars per covering. The savings of doing it myself allowed me to buy the RS-232 interface.

Installation was pretty easy. I followed two videos from youtube (Video1 Video2).

When I was done with installation I programmed the automation system to close the blinds at dusk. It's really nice not to have to go around the house and close the blinds. The next step will be figuring out when to open the blinds and if I'll have the system ask if we want the blinds open prior to them opening. That's a decision for another day.