Automatizace domácnosti s Home Assistant - kompletní průvodce

Home Assistant je open-source platforma pro řízení chytré domácnosti, která dává úplnou kontrolu nad vašimi zařízeními. Oproti komerčním řešením nabízí neomezené možnosti automatizace, podporu téměř všech IoT zařízení a funguje lokálně bez cloudu.
Co je Home Assistant a proč ho použít?
Home Assistant (HA) je Python aplikace, která slouží jako centrální řídící jednotka pro všechna chytrá zařízení v domácnosti. Klíčové výhody:
Výhody oproti komerčním řešením
- Lokální provoz - žádná závislost na cloudu
- Otevřený kód - průhlednost a bezpečnost
- Neomezená integrace - podpora 2000+ komponent
- Žádné měsíční poplatky - jednou koupíte hardware
- Plná kontrola - vlastníte svá data
Podpora zařízení
- Zigbee/Z-Wave (přes USB dongle)
- WiFi IoT (ESP8266/ESP32)
- Značky: Shelly, Sonoff, Tasmota, ESPHome
- Systémy: Philips Hue, IKEA, Xiaomi
- Mediální: Chromecast, Spotify, Plex
Instalace Home Assistant
Varianta 1: Home Assistant OS (doporučeno)
Hardware požadavky:
- Raspberry Pi 4 (4GB RAM minimum)
- MicroSD karta 32GB (Class 10)
- Napájecí adaptér 5V/3A
- USB dongles (Zigbee/Z-Wave)
Instalace:
Stáhněte obraz:
- home-assistant.io/installation
- Vyberte Raspberry Pi 4
Nahrání na SD kartu:
# Linux/Mac sudo dd if=haos_rpi4-64.img of=/dev/sdX bs=1M # Windows - použijte Raspberry Pi Imager
První spuštění:
- Vložte SD kartu do Pi
- Připojte LAN kabel
- Zapojte napájení
- Počkejte 5-10 minut na boot
Webové rozhraní:
- Otevřete
http://IP_ADRESA:8123
- Vytvořte admin účet
- Pojmenujte domácnost
- Otevřete
Varianta 2: Docker na PC/NAS
# Docker Compose
version: '3'
services:
homeassistant:
container_name: homeassistant
image: ghcr.io/home-assistant/home-assistant:stable
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
privileged: true
network_mode: host
Varianta 3: Home Assistant Green
Oficiální hardware od HA:
- Cena: ~$100 (3000 Kč)
- Plug & play řešení
- Integrovaný Zigbee
- Podpora SkyConnect USB
Základní konfigurace
Úvodní nastavení
Místní nastavení:
# configuration.yaml homeassistant: name: Domov latitude: 50.0755 longitude: 14.4378 elevation: 200 unit_system: metric time_zone: Europe/Prague currency: CZK country: CZ
Uživatelé a přístupy:
- Nastavení → Lidé
- Vytvořte účty pro rodinu
- Nastavte oprávnění
Oblasti (Areas):
- Obývací pokoj, ložnice, kuchyň
- Přiřadíte jim zařízení
- Používá se pro automatizace
Důležité integrace
Počasí:
# configuration.yaml
weather:
- platform: openweathermap
api_key: VAS_API_KLIC
name: Praha
Mobilní aplikace:
mobile_app:
notify:
- name: mobile
platform: group
services:
- service: mobile_app_telefon
Přidávání zařízení
WiFi zařízení (Shelly, Sonoff)
Automatická detekce:
- Nastavení → Zařízení a služby
- Klikněte "Přidat integraci"
- HA automaticky najde zařízení v síti
Manuální přidání:
# configuration.yaml
switch:
- platform: shelly
host: 192.168.1.100
name: "Světlo obývák"
Zigbee zařízení
Potřebný hardware:
- ConBee II USB stick (1500 Kč)
- Nebo Sonoff Zigbee 3.0 USB (800 Kč)
Přidání zařízení:
- Nastavení → Integrace
- Přidat Zigbee Home Automation
- Vybrat USB port dongle
- Přepnout zařízení do párování režimu
ESPHome zařízení
ESPHome je addon pro vlastní ESP zařízení:
# example-device.yaml
esphome:
name: svetlo-kuchyn
platform: ESP8266
board: d1_mini
wifi:
ssid: "VaseWiFi"
password: "VaseHeslo"
api:
password: "api-heslo"
ota:
password: "ota-heslo"
switch:
- platform: gpio
pin: GPIO5
name: "Světlo kuchyň"
id: svetlo_kuchyn
sensor:
- platform: dht
pin: GPIO4
temperature:
name: "Teplota kuchyň"
humidity:
name: "Vlhkost kuchyň"
update_interval: 60s
Tvorba automatizací
Základní automatizace
Příklad 1: Rozsvícení při návratu domů
automation:
- alias: "Světla při příchodu"
trigger:
- platform: state
entity_id: person.tomas
from: "not_home"
to: "home"
condition:
- condition: sun
after: sunset
action:
- service: light.turn_on
entity_id: light.predsin
data:
brightness: 200
- service: switch.turn_on
entity_id: switch.svetlo_obyvak
Příklad 2: Noční světlo na WC
automation:
- alias: "Noční světlo WC"
trigger:
- platform: state
entity_id: binary_sensor.pohyb_wc
to: "on"
condition:
- condition: time
after: "22:00:00"
before: "06:00:00"
action:
- service: light.turn_on
entity_id: light.wc
data:
brightness: 50
color_name: red
- delay: "00:02:00"
- service: light.turn_off
entity_id: light.wc
Pokročilé automatizace
Příklad: Imitace přítomnosti během dovolené
automation:
- alias: "Dovolená - simulace"
trigger:
- platform: sun
event: sunset
offset: "-00:30:00"
condition:
- condition: state
entity_id: input_boolean.dovolena_mod
state: "on"
action:
- repeat:
count: 3
sequence:
- service: light.turn_on
entity_id: light.obyvak
data:
brightness: !lambda "return random.randint(150, 255)"
- delay: !lambda "return random.randint(1800, 3600)"
- service: light.turn_off
entity_id: light.obyvak
- delay: !lambda "return random.randint(600, 1800)"
Příklad: Chytrý termostat podle přítomnosti
automation:
- alias: "Topení podle přítomnosti"
trigger:
- platform: state
entity_id: group.rodina
to: "not_home"
for: "00:30:00"
action:
- service: climate.set_temperature
entity_id: climate.termostat
data:
temperature: 18
- alias: "Topení při návratu"
trigger:
- platform: state
entity_id: group.rodina
from: "not_home"
to: "home"
action:
- service: climate.set_temperature
entity_id: climate.termostat
data:
temperature: 22
Dashboards a vizualizace
Lovelace UI
Základní karta:
# ui-lovelace.yaml
views:
- title: Domov
icon: mdi:home
cards:
- type: entities
title: Osvětlení
entities:
- light.obyvak
- light.kuchyn
- light.loznice
- type: thermostat
entity: climate.termostat_obyvak
- type: weather-forecast
entity: weather.domov
Pokročilé karty:
# Karta s grafy
- type: history-graph
title: Teplota 24h
entities:
- sensor.teplota_obyvak
- sensor.teplota_loznice
hours_to_show: 24
# Karta s plánkem
- type: picture-elements
image: /local/floor-plan.png
elements:
- type: state-icon
entity: light.obyvak
style:
top: 50%
left: 30%
- type: state-label
entity: sensor.teplota_obyvak
style:
top: 70%
left: 30%
Mobilní aplikace
Instalace:
- Google Play / App Store: "Home Assistant"
- Konfigurace: Nastavení → Integrace → Mobile App
Funkce:
- Push notifikace
- GPS tracking
- Rychlé akce
- Kamery na lock screenu
Integrace populárních zařízení
Shelly zařízení
# Automatická detekce přes mDNS
# Nebo manuálně:
switch:
- platform: shelly
host: 192.168.1.50
name: Shelly zásuvka
# Pro Shelly Plus série:
# Nastavení → Integrace → Shelly
Philips Hue
# Automaticky detekováno
# Nebo:
hue:
bridges:
- host: 192.168.1.2
allow_hue_groups: false
allow_unreachable: true
Sonoff zařízení (Tasmota)
# MQTT integrace
mqtt:
broker: 192.168.1.100
username: mqtt_user
password: mqtt_pass
switch:
- platform: mqtt
name: "Sonoff Basic"
state_topic: "stat/sonoff1/POWER"
command_topic: "cmnd/sonoff1/POWER"
payload_on: "ON"
payload_off: "OFF"
Xiaomi Gateway
xiaomi_aqara:
discovery_retry: 5
gateways:
- key: GATEWAY_KEY
host: 192.168.1.30
Bezpečnost a vzdálený přístup
HTTPS a SSL certifikáty
# configuration.yaml
http:
ssl_certificate: /ssl/fullchain.pem
ssl_key: /ssl/privkey.pem
server_port: 8123
Let's Encrypt certifikát:
- Add-ons → Let's Encrypt
- Konfigurace s vaší doménou
- Start addon
Vzdálený přístup
Metoda 1: Nabu Casa (placená)
- 5 USD/měsíc
- Jednoduchá konfigurace
- Podpora vývoje HA
Metoda 2: DuckDNS + Port forwarding
# Add-on DuckDNS
{
"lets_encrypt": {
"accept_terms": true,
"certfile": "fullchain.pem",
"keyfile": "privkey.pem"
},
"token": "your-duckdns-token",
"domains": ["yourdomain.duckdns.org"]
}
Metoda 3: Cloudflare Tunnel
- Žádný port forwarding
- Zdarma
- Vyšší bezpečnost
Zálohování
Automatické zálohy:
# Google Drive Backup add-on
{
"days_to_retain": 7,
"backup_time": "03:00",
"backup_name": "HA-{date}",
"exclude_folders": ["media", "tts"],
"exclude_addons": []
}
Pokročilé funkce
Node-RED automatizace
Instalace: Add-ons → Node-RED
Výhody:
- Vizuální programování
- Komplexní logika
- Debug možnosti
AppDaemon pro Python
# apps/hello.py
import appdaemon.plugins.hass.hassapi as hass
class HelloWorld(hass.Hass):
def initialize(self):
self.listen_state(self.motion_detected, "binary_sensor.motion")
def motion_detected(self, entity, attribute, old, new, kwargs):
if new == "on":
self.turn_on("light.hall")
self.run_in(self.turn_off_light, 300)
def turn_off_light(self, kwargs):
self.turn_off("light.hall")
Template senzory
sensor:
- platform: template
sensors:
power_cost_today:
friendly_name: "Dnešní náklady na energii"
unit_of_measurement: "CZK"
value_template: >-
{{ (states('sensor.daily_energy')|float * 6.5)|round(2) }}
home_occupancy:
friendly_name: "Přítomnost doma"
value_template: >-
{% set people = [
states('person.tomas'),
states('person.jana')
] %}
{{ 'home' if people|select('eq', 'home')|list|length > 0 else 'away' }}
Debugging a řešení problémů
Logy a diagnostika
# configuration.yaml
logger:
default: info
logs:
homeassistant.components.shelly: debug
homeassistant.components.mqtt: debug
Přístup k logům:
- Nástroje pro vývojáře → Protokoly
- SSH addon →
ha logs
Časté problémy
Zařízení se odpojuje:
- Zkontrolujte WiFi sílu signálu
- Router reboot
- Reservace IP adresy
Automatizace nefunguje:
- Template nástroje pro testování
- Kontrola syntax YAML
- Trace automatizace
Vysoká spotřeba RAM:
- Recorder konfigurace
- Omezení historie
- Cleanup databáze
Užitečné add-ony
Základní add-ony
- File editor - editace konfigurace
- Terminal & SSH - přístup k systému
- Samba share - sdílení složek
- Mosquitto MQTT - MQTT broker
Pokročilé add-ony
- Node-RED - vizuální automatizace
- Grafana - pokročilé grafy
- InfluxDB - databáze časových řad
- Frigate - AI detekce na kamerách
Příklady kompletních automatizací
Chytrý alarm
# Vstupní helper
input_boolean:
alarm_home:
name: Domácí alarm
icon: mdi:shield-home
automation:
- alias: "Alarm - aktivace"
trigger:
- platform: state
entity_id: group.rodina
to: "not_home"
for: "00:05:00"
action:
- service: input_boolean.turn_on
entity_id: input_boolean.alarm_home
- service: notify.mobile_app_phone
data:
title: "Alarm aktivován"
message: "Domácí alarm byl automaticky zapnut"
- alias: "Alarm - narušení"
trigger:
- platform: state
entity_id: binary_sensor.door_sensor
to: "on"
condition:
- condition: state
entity_id: input_boolean.alarm_home
state: "on"
action:
- service: light.turn_on
entity_id: all
data:
brightness: 255
- service: notify.mobile_app_phone
data:
title: "🚨 ALARM!"
message: "Detekováno otevření dveří!"
- service: media_player.play_media
entity_id: media_player.google_home
data:
media_content_id: "alarm_sound.mp3"
media_content_type: "music"
Energetická optimalizace
automation:
- alias: "Vypnutí stand-by spotřebičů"
trigger:
- platform: time
at: "23:00:00"
action:
- service: switch.turn_off
entity_id:
- switch.tv_zasuvka
- switch.pc_zasuvka
- switch.printer_zasuvka
- alias: "Nabíjení EV v noci"
trigger:
- platform: time
at: "01:00:00"
condition:
- condition: numeric_state
entity_id: sensor.car_battery
below: 80
action:
- service: switch.turn_on
entity_id: switch.ev_charger
- delay: "06:00:00"
- service: switch.turn_off
entity_id: switch.ev_charger
Závěr
Home Assistant je mocný nástroj pro každého, kdo chce mít plnou kontrolu nad svou chytrou domácností. Ano, má to learning curve, ale výsledek stojí za to. Začněte jednoduchými automatizacemi a postupně rozšiřujte podle potřeb.
Doporučení pro začátek:
- Raspberry Pi 4 s Home Assistant OS
- Několik Shelly zásuvek/vypínačů
- Mobilní aplikace
- První jednoduché automatizace
Investice ~5000 Kč vám dá základ, který můžete rozšiřovat roky.
Související články
- Smart zásuvky a jejich praktické využití
- Hlasové asistenty v české domácnosti
- Smart zavlažování zahrady