I’ve put up a few posts about certain specific tech in the house [Check it out here] and some people have asked that I do a more complete write up of my actual Home Assistant Smart Home system. Lots of information can be found on my Github Repo but this will be an attempt or at least a starting point to document most of the high level systems in the house. From here, I’ll be able to write additional pieces that dive more in depth for particular systems. If this is not your thing, look away NOW. You’ve been warned.

The basic foundation for the system is a Raspberry Pi running Home Assistant. Home Assistant is an open Source piece of software that in a lot of ways reminds me of VMware. It’s an abstraction of hardware and software. It allows me to buy and deploy pretty much whatever I want in my house in terms of hardware and provides the software layer/glue/translation for it all to talk to each other. Smart House as a Service basically.

My Raspberry Pi is a standard 16GB SD card version with the All In One install on it. Other hardware attached to it is an Aeon Labs Z Wave Stick and a 433Mhz Transmitter. I am also running Dasher (to provide access to my Amazon Dash buttons) and HomeBridge (to provide Apple HomeKit support) on the Pi itself.

Lights:

Lights are usually the first place you start with Home Automation. Turning lights on and off automatically makes a ton of sense in the home setting. For my lights, I first started with HUE Lights. The hubs are standard Zigbee light controllers. I have a mixture of both GE Lights and Hue proper lights connected to them. I have about 40 or so lights and have 2 Hue hubs deployed in my house. These 2 hubs control the majority of the lights for the interior of my house. I also have a Wink Hub deployed that has a few outside lights connected to it via ZWAVE. Much of the automations built in the house revolve around lights turning on and off through out the day. Lights turn on at Sunset, when we turn the TV on, walk into rooms or turn off when we get into bed. There is a pretty cool automation that keeps a consistent light level throughout the day by dimming and adjusting lights as they turn on based on the time of day. No one like a 100% bright bulb at 2am. I never appreciated how accent lighting and light levels can affect the overall house mood and look. I’m a huge fan of it now.

Outlets:

For the most part, most of my lighting is done by bulbs. There is a never ending debate about whether you should use switches or bulbs.. I don’t think there is a right answer for everyone and for me, I chose bulbs. They allow for more granular control of the space and it’s lighting. That said, I do have a few controllable outlets scattered around the house. Two main types. Zwave outlets that control my outdoor landscaping lights and my trusty (cheap) 433Mhz outlets for accent lighting switching around the house. For the 433Mhz operations, I have a few 6 buck Etekcity outlets that are controlled with the 433Mhz Transmitter attached to the Pi. This worked out to be the most economical way for me to turn accent rope lighting on and off throughout the house with automations.



HVAC, Smoke Detectors and Irrigation:

For the Heating and AC control in the house, I chose Nest thermostats. These devices are pretty much set it and forget it. The thermostats keep the house cool when needed and are aware of our presence to save energy when we are not home. I have built some rules that allow Home Assistant to turn off the HVAC when someone opens a door or window for more than 5 minutes. Once the door/window is closed, the system resumes it’s normal state.

For Smoke Detectors, I have Nest Protects deployed. You can read about that deployment and how I came to those decisions here.

Since I live in Florida, irrigation is key to keeping the lawn green and the HOA at bay. I have put in a Rachio smart irrigation control to control how much and how often the lawn is watered. It’s another set it and forget it type device.

The three of these devices/systems work nicely together in the event of a fire. The Protects will sense the fire, turn off the AC (to avoid spreading smoke through the central air) and turn on the sprinklers. Additionally, HA will be notified and will turn ALL lights on and set our outside lights to flash to draw attention. If we are not home, remote alerts let us know there is an emergency situation.



Security:

For security, I did roll my own. You can read about it here. It’s basically NodeMCUs and the pre-existing wires. Having 17 individual zones all feeding into Home Assistant has given me an abundance of data to build rules around such as the HVAC rule above.

We also have a SkyBell HD doorbell with motion and camera capabilities. If people ring the bell (or just walk to the door) various lights will blink and turn on to notify us and the person that we are around and aware. We also have 2 garage doors that are fully automated. Using Garadget components, we get notifications when they open or close. They also act as sensors feeding information into HA for rule processing. A great example is at sunset, we are notified via our Text to Speech system that one or both of the doors are open. Another neat example of how Home Assistant bridges the gap is when our Garadget Doors open at night, the outdoor Hue lights shine white for us to see. Two separate systems working together for one experience.

Whole House Speech:

[Expanded Write up Here] Giving the home the ability to talk to us has really changed the experience with the Smart Home. For the longest, we have been able to use speech to control the automations with Amazon Echoes (really just to override whatever automations the house was currently implementing) but with the addition of Amazon’s Polly TTS voice, I am able to broadcast all sorts of information over the whole house surround speakers. Example use cases for this are when the Nest Thermostats turn on or off, reminders to close the windows or doors, announcement messages when we come home giving us a status of the lights, windows and doors. Reactions to sensors also have voice outputs such as broadcasting a dog barking when there is motion in front of the house (picked up by the SkyBell). We are also able to stream internet radio over all the speakers throughout the house. The speakers themselves are normal ceiling mounted speakers but they are connected to ChromeCast Audios and a cheap car AMP.

Presence Detection:

Presence detection in the house is key to a LOT of the successful automations we have. If the house knows when we are home or not, so many more things can happen without us intervening. For presence detection, we use a simple NMAP component that just pings the network and takes note of when certain devices are online or off. For our home, tracking the Wi-Fi status of mine and my wife’s iPhones provides a pretty accurate sensor for when we are home or not. We also have a SleepIQ bed that has pressure sensors to know when we are in bed or not so that the nighttime routines are fully automated. When the house knows we are both in bed, all the lights begin shutting down and entering the nighttime scenes. Likewise when we wake up. All Pretty seamlessly.

Final thoughts:

The house will never be finished. The project will never end. As new technology and newer capabilities become available I’ll work to implement them in my Smart home. When things don’t work correctly, my family notices which means to me that these types of automations and conveniences are becoming part of the normal household routine.

If you would like to see videos about my Smart House, be sure to head over to my YouTube Channel and subscribe. There are new Smart Home, Home Assistant and Gadget videos often.

Thanks for reading,

–Carlo