
En calidad de Afiliado de Amazon, obtengo ingresos por las compras adscritas que cumplen los requisitos aplicables. Si compras desde estos enlaces, el precio para ti es el mismo y Amazon me paga una pequeña comisión que ayuda a mantener Tecnoyfoto.
Actualizado el 6 de agosto de 2026 · Configuración migrada a one_wire y dallas_temp, con cableado, alertas y seguridad revisados.
Un refrigerador inteligente no tiene por qué ser un electrodoméstico nuevo ni depender de la nube del fabricante. Con un ESP8266, dos sondas DS18B20 y dos contactos magnéticos puedes ver la temperatura del refrigerador y del congelador, saber si una puerta queda abierta y recibir avisos en Home Assistant. Todo funciona de forma local con ESPHome.
Esta guía actualiza el montaje original y corrige dos puntos importantes: la antigua plataforma dallas ya no es la sintaxis vigente y el bus 1-Wire necesita una resistencia pull-up de aproximadamente 4,7 kΩ. También evitaremos lecturas cada segundo, corregiremos las entidades del panel y añadiremos alertas que esperan antes de avisar para reducir falsas alarmas.
Qué puede hacer este refrigerador inteligente
- Medir por separado la temperatura del refrigerador y del congelador.
- Mostrar si cada puerta está abierta o cerrada.
- Guardar históricos para detectar ciclos anómalos o una avería.
- Avisar si una puerta permanece abierta o la temperatura supera un umbral durante varios minutos.
- Mantener los datos dentro de la red local mediante la API nativa de ESPHome.
El sistema solo monitoriza: no interviene en el termostato ni gobierna el compresor. Por tanto, instalarlo no reduce por sí mismo el consumo eléctrico. El ahorro puede llegar si una alerta permite cerrar una puerta, corregir un ajuste o detectar un fallo antes de perder alimentos.
Componentes necesarios
- Una placa ESP8266 NodeMCU o Wemos D1 miniEnlace de afiliado.
- Dos sondas DS18B20 impermeables de tres hilosEnlace de afiliado.
- Dos contactos magnéticos o reed switches normalmente abiertos.
- Una resistencia de 4,7 kΩEnlace de afiliado para el bus 1-Wire.
- CablesEnlace de afiliado, soldadura, aislamiento y una fuente USB estable.
Conviene que la placa, la fuente y todas las uniones queden fuera del electrodoméstico. Dentro solo deben entrar las sondas y, si procede, el cable fino de los contactos. No perfores las paredes: pueden contener tuberías de refrigerante, cableado o aislamiento. Pasa los cables por la junta sin deformarla y comprueba que la puerta sigue cerrando herméticamente.
Cableado correcto del DS18B20 y las puertas
| Elemento | ESP8266 | Conexión |
|---|---|---|
| DS18B20 VCC, ambos | 3V3 | Alimentación de tres hilos |
| DS18B20 GND, ambos | GND | Masa común |
| DS18B20 DATA, ambos | GPIO14 / D5 | Los dos sensores comparten el bus |
| Resistencia 4,7 kΩ | 3V3 ↔ GPIO14 | Pull-up obligatoria del bus 1-Wire |
| Contacto puerta refrigerador | GPIO4 / D2 ↔ GND | Entrada con pull-up interno |
| Contacto puerta congelador | GPIO5 / D1 ↔ GND | Entrada con pull-up interno |
La resistencia es una sola para todo el bus, colocada entre 3,3 V y la línea DATA. Es el elemento que faltaba en el esquema antiguo. La documentación de 1-Wire de ESPHome recomienda aproximadamente 4,7 kΩ. Si usas cables largos o aparecen desconexiones, revisa primero alimentación, empalmes, masa y topología.
Cómo encontrar las direcciones de las dos sondas
Cada DS18B20 tiene una dirección única. Carga primero esta configuración mínima, abre los registros de ESPHome y anota las dos direcciones detectadas:
one_wire:
- platform: gpio
pin: GPIO14Después identifica cuál está en cada compartimento: sujeta una sonda unos segundos con la mano y observa cuál cambia. Es preferible usar las direcciones en el YAML; seleccionar por índice puede intercambiar los nombres si sustituyes o añades sensores.
YAML completo y actual de ESPHome
Sustituye las dos direcciones de ejemplo por las que aparezcan en tus registros. Este archivo usa la plataforma actual dallas_temp, API cifrada, credenciales en secrets.yaml, OTA protegida y una lectura cada 60 segundos, suficiente para la inercia térmica de un refrigerador.
substitutions:
device_name: "refrigerador-inteligente"
friendly_name: "Refrigerador inteligente"
esphome:
name: ${device_name}
friendly_name: ${friendly_name}
esp8266:
board: d1_mini
logger:
api:
encryption:
key: !secret api_encryption_key
ota:
- platform: esphome
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap:
ssid: "Refrigerador Fallback"
password: !secret fallback_password
captive_portal:
one_wire:
- platform: gpio
pin: GPIO14
sensor:
- platform: dallas_temp
address: 0x1234567812345628
name: "Temperatura refrigerador"
id: temperatura_refrigerador
update_interval: 60s
accuracy_decimals: 1
device_class: temperature
state_class: measurement
- platform: dallas_temp
address: 0xABCDEF0123456728
name: "Temperatura congelador"
id: temperatura_congelador
update_interval: 60s
accuracy_decimals: 1
device_class: temperature
state_class: measurement
binary_sensor:
- platform: gpio
name: "Puerta refrigerador"
id: puerta_refrigerador
device_class: door
pin:
number: GPIO4
mode:
input: true
pullup: true
inverted: true
filters:
- delayed_on_off: 50ms
- platform: gpio
name: "Puerta congelador"
id: puerta_congelador
device_class: door
pin:
number: GPIO5
mode:
input: true
pullup: true
inverted: true
filters:
- delayed_on_off: 50msGuarda wifi_ssid, wifi_password, api_encryption_key, ota_password y fallback_password en secrets.yaml. Nuestra guía de WiFi seguro en ESPHome explica la estructura completa. Si tu placa no es una D1 mini, cambia board y confirma el pinout antes de compilar.
Por qué ya no se usa la plataforma dallas
La configuración antigua declaraba un bloque dallas: y sensores con platform: dallas. En la documentación vigente el bus se configura con one_wire y cada sonda con platform: dallas_temp. Copiar el fragmento anterior provoca errores en versiones modernas de ESPHome.
También se ha cambiado update_interval: 1s por 60 segundos. La temperatura del aire junto a una sonda puede oscilar al abrir la puerta o arrancar el compresor; diez o sesenta lecturas por minuto no hacen el sistema más exacto y sí generan más tráfico e historial.
Colocación de las sondas y los contactos
- Fija cada sonda sin que toque directamente una pared, evaporador o salida de aire.
- Evita zonas que reciban aire caliente cada vez que se abre la puerta si quieres una tendencia estable.
- Coloca el imán y el reed switch alineados cuando la puerta esté completamente cerrada.
- Prueba varias aperturas y cierres antes de pegar definitivamente los sensores.
- Protege empalmes y metal expuesto frente a condensación, siempre fuera de la zona de alimentos cuando sea posible.
Un vaso pequeño con agua puede amortiguar cambios muy rápidos en la sonda del refrigerador, pero aumenta el tiempo de respuesta. Para empezar, compara ambos sensores con un termómetro fiable y deja estabilizar el montaje durante varias horas.
Integración y panel de Home Assistant
Cuando el nodo aparezca en la integración ESPHome, tendrás dos entidades de temperatura y dos sensores binarios de puerta. Este panel del proyecto original muestra de un vistazo los dos compartimentos y el estado de las puertas:

Una tarjeta sencilla y resistente a cambios de interfaz es la de entidades. Ajusta los identificadores a los creados en tu instalación:
type: entities
title: Refrigerador inteligente
show_header_toggle: false
entities:
- entity: sensor.temperatura_refrigerador
name: Refrigerador
- entity: sensor.temperatura_congelador
name: Congelador
- entity: binary_sensor.puerta_refrigerador
name: Puerta del refrigerador
- entity: binary_sensor.puerta_congelador
name: Puerta del congeladorAviso si una puerta queda abierta
Notificar cada apertura sería molesto. Esta automatización espera dos minutos y solo avisa si la puerta continúa abierta. Sustituye el servicio del teléfono y los entity ID:
alias: Refrigerador - puerta abierta demasiado tiempo
triggers:
- trigger: state
entity_id:
- binary_sensor.puerta_refrigerador
- binary_sensor.puerta_congelador
to: "on"
for: "00:02:00"
actions:
- action: notify.mobile_app_tu_telefono
data:
title: "Puerta del refrigerador"
message: >-
{{ trigger.to_state.name }} lleva abierta más de dos minutos.
mode: parallel
max: 2El filtro de 50 ms del ESPHome elimina rebotes eléctricos breves; el retraso de dos minutos de Home Assistant responde a una necesidad distinta: decidir cuándo una apertura normal se convierte en un aviso.
Alerta por temperatura alta
Como referencia general, AESAN indica mantener el frigorífico por debajo de 4 °C y el congelador a −18 °C. La ubicación de la sonda, los ciclos del compresor y una apertura pueden producir picos, así que el ejemplo utiliza un margen y exige 15 minutos continuos. No utilices una sola lectura doméstica para decidir si un alimento es seguro.
alias: Refrigerador - temperatura demasiado alta
triggers:
- trigger: numeric_state
entity_id: sensor.temperatura_refrigerador
above: 6
for: "00:15:00"
id: refrigerador
- trigger: numeric_state
entity_id: sensor.temperatura_congelador
above: -15
for: "00:15:00"
id: congelador
actions:
- action: notify.mobile_app_tu_telefono
data:
title: "Revisa el refrigerador"
message: >-
La temperatura de {{ trigger.to_state.name }} es
{{ trigger.to_state.state }} °C y lleva 15 minutos alta.
mode: singlePrueba la automatización y adapta umbrales y tiempos al comportamiento real del aparato. Los temporizadores definidos con for se reinician si Home Assistant se reinicia o se recargan las automatizaciones; para una garantía más estricta conviene guardar el instante de inicio en un ayudante.
Problemas frecuentes
| Problema | Qué revisar |
|---|---|
| No aparecen sondas 1-Wire | Resistencia de 4Enlace de afiliado,7 kΩ, alimentación a 3,3 V, masa común, GPIO14 y empalmes. |
| Una sonda muestra 85 °C o valores imposibles | Alimentación, cable y conexión intermitente; no ocultes el fallo con una automatización. |
| Las puertas aparecen al revés | Elimina o añade inverted: true según el contacto utilizado. |
| La puerta cambia varias veces | Alinea imán y reed switch; aumenta ligeramente delayed_on_off. |
| Temperaturas muy variables | Cambia la posición de la sonda y analiza ciclos completos, no una lectura aislada. |
| WiFi inestable | Deja el ESP fuera del recinto metálico y revisa cobertura y alimentación. |
Qué aporta frente a otras soluciones
Muchas guías se limitan a una sonda, usan configuraciones antiguas o dependen de servicios externos. El montaje de DigiKey resuelve muy bien el paso de un cable plano por la junta, mientras que otros proyectos se centran solo en gráficas. Aquí reunimos dos temperaturas, dos puertas, funcionamiento local, YAML actual y alertas con demora en un único nodo.
Si solo quieres temperatura y no puedes llevar alimentación hasta el electrodoméstico, un sensor Zigbee o Bluetooth puede ser más sencillo. Si quieres puertas, dos compartimentos y control total de las alertas, ESPHome ofrece más flexibilidad. Este proyecto monitoriza un refrigerador existente; no sustituye sus protecciones internas ni debe controlar directamente el compresor.
Vídeo del montaje original
El vídeo conserva la instalación física y el resultado en Home Assistant. Para el firmware utiliza el YAML actualizado de esta página, no el antiguo bloque dallas.
Fuentes y documentación comprobada
- ESPHome: bus 1-Wire y resistencia pull-up.
- ESPHome: sensor dallas_temp.
- ESPHome: sensor binario GPIO, inversión y rebote.
- Home Assistant: disparadores y duración
for. - AESAN: temperaturas de conservación de referencia.
Preguntas frecuentes
¿Puedo conectar dos DS18B20 al mismo GPIO?
Sí. 1-Wire permite compartir DATA, 3,3 V y GND. Cada sonda se diferencia por su dirección y el bus utiliza una sola resistencia pull-up de aproximadamente 4,7 kΩ.
¿Debo introducir el ESP8266 dentro del refrigerador?
No. Déjalo fuera para evitar humedad, frío y pérdida de señal dentro del recinto metálico. Introduce únicamente las sondas y los cables necesarios sin dañar la junta.
¿El sistema controla el compresor?
No, y esa separación es intencionada. Supervisa temperaturas y puertas y envía avisos, pero no modifica los controles de seguridad del electrodoméstico.
¿Puedo usar un ESP32?
Sí. Cambia el bloque de placa y elige tres GPIO adecuados: uno bidireccional para 1-Wire y dos entradas para los contactos. No copies los pines del ESP8266 sin comprobar el pinout del modelo concreto.
Con el cableado correcto y alertas bien ajustadas, un refrigerador corriente gana las funciones más útiles de un modelo conectado sin entregar sus datos a una nube: historial, puertas y avisos locales antes de que un pequeño problema pase desapercibido.
Continúa leyendo
Siguiente guía relacionada · 7 min de lectura
DS18B20 con ESP8266 y ESPHome: guía One-Wire actualizada
Actualizado el 2 de agosto de 2026. El DS18B20 con ESP8266 y ESPHome es una combinación sencilla y fiable para medir temperatura en Home…
Continuar con este artículo

