Skip to content

g1ibby/esp-presence

Repository files navigation

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:

SEN0610 Assembly

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 (Python package manager)

Install ESPHome

cp secrets.yaml.example secrets.yaml  # fill in your WiFi credentials
uv sync                                # installs ESPHome + dependencies

Usage

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:

cd sen0610 && uv sync  # install case design dependencies separately

Requirements

  • Python 3.13+
  • uv

About

ESP32-C6 SuperMini + LD2410c/SEN0610(C4001) presence senor + Case 3D model in build123d/cadquery + ESPHOME configs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors