LD2420: calibrar move_threshold y still_threshold en ESPHome
Los falsos positivos no se arreglan con una sensibilidad global: se afinan gate a gate. Este es el YAML y el método para saber cuánto mover cada umbral sin perder detección real.
Qué devuelve el LD2420 en ESPHome
El LD2420 no entrega una única señal de presencia. Entrega energía de movimiento y energía estática por gate. Los gates dividen el campo de detección y cada uno admite sus propios umbrales. Lo que ves en el YAML no es un ajuste global, es la forma de configurar gate a gate.
La correspondencia exacta entre número de gate y distancia no está documentada de forma universal; depende del firmware. Lo que sí es seguro es que el gate_0 es el primero de la lista y los demás se extienden hacia delante. Para calibrar no necesitas la distancia exacta: necesitas observar la energía que reporta cada gate según lo que haya en su zona.
Qué hace cada umbral
move_threshold decide cuánta energía de movimiento hace falta para marcar movimiento en ese gate. still_threshold decide cuánta energía estática hace falta para marcar presencia quieta. Los dos se ajustan por separado, por eso un sensor puede detectarte al caminar pero perderte al sentarte en el sofá si el umbral estático quedó alto.
| Opción | Qué regula | Subirlo | Bajarlo |
|---|---|---|---|
move_threshold |
Detección de movimiento | Menos falsos positivos, riesgo de perder pasos | Más sensible, más ruido |
still_threshold |
Detección de presencia estática | Evita presencias fantasma por ruido o respiración | Detecta personas quietas con más margen |
YAML de referencia
Este es el esquema que expone el componente. Las entidades move_threshold y still_threshold de primer nivel son para ajustar el gate que tengas seleccionado; las entradas gate_0, gate_1 y sucesivas dejan cada gate visible por separado.
number:
- platform: ld2420
id: ld2420
presence_timeout:
name: "Detection Presence Timeout"
min_gate_distance:
name: "Detection Gate Minimum"
max_gate_distance:
name: "Detection Gate Maximum"
gate_select:
name: "Select Gate to Set"
still_threshold:
name: "Set Still Threshold Value"
move_threshold:
name: "Set Move Threshold Value"
gate_move_sensitivity:
name: "Move Calibration Sensitivity Factor"
gate_still_sensitivity:
name: "Still Calibration Sensitivity Factor"
gate_0:
move_threshold:
name: "Gate 0 Move Threshold"
still_threshold:
name: "Gate 0 Still Threshold"
# Repite el bloque gate_N con el mismo esquema para los gates restantes
Método para calibrar sin andar a ciegas
- Flashea el YAML y abre Developer Tools > States en Home Assistant. Busca las entidades de energía de movimiento y energía estática que expone el LD2420.
- Pon
gate_selecten el gate que quieres afinar y deja la zona despejada. Anota el valor máximo que marcan las dos energías cuando no hay nadie. - Camina por la zona y anota el valor mínimo con movimiento real. Después siéntate o quédate quieto en la zona objetivo y anota el valor mínimo de energía estática con presencia real.
- Coloca
move_thresholdentre el máximo sin presencia y el mínimo con movimiento. Haz lo mismo constill_thresholdusando los valores de presencia quieta. - Repite por gate. El que apunta al pasillo normalmente tolera un umbral más alto que el que apunta al sofá, porque el sofá es justo donde quieres detectar a alguien quieto.
Relacionado
- LD2420 con ESPHome: sensor de presencia mmWave sin nube, YAML incluido
- LD2420 y ESPHome: ajusta gates y umbrales para acabar con los falsos positivos
Última revisión: 22/09/2026