home-assistant-config

Apocrathia's Home Assistant Configuration Files

View project on GitHub

Apocrathia’s Home Assistant Configuration Files

Project Maintenance License

GitHub Activity GitHub Last Commit

GitHub Actions

GitHub Stars GitHub Watchers GitHub Forks

Discord Community Forum

Buy Me A Coffee


My Home Assistant Default View

Architecture

The production instance of Home Assistant is running via the Home Assistant Operating System on an old MacBook Pro, with a remote instance running on another old MacBook Pro which has multiple USB radios connected (Currently Zigbee, Z-Wave, and an RTL-SDR dongle for 433mhz devices).

This is done for multiple reasons:

  • Allow HA to communicate directly with wireless devices without the need for an external hub.
  • Prevent having to pass USB devices through to virtual machines.
  • Enable VMware to migrate the main HA VM across hosts within the cluster based upon load.
  • Place radios in a more central location with better reception.

Update 20230518

This is pending a refresh. The following tasks are planned:

  • Migrate back to a VM. (However, I have converted all of my VMware hosts to Proxmox.)
  • Migrate radios to strategically placed Raspberry Pi’s. (Host management is the issue there.)

My Home Assistant Architecture

Instances are linked together using Lukas Hetzenecker’s home-assistant-remote custom_component, which allows for all configuration to be completed within Home Assistant, without the need to worry about using USB/IP or socat to push the devices over the network. I’ve looked into using MQTT discovery, but the issue is advertisement intervals. Devices show up instantly with the homeassistant-remote component, even after restarts.

General Information

This configuration controls a couple of significant features in my smart home.

  • Alarm Clock using my bedroom lights and TV
  • Turning on/off lights at sunset/sunrise
  • Arming the alarm system when nobody is home
  • Security lighting when motion is detected at my front door

Note: Private information is stored in secrets.yaml (not uploaded)