mmWave Staircase Presence Detection with ESPHome (Room-Level)

· by Maya Kapoor · 4 min read

mmWave Staircase Presence Detection with ESPHome (Room-Level)

Why Staircases Break Normal Presence Sensors

Staircases are one of the hardest spots in any smart home to automate correctly. mmWave sensors running on ESPHome can finally crack this problem, but only if you get the zones, timing, and mounting right. Below is a setup I’ve tested repeatedly for room-level presence detection on stairs, including the exact mistakes that cause flickering lights, false triggers bleeding in from nearby rooms, and gaps where the sensor just stops seeing someone halfway up.

Standard PIR motion sensors fail here for a few reasons:

mmWave radar sensors like the LD2410, LD2450, and HLK-2450 fix the “standing still” issue because they pick up micro-movements, breathing, shifting weight, instead of needing someone to actually walk. The catch on stairs: their wide detection cones become a liability unless you actively shape the zone yourself.

Hardware Choices That Actually Work

For stair applications, zone-capable sensors beat basic presence-only modules every time:

Mount it at the top of the stairwell, angled down around 30-45°, not at the bottom looking up. This one change alone cuts down false triggers from the hallway below and keeps the detection volume contained to the stairs.

ESPHome Configuration: Zone Fencing

With the LD2450, the real trick is defining exclusion and detection zones in ESPHome rather than trusting the raw presence output:

ld2450: id: my_ld2450

binary_sensor:

number:

Open the ESPHome web dashboard’s live coordinate view (expose target_x and target_y as sensors) and physically walk the stairs while watching the numbers move. Note the min/max X/Y at the top step, the mid-landing, and the bottom step. Then set your zone boundaries a bit wider than that range, maybe 10-15cm of margin. Skip this and you’ll find the sensor “loses” anyone who pauses on the landing to check their phone.

Fixing Common False Triggers

Combining Two Sensors for Full-Stair Coverage

Anything longer than roughly 4 meters is a problem for a single sensor. Most are rated for 6m, but reliable presence detection tends to cap out closer to 4m. For a long staircase, put one sensor at the top and one at the bottom, then merge them in ESPHome with a template binary sensor:

binary_sensor:

Now Home Assistant sees one clean “Staircase Occupied” entity to drive lighting automations, instead of you juggling two separate sensor states in every automation you write.

Automation Tips for Home Assistant

Conclusion

Getting staircase presence detection right isn’t about chasing the “best” mmWave sensor on the market. It comes down to zone fencing, mounting at the right angle, and pairing two units for longer runs. ESPHome’s native LD2450/LD2410 support gives you live coordinate data, which means you can tune zones to match your actual stairs instead of guessing, and that’s what finally kills the false triggers and dead spots that plague generic PIR setups or basic single-zone sensors.

#ESPHome#mmWave#Smart Home#Home Assistant#Presence Detection