Home Assistant: Convierte Tu Servidor en Cerebro Domótico 2025
¿Te gustaría que tu robot punk pudiera encenderte la luz cuando entras en casa, poner la cafetera a las 7:00 o incluso perseguir a la aspiradora cuando se rebela? Home Assistant es la plataforma de domótica open source que convierte tu servidor casero en el cerebro de tu hogar inteligente, sin depender de la nube ni de apps de fabricantes.
En esta guía aprenderás:
- Qué es Home Assistant y por qué es mejor que Google/Alexa
- Instalación Home Assistant Container con Docker (método 2025)
- Instalación Home Assistant OS en VM/Raspberry Pi
- Configuración inicial paso a paso
- Integrar dispositivos (Philips Hue, Xiaomi, Tuya, MQTT)
- Crear automatizaciones sin código
- Backups y actualización
- Troubleshooting problemas comunes
🤔 ¿Qué es Home Assistant?
Home Assistant (HA) es una plataforma open-source que centraliza control de todos tus dispositivos smart home desde una sola interfaz, corriendo en tu propio servidor local (sin nube obligatoria).
Ventajas vs Google Home/Alexa/Apple HomeKit:
- ✅ 100% local (no envía datos a la nube)
- ✅ Soporta 2000+ integraciones (casi cualquier dispositivo)
- ✅ Automatizaciones avanzadas (sin límites tontos)
- ✅ Gratis (sin suscripciones mensuales)
- ✅ Control total (tú decides qué hace tu casa)
- ✅ Funciona sin internet (si internet cae, tu casa sigue funcionando)
Dispositivos compatibles: Philips Hue, IKEA Tradfri, Xiaomi Mi Home, Tuya/Smart Life, Sonoff, Shelly, TP-Link, Broadlink, Google Nest, Amazon Echo, Apple HomeKit, Zigbee, Z-Wave, MQTT, ESPHome, y 2000+ más.
📊 Home Assistant OS vs Container: ¿Cuál elegir?
| Característica | Home Assistant OS | Home Assistant Container |
|---|---|---|
| Setup | Imagen ISO → VM/SD card → Listo | Docker Compose manual |
| Add-ons | ✅ 100+ add-ons con 1 clic (MQTT, Zigbee2MQTT, etc) | ❌ Debes instalar tú (containers separados) |
| Updates | ✅ 1 clic en UI | ⚠️ Manual (docker compose pull) |
| Backups | ✅ Built-in automáticos | ⚠️ Debes configurar tú |
| Dificultad | Beginner-friendly | Avanzado (CLI, Docker) |
| Recursos | Dedicado (VM completa o hardware) | Comparte servidor con otros servicios |
| Hardware | Raspberry Pi, VM, PC dedicado | Cualquier servidor con Docker |
| Recomendado para | Usuario normal, principiantes, dedicado | Homelab existente, múltiples servicios |
Decisión rápida:
- 🏠 Tengo Raspberry Pi sin usar: Home Assistant OS
- 🐳 Ya tengo servidor Docker con 20 servicios: Home Assistant Container
- 🖥️ Tengo Proxmox/ESXi: Home Assistant OS en VM
- 🆕 Empezando desde cero: Home Assistant OS (más fácil)
🚀 Método 1: Home Assistant Container (Docker)
Para quien ya tiene servidor Docker y quiere añadir Home Assistant junto a otros servicios.
⚠️ Importante 2025: Home Assistant Container NO soporta add-ons. Necesitarás instalar servicios como MQTT, Zigbee2MQTT, NodeRED como containers separados.
Requisitos:
- Docker y Docker Compose instalados
- 2 GB RAM mínimo (recomendado 4 GB)
- 32 GB espacio disco
- Linux (Ubuntu, Debian, Raspberry Pi OS)
Instalación:
Crear carpeta y docker-compose.yml:
mkdir ~/homeassistant && cd ~/homeassistant
nano docker-compose.yml
docker-compose.yml:
version: '3.8'
services:
homeassistant:
container_name: homeassistant
image: ghcr.io/home-assistant/home-assistant:stable
restart: unless-stopped
privileged: true
network_mode: host
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
- /run/dbus:/run/dbus:ro
environment:
- TZ=Europe/Madrid
Explicación importante:
network_mode: host– Necesario para auto-discovery de dispositivos (Chromecast, Philips Hue, etc)privileged: true– Para acceder a USB (dongles Zigbee, Z-Wave)/run/dbus– Para integraciones Bluetooth
Arrancar:
docker compose up -d
docker compose logs -f
Espera 2-3 minutos. Cuando veas: "Home Assistant initialized", accede a:
http://TU_IP_SERVER:8123
Añadir Servicios Adicionales (MQTT, Zigbee2MQTT)
Como Container no tiene add-ons, añade servicios necesarios al mismo docker-compose.yml:
version: '3.8'
services:
homeassistant:
container_name: homeassistant
image: ghcr.io/home-assistant/home-assistant:stable
restart: unless-stopped
privileged: true
network_mode: host
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
- /run/dbus:/run/dbus:ro
environment:
- TZ=Europe/Madrid
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto:latest
restart: unless-stopped
ports:
- "1883:1883"
- "9001:9001"
volumes:
- ./mosquitto/config:/mosquitto/config
- ./mosquitto/data:/mosquitto/data
- ./mosquitto/log:/mosquitto/log
zigbee2mqtt:
container_name: zigbee2mqtt
image: koenkk/zigbee2mqtt:latest
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./zigbee2mqtt/data:/app/data
- /run/udev:/run/udev:ro
devices:
- /dev/ttyUSB0:/dev/ttyACM0
environment:
- TZ=Europe/Madrid
Cambia /dev/ttyUSB0 por tu dongle Zigbee (encuentra con ls /dev/tty*)
🖥️ Método 2: Home Assistant OS (Recomendado Principiantes)
Sistema operativo dedicado con Home Assistant pre-instalado + add-ons + updates automáticos.
Opción A: Raspberry Pi (Hardware Dedicado)
Hardware necesario:
- Raspberry Pi 4 (4 GB RAM) o Pi 5
- MicroSD 32 GB (mínimo clase 10, recomendado A2)
- Fuente alimentación oficial Raspberry Pi
- Cable ethernet (WiFi funciona pero ethernet mejor)
Pasos:
1. Descargar imagen oficial:
https://www.home-assistant.io/installation/raspberrypi
Descarga: haos_rpi4-64_XX.X.img.xz
2. Flashear SD con Raspberry Pi Imager:
- Descarga: Raspberry Pi Imager
- Choose OS → Use custom → Selecciona imagen descargada
- Choose Storage → Tu microSD
- Write
3. Insertar SD en Raspberry Pi, conectar ethernet, encender
4. Esperar 5-10 minutos (primera vez tarda, descarga updates)
5. Acceder desde navegador:
http://homeassistant.local:8123
O si no funciona:
http://IP_RASPBERRY:8123
Opción B: Máquina Virtual (Proxmox/ESXi/VirtualBox)
Proxmox (recomendado):
1. Descargar imagen QCOW2:
https://www.home-assistant.io/installation/linux
2. Subir a Proxmox via WebUI o SSH:
cd /var/lib/vz/images
wget https://github.com/home-assistant/operating-system/releases/download/XX.X/haos_ova-XX.X.qcow2.xz
unxz haos_ova-XX.X.qcow2.xz
3. Crear VM en Proxmox:
qm create 100 --name homeassistant --memory 4096 --cores 2 --net0 virtio,bridge=vmbr0
qm importdisk 100 haos_ova-XX.X.qcow2 local-lvm
qm set 100 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-100-disk-0
qm set 100 --boot c --bootdisk scsi0
qm set 100 --onboot 1
qm start 100
4. Ver consola en Proxmox, esperar a ver IP
5. Acceder: http://IP_VM:8123
VirtualBox (Windows/Mac):
1. Descargar imagen VDI:
https://www.home-assistant.io/installation/windows
2. VirtualBox → Nueva VM:
- Tipo: Linux, Debian 64-bit
- RAM: 4 GB
- Disco: Usar VDI descargado
- Red: Adaptador puente
3. Iniciar VM, esperar 5-10 min
4. Ver IP en consola VM
5. Acceder desde navegador host: http://IP_VM:8123
🔧 Configuración Inicial Paso a Paso
1. Crear Cuenta
Primera vez que accedes a http://IP:8123:
- Create account
- Nombre: Tu nombre
- Username: usuario (para login futuro)
- Password: contraseña fuerte
- Next
2. Configurar Ubicación
Home Assistant usa ubicación para:
- Sunrise/sunset (automatizaciones por horario solar)
- Weather info
- Zona horaria correcta
Puedes poner ubicación aproximada (no necesita ser exacta)
3. Auto-Discovery Dispositivos
Home Assistant escanea red automáticamente y detecta:
- Chromecast
- Philips Hue bridges
- Samsung TVs
- Routers FRITZ!Box
- Sonos speakers
- Y 100+ dispositivos más
Haz clic en cada dispositivo detectado → Configure → Sigue wizard
4. Añadir Integraciones Manuales
Para dispositivos no auto-detectados:
Settings → Devices & Services → Add Integration
Integraciones populares:
- MQTT: Para dispositivos Tasmota, ESPHome, Zigbee2MQTT
- Tuya: Dispositivos Smart Life/Tuya
- Xiaomi Mi Home: Sensores Aqara, bombillas Yeelight
- Shelly: Relés smart WiFi
- TP-Link Kasa: Enchufes inteligentes
- Google Cast: Chromecasts, Google Home
- Spotify: Control de música
- Weather: Pronóstico meteorológico
🤖 Crear Tu Primera Automatización
Ejemplo: Encender luces al atardecer si estás en casa.
Settings → Automations & Scenes → Create Automation → Start with empty automation
Trigger (cuándo):
Trigger type: Sun
Event: Sunset
Offset: -30 minutes (30 min antes del atardecer)
Condition (si):
Condition type: Zone
Zone: Home
Entity: person.tu_nombre (tú)
State: Home
Action (entonces):
Action type: Call service
Service: light.turn_on
Target: light.salon
Data:
brightness: 80
Save → Ponle nombre: «Luces atardecer»
¡Listo! Ahora 30 min antes del atardecer, si estás en casa, luces del salón se encienden al 80%.
Ejemplos Automatizaciones Útiles
1. Avisar si dejas ventana abierta y empieza a llover:
- Trigger: Weather condition = rainy
- Condition: Binary sensor ventana_salon = open
- Action: Notify móvil «¡Ventana salón abierta y está lloviendo!»
2. Cafetera encender a las 7am solo días laborables:
- Trigger: Time 07:00
- Condition: Workday sensor = true
- Action: Switch.turn_on switch.cafetera
3. Luces apagar automáticamente si no hay movimiento 10 min:
- Trigger: Binary sensor motion_salon = off for 10 minutes
- Action: Light.turn_off light.salon
📱 App Móvil (iOS/Android)
Descarga app oficial: Home Assistant (App Store / Google Play)
Configurar app:
- Abrir app → «I have an existing Home Assistant»
- Home Assistant detecta instancia local automáticamente
- O introduce manualmente:
http://IP:8123 - Login con usuario + contraseña
- Permitir notificaciones (para avisos automatizaciones)
- Permitir localización (para presence detection automático)
App permite:
- Control todos dispositivos desde móvil
- Recibir notificaciones automatizaciones
- Presence detection (HA sabe si estás en casa por GPS móvil)
- Shortcuts iOS / Widgets Android
💾 Backups y Actualización
Backups (Home Assistant OS)
Settings → System → Backups → Create backup
Backup automático: Instalar add-on «Google Drive Backup»
Supervisor → Add-on Store → Google Drive Backup → Install
Configura credenciales Google Drive, backup diario automático a nube.
Backups (Home Assistant Container)
Crear script backup:
#!/bin/bash
BACKUP_DIR="/home/user/backups/homeassistant"
DATE=$(date +%Y-%m-%d_%H-%M-%S)
mkdir -p "$BACKUP_DIR"
# Parar contenedor
docker stop homeassistant
# Backup carpeta config
tar -czf "$BACKUP_DIR/ha-config-${DATE}.tar.gz" \
-C /home/user/homeassistant config
# Reiniciar
docker start homeassistant
# Limpiar backups antiguos (30 días)
find "$BACKUP_DIR" -name "ha-config-*.tar.gz" -mtime +30 -delete
echo "Backup completado: ha-config-${DATE}.tar.gz"
Programar con cron:
0 3 * * * /home/user/scripts/backup-homeassistant.sh
Actualizar Home Assistant
Home Assistant OS:
Settings → System → Updates → Update available → Update
Home Assistant Container:
cd ~/homeassistant
docker compose pull
docker compose down
docker compose up -d
🔧 Troubleshooting Problemas Comunes
No detecta dispositivos en red
Causa: network_mode no es host
Solución: En docker-compose.yml asegura network_mode: host
Dongle Zigbee/Z-Wave no funciona
Causa: Permisos USB
Solución:
# Ver dongles disponibles
ls -la /dev/tty*
# Dar permisos usuario
sudo usermod -aG dialout $USER
# Reiniciar contenedor
docker compose restart
Home Assistant muy lento
Causas:
- Recorder guardando mucho historial (default 10 días)
- SD card lenta (Raspberry Pi)
- Muchas integraciones polling rápido
Soluciones:
Limitar recorder (configuration.yaml):
recorder:
purge_keep_days: 3
exclude:
domains:
- sun
- weather
Migrar a SSD (Raspberry Pi):
- Boot desde SSD USB mucho más rápido que SD
Integración no carga tras actualización
Solución: Recargar integración
Settings → Devices & Services → Integración con problema → 3 dots → Reload
Si no funciona: Delete → Re-add integration
«Unhealthy» en Home Assistant Container
Causa: No arranca correctamente, puerto ocupado, permisos
Solución:
# Ver logs detallados
docker logs homeassistant
# Verificar puerto 8123 libre
sudo netstat -tulpn | grep 8123
# Si está ocupado, matar proceso
sudo kill -9 PID
📊 Comparativa Home Assistant vs Alternativas
| Plataforma | Open Source | Local | Integraciones | Automatizaciones | Coste |
|---|---|---|---|---|---|
| Home Assistant | ✅ | ✅ | 2000+ | Ilimitadas avanzadas | Gratis |
| Google Home | ❌ | ❌ | 1000+ | Básicas limitadas | Gratis |
| Amazon Alexa | ❌ | ❌ | 1500+ | Básicas (Routines) | Gratis |
| Apple HomeKit | ❌ | ⚠️ Parcial | 500+ | Básicas | Gratis (requiere Apple) |
| Hubitat | ❌ | ✅ | 300+ | Avanzadas | $150 (hardware) |
| openHAB | ✅ | ✅ | 400+ | Avanzadas | Gratis |
Home Assistant gana en: Integraciones, flexibilidad, privacidad, comunidad activa, gratis.
🔗 Recursos Adicionales
- Home Assistant Official – Web oficial
- Home Assistant Community – Foro oficial
- Integrations List – 2000+ integraciones
❓ Preguntas Frecuentes
¿Home Assistant funciona sin internet?
Sí, 100%. Home Assistant corre localmente. Si internet cae, tus automatizaciones locales siguen funcionando (luces, sensores, etc). Solo pierdes servicios cloud (Spotify, weather forecast, actualizaciones). Por eso es superior a Google/Alexa que dejan de funcionar sin internet.
¿Necesito saber programar para usar Home Assistant?
No. La UI permite crear automatizaciones sin código (visual editor drag & drop). Para cosas avanzadas puedes usar YAML (config as code) pero no es obligatorio. 90% de usuarios usan solo UI.
¿Puedo migrar desde Google Home/Alexa a Home Assistant?
Sí, fácil. Home Assistant soporta Google Cast y Alexa como integraciones. Puedes: 1) Controlar HA desde Google/Alexa (voice control), 2) Migrar dispositivos gradualmente (empiezas con HA + Google, poco a poco migras todo a HA). No es «todo o nada», conviven perfectamente.
¿Qué hardware recomiendas para empezar?
Raspberry Pi 4 (4 GB RAM) + microSD A2 32 GB + fuente oficial = ~€80. Es suficiente para 50+ dispositivos. Si quieres máxima performance: Mini PC x86 (€150) o VM en Proxmox si ya tienes servidor. Evita Raspberry Pi 3 o inferiores (muy lentos).
¿Home Assistant Container vs OS: cuál es mejor?
Depende. OS: Más fácil, updates 1-clic, add-ons gratis, recomendado 90% usuarios. Container: Para homelab avanzado con múltiples servicios Docker, más control, pero sin add-ons (instalas servicios separados). Si dudas: OS.
¿Cómo añado dispositivos Zigbee/Z-Wave?
Necesitas dongle USB (€15-30). Zigbee: Conbee II, Sonoff Zigbee 3.0, Texas Instruments CC2652. Z-Wave: Aeotec Z-Stick. Conectas dongle a Raspberry/servidor, instalas Zigbee2MQTT (OS: add-on, Container: container separado), desde Zigbee2MQTT añades dispositivos en modo pairing. Luego aparecen automáticamente en HA via MQTT.
¿Puedo acceder a Home Assistant desde fuera de casa de forma segura?
Sí, 3 métodos: 1) Nabu Casa Cloud: $6.50/mes, oficial, súper fácil, soporta desarrollo HA. 2) Cloudflare Tunnel: Gratis, requiere dominio, setup medio. 3) Tailscale VPN: Gratis, muy seguro, requiere app en móvil. NO abras puerto 8123 directo a internet (inseguro).
¿Home Assistant consume mucha electricidad?
Raspberry Pi 4: ~3-5W idle, ~€8/año electricidad (24/7). Mini PC x86: ~10-15W, ~€25/año. Es un servidor 24/7 pero consumo despreciable. Comparable a router WiFi.
¿Qué pasa si actualizo Home Assistant y se rompe?
Por eso backups automáticos son críticos. Si update rompe algo: Settings → System → Backups → Restore backup anterior. Tarda 5 min, vuelve a estado pre-update. Recomendación: hacer backup manual ANTES de updates mayores (ej: 2024.11 → 2025.1).
¿Puedo controlar Home Assistant con voz sin Google/Alexa?
Sí, con Assist (voice assistant local de HA, introducido 2023). Requiere: 1) Micrófono/altavoz (ESPHome device o móvil), 2) Whisper (speech-to-text local, add-on), 3) Piper (text-to-speech local, add-on). 100% local, sin enviar voz a la nube. Menos potente que Google pero funcional.
¿Cuántos dispositivos soporta Home Assistant en Raspberry Pi 4?
Raspberry Pi 4 (4 GB): ~100-150 dispositivos cómodamente. Con optimización (limitar recorder, deshabilitar logs verbose): hasta 200+. Si necesitas más: migra a Mini PC x86 o servidor potente. El límite suele ser I/O de SD card, no RAM/CPU.
¿Home Assistant puede hacer que X dispositivo funcione offline si solo funciona con app cloud?
Depende del dispositivo. Si tiene integración HA local (ej: Shelly, Tasmota): sí, puedes usarlo 100% local flasheando firmware open-source. Si es device cloud-only (ej: cámaras baratas chinas): no hay magia, sigue necesitando cloud. Antes de comprar dispositivos, verifica en https://www.home-assistant.io/integrations/ si tiene integración local.
💡 Conclusión
Home Assistant convierte tu servidor casero en el cerebro de tu hogar inteligente, con control total, privacidad, y sin suscripciones mensuales.
Recomendación según caso:
- 🏠 Principiante absoluto: Raspberry Pi 4 + Home Assistant OS + pocos dispositivos para empezar
- 🐳 Ya tengo homelab Docker: Home Assistant Container + MQTT + Zigbee2MQTT containers
- 🖥️ Tengo Proxmox/ESXi: VM con Home Assistant OS (4 GB RAM, 2 cores)
- 💰 Budget cero: Prueba en VirtualBox en tu PC, si te gusta compra Raspberry Pi
Próximos pasos:
- Instalar Home Assistant (método que elijas)
- Añadir primeros dispositivos (luces, enchufes smart)
- Crear automatización simple (luces al atardecer)
- Configurar app móvil (presence detection)
- Setup backup automático
- Expandir con más dispositivos y automatizaciones complejas
¿Ya tienes Home Assistant corriendo? Comparte tu automatización favorita en los comentarios.
