Icono del sitio Home Assistant Fácil

5 Proyectos de Domótica con Home Assistant que Transformarán Tu Hogar en 2025

¡Así ha MEJORADO mi casa DOMÓTICA este 2025!

En los últimos años, el interés por la domótica y la automatización del hogar ha crecido de forma exponencial. Sin embargo, muchos proyectos se quedan en la fase de idea o en el cajón del taller. ¿Por qué ocurre esto? La clave está en centrar nuestros esfuerzos en soluciones realmente útiles, prácticas y sencillas de utilizar en el día a día. En este artículo voy a analizar cinco proyectos concretos que he implementado en mi propia vivienda durante los últimos doce meses. Cada uno de ellos está integrado en Home Assistant y te servirá de guía para dar los primeros (o segundos) pasos en la automatización de tu casa, sin necesidad de ser un experto en electrónica.

A lo largo de estas líneas te explicaré, paso a paso y con un lenguaje cercano, cómo funcionan estos dispositivos, qué componentes necesitas, cómo configurarlos en Home Assistant y qué tipo de automatizaciones he diseñado para sacarles el máximo partido. También incluiré enlaces a documentación oficial y recursos comunitarios para que puedas profundizar en cada tema.

Si quieres ir a tiro hecho, aquí tienes los capítulos

Si quieres ir a tiro hecho, aquí tienes los capítulos del vídeo donde hablo de los 5 proyectos más increíbles de este 2025.

00:00 Introducción

01:20 Automatización de ventiladores

03:00 Automatización de la puerta del garaje

04:46 Dispositivos Zigbee a pilas

06:30 Termostato Inteligente

07:54 Guardian del buzón con Home Assistant

1. Control de ventiladores desde el teléfono móvil

1.1. Objetivo del proyecto

Durante el verano pasado era habitual perder tiempo buscando el mando a distancia del ventilador o dejarlo encendido toda la noche por si refrescaba. Mi meta fue dotar a cada ventilador de mi salón de un control inteligente que me permitiera:

1.2. Componentes necesarios

1.3. Cómo funciona el Broadlink RM4 Pro

El Broadlink RM4 Pro es un dispositivo que aprende señales por infrarrojos (IR) y radiofrecuencia (RF) a 433 MHz. Gracias a su biblioteca interna y al protocolo local, puede enviar estas señales sin salir de la red local, lo que garantiza rapidez y privacidad. No obstante, no es compatible con mandos RF con rolling code (códigos cambiantes).

En este proyecto, el RM4 Pro grabará las pulsaciones del mando del ventilador: encendido, apagado y selección de velocidades (baja, media, alta). Estos comandos se exportan a Home Assistant mediante la integración oficial de Broadlink.

1.4. Configuración en Home Assistant

  1. Instala la integración «Broadlink» desde Supervisor > Add-on Store > Broadlink.
  2. Conecta el RM4 Pro a la red Wi-Fi y anota su dirección IP.
  3. En tu archivo configuration.yaml añade:

switch:
– platform: broadlink
host: 192.168.1.50
mac: ’34:ea:34:12:ab:cd’
friendly_name: ‘RM4_Pro’

  1. Recoloca los archivos «.bin» que genera Home Assistant al aprender la señal en la carpeta «/config/broadlink».

1.5. Creación de un ventilador de plantilla

Home Assistant no entiende de ventiladores IR de forma nativa, así que definiremos cada ventilador como un «template fan». Por ejemplo:

fan:
– platform: template
fans:
ventilador_salon:
friendly_name: ‘Ventilador Salón’
value_template: «{{ is_state(‘switch.ventilador_salon’, ‘on’) }}»
turn_on:
service: switch.broadlink_send_packet_192_168_1_50
data:
packet: ‘JgKGAJKUEhISEhMSExISEhMSExISEBISExIQAhISEhMSExIS…’
turn_off:
service: switch.broadlink_send_packet_192_168_1_50
data:
packet: ‘JgKGAJKQEhITEhMSExITEhMSExITEhITEhIQAhITEhMSExIS…’
set_speed:
service: switch.broadlink_send_packet_192_168_1_50
data_template:
packet: >-
{% if speed == ‘low’ %}
JgKGASkTEhITEhMSExITEhMSExITEhIQAhITEhMSExIS…
{% elif speed == ‘medium’ %}
JgKGAToTEhITEhMSExITEhMSExITEhIQAhITEhMSExIS…
{% else %}
JgKGAS8TEhITEhMSExITEhMSExITEhIQAhITEhMSExIS…
{% endif %}

Ajusta los códigos «packet» con los archivos que hayas grabado.

1.6. Automatización para apagado nocturno

Para evitar que el ventilador se quede encendido de madrugada, podemos apagarlo junto al resto de luces y dispositivos. Un ejemplo de automatización:

automation:
– alias: ‘Apagar ventiladores al apagar luces’
trigger:
platform: state
entity_id: group.luces
to: ‘off’
action:
– service: fan.turn_off
entity_id: fan.ventilador_salon
– service: fan.turn_off
entity_id: fan.ventilador_dormitorio

De este modo, cada vez que apagues todas las luces del hogar, el sistema también detendrá los ventiladores.

1.7. Ventajas y conclusiones

Referencias

Broadlink RM4 Pro

Template Fan en Home Assistant

2. Puerta de garaje domótica con ESP32 y relé

2.1. El reto de los rolling codes

A diferencia de muchos aparatos RF sencillos, los mandos de garaje utilizan rolling code, un sistema criptográfico que cambia el código en cada pulsación. Esto impide clonar la señal con un mando universal. La solución pasa por emular la pulsación del propio mando mediante un relé seco controlado por un microcontrolador.

2.2. Materiales necesarios

2.3. Conexión eléctrica y montaje

  1. Abre con cuidado el mando de garaje. Localiza los dos puntos que, al unirse, simulan la pulsación de apertura.
  2. Solda dos cables a dichos puntos y llévalos a los contactos del relé seco.
  3. Alimenta el relé a 5 V desde el ESP32 o desde un regulador.
  4. Mete todo en una caja estanca y coloca canaletas para sujetar el paquete junto al mando.

2.4. Configuración de ESPHome

ESPHome facilita la creación de firmware para el ESP32 y su integración con Home Assistant. Añade este bloque en tu archivo .yaml de ESPHome:

esphome:
name: puerta_garaje
platform: ESP32
board: esp32dev

wifi:
ssid: ‘TU_SSID’
password: ‘TU_PASS’

mqtt:
broker: ‘192.168.1.10’
username: ‘usuario’
password: ‘pass’

switch:
– platform: gpio
id: rele_garaje
pin: GPIO23
name: ‘Rele Puerta Garaje’

binary_sensor:
– platform: homeassistant
name: ‘Estado Garaje’
id: estado_garaje
entity_id: cover.garaje

Luego, en Home Assistant, puedes exponer este switch como servicio para abrir o cerrar tu puerta de garaje.

2.5. Automatizaciones avanzadas

automation:
– alias: ‘Abrir garaje al llegar a casa’
trigger:
platform: zone
entity_id: person.luis
zone: zone.home
event: enter
action:
– service: switch.turn_on
entity_id: switch.rele_puerta_garaje

2.6. Beneficios del proyecto

Referencias

ESPHome

Rolling Code explicado

3. Gestión de sensores Zigbee alimentados por pilas

3.1. El desafío de las baterías

Los sensores Zigbee (movimiento, inundación, humo) ofrecen gran flexibilidad de ubicación gracias a su alimentación por pilas. Sin embargo, un parque de 30–50 dispositivos puede convertirse en un quebradero de cabeza si no se monitoriza el nivel de batería.

3.2. Sensores destacados

3.3. Integración en Home Assistant

La mayoría de estos dispositivos se conectan mediante un coordinador Zigbee (CC2531, Conbee II, Sonoff Zigbee 3.0). Una vez añadidos, cada sensor expone atributos importantes: battery, battery_low, battery_voltage.

3.4. Automatización de reporte semanal

Para evitar sorpresas, crearemos una automatización que envíe un informe semanal por Telegram con el estado de batería de cada sensor.

automation:
– alias: ‘Reporte semanal de baterías Zigbee’
trigger:
platform: time
at: ’08:00:00′
weekday: mon
action:
– service: notify.telegram
data:
title: ‘Estado de baterías Zigbee’
message: >-
{% for entidad in states.binary_sensor if ‘battery’ in entidad.attributes %}
• {{ entidad.name }}: {{ entidad.attributes.battery }}%
{% endfor %}

Para sensores críticos (cerraduras) puedes crear otro trigger que avise al instante si el nivel baja de un umbral, por ejemplo, 20%.

3.5. Consejos de mantenimiento

Referencias

Zigbee2MQTT

Red Zigbee en Home Assistant

4. Termostato inteligente para aire acondicionado con SwitchBot

4.1. Problema habitual de los aires acondicionado ventana

El control manual del aire acondicionado suele provocar noches de calor excesivo o frío inesperado. La solución: un «dedo robótico» (SwitchBot) que pulsa el mando del aire, junto con un termostato virtual en Home Assistant.

4.2. Componentes y configuración

4.3. Definición del termostato genérico en Home Assistant

Usamos la plataforma «generic_thermostat» para controlar el switchbot:

climate:
– platform: generic_thermostat
name: ‘AC Salón’
heater: switch.switchbot_ac
target_sensor: sensor.temperatura_salon
min_temp: 20
max_temp: 26
ac_mode: true
target_temp: 23
cold_tolerance: 0.5
hot_tolerance: 0.5
initial_hvac_mode: ‘off’
away_temp: 28

4.4. Estrategia de control basada en sensores múltiples

Para evitar que el control se base en la lectura de un solo sensor (cerca del mando), podemos promediar varias lecturas de temperatura:

sensor:
– platform: averaging
name: ‘Temperatura Promedio Habitaciones’
entities:
– sensor.temperatura_salon
– sensor.temperatura_dormitorio1
– sensor.temperatura_dormitorio2

Luego, en el climate.target_sensor usamos sensor.temperatura_promedio_habitaciones.

4.5. Automatizaciones extra

Referencias

SwitchBot API

Generic Thermostat

5. Detector de correo (Mailbox Guard) vía LoRa

5.1. Por qué LoRa y LPWAN

Colocar un sensor de apertura o movimiento en el buzón exige comunicación a larga distancia con bajo consumo. LoRa (Long Range) entra en la categoría LPWAN y permite enviar paquetes de datos a kilómetros sin agotar la batería.

5.2. Hardware necesario

5.3. Programación y configuración

  1. Instala Arduino IDE y las librerías «LoRa» y «PubSubClient» (para MQTT).
  2. Escribe un sketch que:
    a. Inicialice LoRa en 915/868 MHz.
    b. Lea el sensor PIR o magnético.
    c. Formatee un mensaje JSON con estado y nivel de batería.
    d. Envíe el paquete al concentrador.

Ejemplo de envío:

#include <SPI.h>
#include <LoRa.h>
#include <ArduinoJson.h>
#include <Wire.h>

#define PIR_PIN 2
#define LORA_SS 10
#define LORA_RST 9
#define LORA_DI0 2

void setup() {
Serial.begin(9600);
pinMode(PIR_PIN, INPUT);
LoRa.setPins(LORA_SS, LORA_RST, LORA_DI0);
if (!LoRa.begin(868E6)) {
while (1);
}
}

void loop() {
int motion = digitalRead(PIR_PIN);
StaticJsonDocument<200> doc;
doc[«device»] = «mailbox_guard»;
doc[«motion»] = motion;
doc[«battery»] = random(90, 100);
char buffer[128];
size_t n = serializeJson(doc, buffer);
LoRa.beginPacket();
LoRa.write((uint8_t*)buffer, n);
LoRa.endPacket();
delay(60000);
}

5.4. Gateway y lectura en Home Assistant

Para conectar LoRa con Home Assistant necesitas un servidor de red LoRaWAN (ChirpStack, TTN) o un gateway local con Semtech y MQTT. Una vez configurado el bridge, Home Assistant recibirá los mensajes en topics MQTT, por ejemplo:

topic: lora/0x26011BDA/up
payload:
{
«device»: «mailbox_guard»,
«motion»: 1,
«battery»: 95
}

Define un sensor en configuration.yaml:

sensor:
– platform: mqtt
name: ‘Buzon Movimiento’
state_topic: ‘lora/0x26011BDA/up’
value_template: ‘{{ value_json.motion }}’
device_class: motion

– platform: mqtt
name: ‘Buzon Batería’
state_topic: ‘lora/0x26011BDA/up’
value_template: ‘{{ value_json.battery }}’
unit_of_measurement: ‘%’

5.5. Avisos y usos secundarios

Referencias

LoRa Arduino

The Things Network

ChirpStack OSS

Conclusiones

En este repaso de los cinco proyectos que han marcado mi año en domótica con Home Assistant has aprendido a:

Cada proyecto está diseñado para ser reproducido por aficionados sin demasiada experiencia previa. Espero que estas ideas te inspiren a continuar avanzando en tu propio hogar inteligente. Si quieres profundizar, en programarfacil.com encontrarás un curso gratuito de Home Assistant y domótica, además de numerosos tutoriales y comunidad para resolver dudas.

Ahora te animo a poner manos a la obra y a compartir tus resultados. ¡Nos vemos en el próximo artículo y recuerda: cada día un 1% mejor en domótica!

Salir de la versión móvil