Skip to content

brianhanifin/Home-Assistant-Config

Repository files navigation

Repository status

Home Assistant version Github action status Github linter status

Last commit GitHub activity

Repository statistics

| Lines of code | Entities | Devices | Areas | Domains | Automations | Scripts | | :--: | :--: | :--: | :--: | :--: | :--: | | 38,418 | 1,495 | 286 | 15 | 108 | 63 |

Index

Smart home articles

I write instructional articles on brianhanifin.com. Topics primarily revolve around Home Assistant and ESPHome code and devices, but I also I have written about my HomeLab server setup.

Summary of our smart home

I started using Home Assistant in the spring of 2018 when we outgrew the limited automations on Apple's HomeKit platform. Our Home Assistant initially included many HomeKit smart plugs our collection of smart lights, switches, plugs, cameras, and sensors. Since we have added many devices that use protocols like Zigbee and Z-Wave and even several custom built electronic modules.

Home Assistant now manages our smart home devices with lots of intelligence handled by automations. It is important that our devices can be controlled by standard wall switches, but we also use Google Nest speakers to control our devices with our voice. Not only can we talk to Google, but she can let us know when a laundry cycle, 3D Print, or laser cutting job is complete.

How we control our smart home

Physical control

We use a variety of physical switches from hard-wired to battery powered.

In-wall dimmers and switches

These can be used to control dumb lights. However, some devices allow you pass constant power so you can control smart bulbs with Home Assistant. For example a switch in my Dining Room leaves power to my Hue bulbs so I can turn the lights on with my voice or the physical wall switch.

bedroom_switches

Bedside toggle switches

Battery powered devices with 6 buttons on each bedside table. Top row: single clicks toggle lights on either side of the bed, while a double clicks toggle a third lamp. Second row: single click toggles the fan or sound machine. Bottom row: single clicks to the left button toggles the window air conditioner between Cool and Fan only modes while the right button turns the Air Conditioner off.

Voice control

We can also interact with our devices with Google Nest speakers and displays in all of the major rooms of the house.

Our Google Nest also make announcements when something needs our immediate attention. For example: when it is time to leave for school, or for the boys to turn their computers off before the Internet is turned off at bedtime.

Screen control

mobile-ui

Mobile dashboard

I interact with the Home Assistant app on my phone to check in on the status of devices and automations.

Cast dashboard

  • Cameras: when the doorbell is pressed our outdoor cameras get cast to the Google displays.
  • Countdown timers: occasionally the wrong Google device starts a kitchen timer. To help with this issue Home Assistant casts a countdown timer status screen to the kitchen display while any timers are active.

Smart home devices

Disclosure: This section contains affiliate links. If you decide to make a purchase, I'll make a small commission at no extra cost to you.

Inovelli red series switches and dimmers

Device recommendations: Red series dimmer, Red series switch, Red series fan & light switch

Inovelli z-wave devices are high quality and they really care about our niche community. The red series switches handle double, triple, quadruple, and event quintuple click events. These even have a led light strip on the right side which we use different color and animations to indicate the state of things around the house.

Project ideas

  1. Multi-click actions! 2x click to turn on/off the bright floor lamp, 3x click to turn on/off the floor fan, 4x click to activate your "good night" scene, 5x click to activate guest mode on your way to answer the door!
    See my automation: automations/buttons/zwjs_button_click.yaml
  2. House status indicator Use the LED strip to indicate when the garage is open, or the alarm is disarmed.
    See my article: "Inovelli red series status LED update"

Lutron caseta

Device recommendations: dimmer, pico remote, dimmer and pico remote, Lutron caseta pro bridge

In-wall dimmer switches and in-wall (or handheld) wireless remotes. Get the Lutron caseta pro bridge so you can use your pico remotes with Home Assistant to control any device in your house! The standard bridge is less expensive but you cannot watch for pico remote button press events.

Project ideas

  1. Add a battery powered pico remote next to a room which doesn't have a wall switch! Control a smart bulb by any manufacturer! Our Play room was lacking a switch, so I screwed the mount to the drywall and covered with with a standard cover! 🍻
  2. Replace a dumb wired light switch or dimmer with a caseta dimmer so Home Assistant can automatically turn the lights on at night when a motion sensor detects you have entered the room!
  3. Use Home Assistant to brighten the lights gradually to help you wake up in the morning.

Philips hue bulbs

Device recommendations: starter Kit (3 color bulbs, dimmer, & hub)

The Hue ecosystem is easy to get setup with Home Assistant. We primarily use their tunable white bulbs for plug in floor and table lamps, but we do have 9 colored bulbs in our dining room chandelier for holiday fun.

Project ideas

  1. Use these bulbs to make your plug in lamps controllable by Home Assistant.
  2. Create a realistic sunrise to wakeup in the morning using the tunable white light.

Smoke + carbon monoxide detectors

Device recommendation: first alert z-wave 2-in-1 smoke detector & carbon monoxide alarm

Thanks to Carlo's article "PSA: CHECK OUT YOUR SMOKE DETECTORS (ONCE EVERY 10 YEARS)" I realized that I had lived in my house for almost 11 years, and we were due for new smoke detectors. So I replaced them with new First Alert zcombo z-wave smoke detectors.

Project ideas:

  1. Safety alert! Have Home Assistant alert you which detector sensed the smoke so you can decide whether to try to put it out, or get to safety!

Aqara sensors & buttons

Device recommendations: wireless buttons, motion & luminance sensors, temperature & humidity sensors, door & window sensors, leak sensors, vibration sensors Hub recomendations: Phoscon conbee II USB gateway, Aqara homekit hub, Aqara starter kit: hub, plug, button, motion, door/window

This chinese company makes a lot of very useful and inexpensive wireless smart home products. At first I used their Zigbee smart hub to get these devices to talk to Home Assistant. However I now use a USB stick connected to my server to communicate with all of my Zigbee devices.

Project ideas

  1. Flood damage alert! This has saved us from major damage once and minor under the sink leak damage twice! Place leak sensors under your all sinks, dishwasher, clothes washer, refrigerator, and water heater. Setup an alert to notify you where the leak is. This will give you valuable time to stop major flood damage!
  2. Door and window sensors: Stick door and window sensors on doors and windows around your house and have Home Assistant remind you to close the doors and windows when it starts to get warm outside.
  3. Motion lights: stick a motion sensor in your
    3a. Kitchen to turn on an LED strip under your cabinets to give yourself a nightlight when getting water in the middle of the night.
    3b. Bedroom to light a dim path to the bathroom.
  4. Medicine logger: stick a wireless button inside the medicine cabinet to log when you gave seizure medicine to your dog.
  5. Automatic bathroom exhaust: use a temperature & humidity sensor to automatically turn on your exhaust fan and turn it back off when the humidity drops again.

DIY smart home devices

I have flashed the below devices with ESPHome firmware which I have full control over! You can see my code at my esphome-config GitHub repository.

Shelly 1 boards

Device recommendations: shelly 1 (1 pack, 2 pack), shelly 2

These devices are great for shoving in a box behind a light switch to add smarts.

Project ideas

  1. Hue bulb functional light switch: my dining room has a 9 bulb chandelier, this provides constant power, while allowing the switch to remain functional.
  2. Smart bathroom exhaust fan
    2a. turns the fan off after 10 minutes when manually turned on (note: a battery powered motion sensor resets the countdown).
    2b. turns the fan on then back off when the humidity is up due to a shower (note: a battery powered humidity sensor in the bathroom is compared to one in a neighboring room).
  3. Garage door controller: I plan to replace the cloud based chamberlain MyQ controller soon using the hook up's video for reference .

SONOFF S31 plugs

Device recommendations: S31, S31 lite

The SONOFF S31 is a reliable wi-fi controlled smart switch which can be flashed with Tasmota or ESPHome if you wish. The original S31 has power monitoring built in, while the new S31 lite omits that for a discount.

Power monitoring project ideas

Note: the relay can be left always on to put these in a monitor only mode.

  1. Monitor your washing machine so Home Assistant can notify you when your wash is ready to be hung up or moved to the dryer! No more stinky clothes!
  2. Monitor your dishwasher or clothes dryer.
  3. Monitor your 3D Printer or Laser Cutter to let you know when it is time to check out that thing you just created!

S31 lite project ideas

  1. Plug one of these into every floor and table fan you own and just ask your Google or Alexa to "turn on the bedroom fan!".
  2. Plug one into a sound machine to help you sleep at night. Have Home Assistant automatically start this when your phone starts charging for the night.

Presence detection

Life360 integration

I use Life360 for presence tracking on my son's, wife's, and my phone. This has made me comfortable enough to do things like having Home Assistant close the garage door if one of us leaves the home zone. This covers us for those few times we may forget to close the door before driving away! :)

UniFi integration

For extended family visitors I use the Home Assistant Ubiquiti UniFi integration to track when their phones are connected to my wireless access points.

Guest mode helper

Finally, I have a "Guest Mode" input_boolean setup as both a trigger and a condition on many of my lighting and front door locking automations.

Wireless communications

Bluetooth

Recommendations: Long Range USB Bluetooth Adapter, ESP32 boards, Switchbox Button Pusher, Xiaomi Mijia Thermometer 2

Home Assistant 2022.10 gave us full control of Bluetooth devices. You can even use Bluetooth Proxies to extend your bluetooth control range.

Homekit

Home assistant supports Homekit natively which opens up many quality devices that would not otherwise be available to us. Homekit also allows me to bypass Ecobee Thermostat's cloud services and control my thermostat locally!

Pros:

  • Local control of every device through Home Assistant (no Apple devices needed)!
  • Additional quality devices.

Cons:

  • Devices can be more costly.

Software defined radio

Recommendations: NooElec NESDR Mini 2 SDR, AcuRite Outdoor Thermometer, AcuRite Fridge and Freezer Thermometer

Wi-fi: Ubiquiti Unifi

Recommendations: Unifi 6 lite access point (wi-fi 6), Unifi AC-PRO access point (802.11ac, one upstairs and one at the back of the house), Unifi security gateway

Eventually you outgrow even the fanciest home wi-fi setup. There were just too many devices for my Netgear orbi mesh networking system to handle, so I had to upgrade to a business grade solution.

Pros:

  • Rock solid wi-fi all throughout the house.
  • Household members don't complain about the wi-fi anymore!
  • Long ethernet cable runs make all access points equally fast!

Cons:

  • Requires a long ethernet cable run to each access point. (But also a "pro"... see the last point above.)

Zigbee

Recommendation: Phoscon conbee II USB gateway, Aqara Devices: Leak Sensor, Temperature Sensor, Door/Window Sensor, Motion Sensor, Plug with Energy Monitoring, Push Button Remote

Zigbee2MQTT now runs all of my zigbee devices. This includes the new Inovelli Blue Switch, all of my philips hue bulbs, and lots of Aqara sensors!

Z-wave

Recommendation: Aeotec Z-Stick Gen5 Plus

As of February 2021 Home Assistant's Z-Wave JS integration directly runs all of my z-wave devices. To be precise I am running Zwavejs2Mqtt] with MQTT disabled so I can make use of the z-wave device management UI built in. This includes several in-wall switches and dimmers, smoke detectors, and a bulb.

Technical details

Our Home Assistant install has 286 devices featuring 1,495 entities, including 694 sensors. My YAML files contain 38,418 lines of code. All of my configuration files are tested against the most stable version of home-assistant using Github Actions.

23 Custom integrations

Adaptive Lighting custom component for Home AssistantAuthors:@basnijholt, @RubenKelevra, @th3w1zard1, @protyposis.

Anniversary Countdown Sensor for Home AssistantAuthors:@pinkywafer.

Climate entity for controlling eight sleep bedAuthors:@amosyuen.

Frigate integration for Home AssistantAuthors:@blakeblackshear.

Authors:@simbaja.

Authors:@ludeeus.

Home Assistant Google Home custom componentAuthors:@leikoilja, @DurgNomis-drol, @ArnyminerZ, @KapJI.

HACS gives you a powerful UI to handle downloads of all your custom needs.Authors:@ludeeus.

📅 Custom Home Assistant integration for public holidays - also used for garbage_collection integration to automatically move scheduled events that fall on a public holiday (by an automation blueprint)Authors:@bruxy70.

Authors:@rospogrigio, @postlund.

Lovelace notification / alert component for Home AssistantAuthors:@rr326.

Authors:@finity69x2.

Authors:@ryanwinter.

Authors:@jaruba, @ollo69, @screwdgeh.

Home Assistant Custom Component for Wyze VacuumAuthors:romedtino.

Authors:@ollo69.

Home Assistant Sun2 SensorAuthors:@pnbruckner.

Authors:@jchasey.

Determines your next Waste Management (https://www.wm.com) pickup times for use in Home Assistant.Authors:@dcmeglio.

Home Assistant custom integration to keep track of missing entities and services in your config filesAuthors:@dummylabs.

Home Assistant Integration for Wyze devices.Authors:@SecKatie.

30 lovelace plugins

📈 A Lovelace card to display advanced graphs and charts based on ApexChartsJS for Home Assistant

An advanced calendar card for Home Assistant Lovelace.

🔹Automatically populate the entities-list of lovelace cards

Bubble Card is a minimalist card collection for Home Assistant with a nice pop-up touch.

🐤 Adds many useful extensions to lovelace, such as templating secondary info, stacking within a card and more!

🔹 Add CSS styles to (almost) any lovelace card

🔹A collection of tools for other lovelace plugins to use

A Home Assistant Card indicating today's date/time, along with an iOS inspired weather forecast for the next days with animated icons

🧹 Declutter your lovelace configuration with the help of this card

Flipdown Timer Card for Home Assistant Lovelace

🔹 A foldable row for entities card, containing other rows

A Lovelace card for Frigate in Home Assistant

🙈 Hides the Home Assistant header and/or sidebar

🔹 Get more control over the placement of lovelace cards.

A custom Lovelace card for displaying a combination of persistent notifications, calendar events, and entities in the style of a feed.

Minimalistic graph card for Home Assistant Lovelace UI

🔹 Display the more-info dialog of any entity as a lovelace card

Show multiple entity states and attributes on entity rows in Home Assistant's Lovelace UI

Mushroom Cards - Build a beautiful dashboard easily 🍄

Replace input_number sliders with plus and minus buttons

An intuitive way to represent the power and energy that your home is consuming or producing. (A custom card for the Lovelace UI of Home Assistant.)

🔒 Apply restrictions to Lovelace cards

A different take on the thermostat card for Home Assistant ♨️

🔹Dynamically replace lovelace cards depending on occasion

Card that allows you to swipe throught multiple cards for Home Assistant Lovelace

a custom card for home assistant that utilizes tabs to segregate individual cards.

A progress bar display for Home Assistant timers

Vacuum cleaner card for Home Assistant Lovelace UI

Weather Card with animated icons for Home Assistant Lovelace

A rain radar card using the tiled images from RainViewer

Home Assistant community

Community Forum Discord

The following are just some of the people that have inspired my smart home.

Carlo

I aspire to Carlo's level of home connectedness. I have taken baby steps to giving my home a voice, but my speech routines are not being utilized quite as elegantly as at Carlo's house!

DrZzs

I wish I could be more like this guy. He is just so darn positive and happy all of the time. He taught me how to "Tasmota". I like to have one of his videos or streams playing in the background while I am coding.

Frenck

I refactored my yaml files to be similar to his config (as discussed in this video).