NAMO — Ain’t Motion-Only
Still here, even when you’re still.
I built a fully local, self-contained presence sensor with an embedded web app, visually editable zones, automatic room detection from a floor plan, and filter zones for suppressing unwanted detections.
Please note that Optional OCR requires an internet connection to load its library, while image processing remains in the browser.
Here is a short demo showing the lights responding as I move between different detection zones.

Live Demo and Source Code
You can try the live demo and explore the source code here:
Hardware
Here is the actual hardware I built for this project.
Hardware details, including the PCB design and documentation, are available here:
Why Did I Build This?
I started with a fairly simple smart-home setup using Xiaomi devices: buttons, bulbs, motion sensors, door sensors, and so on.
However, Xiaomi’s regional ecosystem makes it difficult to integrate Chinese-region devices with global-region devices.
Later, I rented a new office and had the opportunity to rebuild the entire smart-home setup from scratch. Because of my previous experience with Xiaomi, I decided to try Tuya instead.
Unfortunately, I ran into similar problems again: cloud dependency, slower automation, and ecosystem lock-in.
That probably explains why I am now a little obsessed with local control, lol.
So, without further ado, here are the main features.
1. Dashboard
View real-time presence, motion, target status, environmental sensor data, room-level presence, and system information in one place.
The dashboard also provides access to advanced settings such as environmental sensor calibration, status LED settings, timezone selection, and diagnostic tools.

2. Radar Map
Track up to three targets using the LD2450’s native multi-target tracking capability.
You can also create and edit detection zones, exclusion zones, correction zones, and exit zones directly from the radar map.
An automatic false-positive correction feature is included, but please keep in mind that it is still experimental.

3. Floor Plan Onboarding
Upload a floor plan, define its physical dimensions and scale, analyze wall and room candidates, and place the radar through a guided setup process.
OCR currently supports Korean room labels only. English OCR support is planned for a future update.
4. Room Editing
After the automatic room-detection process, you can manually refine each detected room.
Rooms can be renamed, reshaped by adding or removing points, deleted, or created manually. My goal was to make the editing process as flexible as possible.

5. Radar Repositioning and Zone Editing
Match the radar’s position and rotation to the floor plan, then create and edit detection, exclusion, correction, and exit zones while viewing the actual room layout.

6. Furniture Layout
Select a room, add furniture, and move, rotate, or resize each object so that the floor plan more closely reflects the real space.
Additional furniture types will be added in future updates.

Current Limitations
This project is not perfect.
The biggest remaining challenge is maintaining reliable detection when someone remains almost completely still for a long period of time, such as while sleeping, working at a desk, or watching TV.
I added an exit-zone concept and target-tracking logic to reduce dropped targets, but the LD2450 can still lose a target under certain conditions.
False detections caused by moving doors, curtains, fans, appliances, reflections, and nearby spaces also remain areas that require further testing and refinement.
This is therefore still an actively developed project rather than a finished commercial product.
Roadmap
- Multi-sensor support
- Further refinement of the false-positive correction algorithm
- Further refinement of the filter-zone algorithm
- Semi-automatic OTA firmware updates
- Additional language support
Feedback Wanted
I am actively developing NAMO and would greatly appreciate feedback from both hardware users and people who only want to try the demo.
If You Have Compatible Hardware
Recommended hardware:
- Seeed Studio XIAO ESP32-S3
- HLK-LD2450
I would especially appreciate feedback about:
- False detections caused by doors, curtains, fans, microwave ovens, or other objects
- Detection reliability when a person remains still
- Stability near zone boundaries
- Whether the initial setup and Wi-Fi onboarding process are easy to understand
- Any unexpected behavior in a real room
You can share your results in this thread or open an issue on GitHub.
If You Do Not Have the Hardware
You can still try the live demo and provide feedback about:
- Dashboard UI and UX
- Floor plan onboarding
- Room and zone editing
- PCB layout and schematic
- Code quality, algorithms, architecture, and maintainability
- Documentation quality
- Additional translations
Contributions and pull requests are also welcome.
Thank you for reading, and happy hacking!
Licenses
The NAMO software is and will remain free and open source. It is licensed under:
AGPL-3.0-or-later
The hardware design files are distributed separately under:
CC BY-NC-SA 4.0
Development Note
This project was planned, designed, assembled, and tested by the author.
OpenAI Codex was used throughout development for code generation, refactoring, testing support, and documentation assistance.

