← All articles

Home Assistant: The Open Source Smart Home Hub That Replaces Everything

2026-02-08 · Smart Home home-assistant smart-home automation iot

You've got a Philips Hue app for lights, a Ring app for the doorbell, a Nest app for the thermostat, an Ecobee app for sensors, and a SmartThings app trying to tie it all together. Each ecosystem wants a subscription, each app has a different UI, and none of them talk to each other properly.

Home Assistant is an open source smart home platform that controls everything from a single interface — and it runs entirely on your local network. No cloud dependency, no subscriptions, no vendor lock-in.

What Home Assistant Does

Home Assistant is a hub that connects to your smart devices and lets you control and automate them from one place:

It supports over 2,000 integrations. If a device has an API or uses a standard protocol (Zigbee, Z-Wave, MQTT), Home Assistant probably supports it.

Why Not Just Use Alexa/Google Home?

Feature Alexa/Google SmartThings Home Assistant
Voice control Yes Via Alexa/Google Yes (via add-ons)
Local control Some Some Yes (primary)
Cloud dependency Required Required Optional
Automation power Basic Medium Extremely powerful
Custom dashboards No Limited Fully customizable
Device support Limited to partners Good Best (2000+)
Privacy Poor Medium Excellent
Monthly cost Free (+ Prime) Free Free
Works during internet outage No No Yes

The killer advantage: local control. When your internet goes down, Alexa and Google Home stop working. Home Assistant continues operating because it talks directly to your devices over your local network.

Installation Options

Option 1: Dedicated hardware (recommended)

The easiest path is Home Assistant OS on dedicated hardware:

Flash the image to an SD card (or SSD for better reliability), boot it up, and you're running in 5 minutes.

Option 2: Docker

If you already have a server:

services:
  homeassistant:
    image: ghcr.io/home-assistant/home-assistant:stable
    restart: unless-stopped
    privileged: true
    network_mode: host
    volumes:
      - ha_config:/config
      - /run/dbus:/run/dbus:ro
    environment:
      TZ: America/Los_Angeles

volumes:
  ha_config:

Note: network_mode: host and privileged: true are needed for device discovery and Bluetooth/USB access. This is one case where these Docker flags are justified.

Option 3: Virtual machine

Run Home Assistant OS in a VM on Proxmox, VMware, or VirtualBox. This gives you the full experience (including add-ons and updates) with the flexibility of virtualization.

First Steps After Installation

1. Set up integrations

Home Assistant auto-discovers devices on your network. Check Settings → Devices & Services — you'll likely see several devices already detected.

For Zigbee devices, you'll need a Zigbee coordinator:

Plug it in, add the ZHA (Zigbee Home Automation) integration, and start pairing devices.

2. Build your dashboard

Home Assistant's dashboard (Lovelace) is fully customizable:

# Example dashboard card
type: entities
title: Living Room
entities:
  - entity: light.living_room_main
    name: Main Light
  - entity: light.living_room_lamp
    name: Floor Lamp
  - entity: climate.living_room
    name: Thermostat
  - entity: sensor.living_room_temperature
    name: Temperature

Or use the visual editor to drag and drop cards without writing YAML.

3. Create automations

This is where Home Assistant really shines. A few examples:

Turn on lights at sunset:

automation:
  - trigger:
      platform: sun
      event: sunset
      offset: "-00:30:00"
    action:
      service: light.turn_on
      target:
        entity_id: light.porch

Send a notification when someone arrives home:

automation:
  - trigger:
      platform: state
      entity_id: person.david
      to: home
    action:
      service: notify.mobile_app
      data:
        message: "David just arrived home"

Adjust thermostat based on presence:

automation:
  - trigger:
      platform: state
      entity_id: group.family
      to: not_home
      for: "00:30:00"
    action:
      service: climate.set_temperature
      target:
        entity_id: climate.main
      data:
        temperature: 62

The automation engine supports conditions, triggers based on time/state/location/sun/templates, and actions that can call any service in the system. It's dramatically more powerful than what any cloud-based smart home offers.

The Mobile App

Home Assistant has excellent mobile apps for iOS and Android that provide:

For remote access without exposing your server to the internet, use the Nabu Casa cloud service ($6.50/month — this funds HA development) or set up your own reverse proxy with WireGuard.

Zigbee vs. Z-Wave vs. WiFi

Choosing the right protocol for your devices matters:

Protocol Range Mesh Battery Life Devices Available Interference
Zigbee Good Yes Excellent Many WiFi can interfere
Z-Wave Good Yes Excellent Moderate Low
WiFi Best No Poor Most Crowded 2.4 GHz
Thread/Matter Good Yes Good Growing Low

For most people: Start with Zigbee. It's the most cost-effective, has excellent battery life for sensors, and has the widest device selection. Add a Zigbee coordinator to Home Assistant and buy Zigbee-compatible devices (IKEA Tradfri, Aqara, Sonoff — all much cheaper than name brands).

Common Pitfalls

The Bottom Line

Home Assistant is the most capable smart home platform available — open source or otherwise. It requires more setup time than plugging in an Alexa, but the result is a smart home that works locally, integrates everything, and gives you automation capabilities that cloud platforms can't match.

The community is massive and active. If a device exists, someone has probably already written an integration for it. And once you experience automations that actually work reliably (because they're local, not cloud-dependent), you won't go back.