Mi sonda DS18B20 marca 85 °C todo el rato (o se vuelve loca): por qué pasa y cómo arreglarlo
Tu sonda DS18B20 conectada a un ESP32 (con ESPHome o Arduino) marca siempre 85 °C, da saltos raros o deja de aparecer, aunque la habitación esté a 20 °C.
Por qué pasa (diagnóstico)
- 85 °C es el valor que tiene el sensor al encenderse, antes de hacer ninguna medida (lo dice la hoja de datos). Si lo ves, casi seguro que el sensor se está reiniciando o que se lee antes de terminar de medir.
- Causa típica: modo «parásito» (dos cables, VDD a masa). Al medir, el sensor puede pedir hasta 1,5 mA y la resistencia pull-up sola no da suficiente corriente, así que se queda sin energía.
- Pull-up que falta o cables largos y flojos. O patillas cruzadas: en el TO-92 son 1 = GND, 2 = datos y 3 = VDD (en sondas con cable, mira los colores en la documentación del vendedor).
Solución paso a paso
- Pasa a modo normal con tres cables: VDD a 3,3 V, GND a masa y datos al GPIO.
- Pon (o cambia) la pull-up de 4,7 kΩ entre datos y 3,3 V. ESPHome dice que ±1 kΩ suele valer si el cable no es muy largo.
- Revisa el YAML de ESPHome:
one_wire:conplatform: gpioen un pin del propio chip (no de un expansor) y cada sonda conplatform: dallas_tempy suaddresssi hay varias. - Mira los registros al arrancar: ESPHome lista las direcciones que encuentra en el bus. Si no sale ninguna, el problema es de cableado o de pull-up (cómo ver los logs).
- Prueba con un cable corto; si así va, sigue la guía del fabricante para redes 1-Wire largas (enlazada desde ESPHome). Por encima de 100 °C, nada de modo parásito.
Requisitos
- ESP32 o ESP8266
- Sonda DS18B20
- Resistencia de 4,7 kΩ
- ESPHome (o Arduino)
Compatibilidad
- DS18B20 en encapsulado TO-92, SO o µSOP y sondas con cable que lo llevan dentro
- ESPHome con los componentes one_wire y dallas_temp
Verificación
Documentado: resumen de las fuentes oficiales citadas (leídas el 20-oct-2026). No lo hemos probado aún en nuestro laboratorio, por eso no está marcado VERIFICADO.
Fuentes
- Analog Devices (Maxim) — Hoja de datos del DS18B20 (valor de arranque de 85 °C, modo parásito, patillas) (en inglés)
- ESPHome — Bus 1-Wire (pull-up y direcciones en el log) (en inglés)
- ESPHome — Sensor de temperatura Dallas (dallas_temp) (en inglés)
Manuales de aparatos relacionados
Guías relacionadas
- ESP32 no arranca o se comporta raro al conectar algo a ciertos pines
- Las lecturas analógicas del ESP32 fallan cuando el Wi‑Fi está activo
- Sensor DHT22 en ESPHome da NaN o lecturas erráticas
- Mi pantalla OLED SSD1306 no enciende o enseña basura con ESPHome: cómo arreglarla
- ESP32: «Brownout detector was triggered» y se reinicia
- ESP32: «Wrong boot mode detected» al flashear
Más guías de ESP32 / ESPHome.