Monitoring my home.
When we moved into our house, Jessica and I started adding “Internet of Things”
components to the house. The first ones were regular, Internet controlled devices
like Nest Thermostats and MyQ Garage Door Openers.
Unfortunately, these tools are very limited in the data they provide. With Nest, you get a very simplistic app with a day-by-day bar graph of how many hours the HVAC system has been on each day. The history only goes back 10 days making any sort of historical comparison impossible. The MyQ is similarly frustrating. The app they give you provides no reporting of events other than email alerting, and no way to automate opening or closing the garage other than making the user press a button in the app.
When i deployed my home docker cluster one of the services I deployed was InfluxDB and Grafana, for monitoring networks, systems and services. I’ve been slowly adding additional metrics from Nest, My Solar panel installation, and Z-Wave devices via Vera.
Enpahse Envoy Solar panel controller
I’m currently polling my Enphase Solar panel’s Envoy controller on a regular basis using Home Assistant. My integration parses the controller’s JSON diagnostic file and pulls out relevant values. The result is up to the minute graphs and details about our solar production
Home Energy Usage monitoring
I discovered a ZWave Home energy meter for about $30 on Amazon. When connected to My VeraEdge and HomeAssistant, I’m able to get accurate power usage for my house as a graph in Home Assistant and Grafana. I decided to use curl against the sensor directly, instead of the homeassistant vera integration because it allows me to track usage in kW instead of Watts, and also allows me to read the sensor’s “lifetime” value.
Garage Door Automation
I was frustrated by the MyQ’s lack of automation, integration and inaccuracy, so I replaced it with a Raspberry Pi, a pair of relays and some magnetic door sensors.
I mostly followed the instructions for seeting up garage door controller v1.1 and then configured the controller in Home Assistant using a command line cover
I’ve set up some Home Assistant monitoring to Alert when the doors are opened, closed, and left open longer than they should be, and to automatically open and close the doors when my kids get off the bus from school.
Amazon Echo Dot
Our Home Automation setup is voice controlled using Alexa and the Home Assistant Alexa Skill Adapter The code runs on AWS Lambda and exposes all Home Assistant Devices as Alexa devices, so I can say things like “Alexa, Turn on the Outside Lights” and the command goes to Home Assistant, then Vera, then Zwave to the lights.
Code and up-to-date info
See https://git.smith.bz/derf/homeautomation for all the code, UI Screenshots and more equipment details