https://github.com/g1ibby/esp-presence
ESP32-C6 SuperMini + LD2410c/SEN0610(C4001) presence senor + Case 3D model in build123d/cadquery + ESPHOME configs
https://github.com/g1ibby/esp-presence
3d-models build123d c4001 cadquery esp32 esphome home-assistant ld2410 ld2410c presence-detection
Last synced: about 1 month ago
JSON representation
ESP32-C6 SuperMini + LD2410c/SEN0610(C4001) presence senor + Case 3D model in build123d/cadquery + ESPHOME configs
- Host: GitHub
- URL: https://github.com/g1ibby/esp-presence
- Owner: g1ibby
- Created: 2025-07-07T12:04:54.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-07-13T03:03:35.000Z (11 months ago)
- Last Synced: 2025-08-22T17:46:20.800Z (10 months ago)
- Topics: 3d-models, build123d, c4001, cadquery, esp32, esphome, home-assistant, ld2410, ld2410c, presence-detection
- Language: Python
- Homepage:
- Size: 562 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ESP-Presence
ESP32-C6 SuperMini-based presence detection system with mmWave radar sensors and custom 3D-printed cases.
## Overview
This project combines:
- **ESP32-C6 SuperMini** microcontroller
- **LD2410C** or **SEN0610 (C4001)** mmWave presence sensors
- **3D-printable cases** designed in build123d/CadQuery
- **ESPHome** configurations for Home Assistant integration
## Components
### ESPHome Configurations
- `esp32c6-ld2410c.yaml` - Configuration for LD2410C sensor
- `esp32c6-sen0610.yaml` - Configuration for SEN0610 (C4001) sensor
### 3D Cases
Cases are modeled using **build123d** and **CadQuery** frameworks:
- **LD2410C case**: `ld2410c/` - Compact enclosure for ESP32-C6 + LD2410C
- **SEN0610 case**: `sen0610/` - Enclosure for ESP32-C6 + SEN0610 sensor
- STL files: `enclosure_base.stl`, `enclosure_lid.stl`, `corner_holder.stl`
- Assembly preview:

## Project Structure
```
esp-presence/
├── esp32c6-ld2410c.yaml # ESPHome config for LD2410C
├── esp32c6-sen0610.yaml # ESPHome config for SEN0610
├── ld2410c/ # LD2410C case (build123d/CadQuery)
└── sen0610/ # SEN0610 case (build123d)
└── images/assembly.png # Assembly visualization
```
## Development Setup
### Prerequisites
- [uv](https://docs.astral.sh/uv/) (Python package manager)
### Install ESPHome
```bash
cp secrets.yaml.example secrets.yaml # fill in your WiFi credentials
uv sync # installs ESPHome + dependencies
```
### Usage
```bash
make compile-ld2410c # compile LD2410C config
make compile-sen0610 # compile SEN0610 config
make compile-all # compile both
make run-ld2410c # compile + flash LD2410C (ESP32 must be connected via USB)
make run-sen0610 # compile + flash SEN0610
make logs-ld2410c # stream device logs
make logs-sen0610
make clean # remove .esphome/ build cache (~2 GB)
```
The first compile downloads the ESP-IDF toolchain (~2 GB).
### 3D Cases
Each case subdirectory (`ld2410c/`, `sen0610/`) is an independent `uv` project for build123d/CadQuery:
```bash
cd sen0610 && uv sync # install case design dependencies separately
```
## Requirements
- Python 3.13+
- uv