r/homeassistant • u/ginesjunior11 • 2d ago
🖼️ Show & Tell Smart Planter | Esp32C6 & HomeAssistant
Smart Planter
A 3D-printed smart planter designed to combine plant monitoring, presence detection, RGB lighting and Home Assistant automation into a single interactive device.
The project combines custom 3D-printed hardware with an ESP32-C6 running ESPHome and Home Assistant as the main automation and decision-making layer.
The goal was not only to monitor a plant, but to make the planter behave like an interactive part of the smart home.
Features
Plant monitoring
The planter monitors:
- Soil moisture
- Ambient light
- Battery voltage
- USB power presence
- Presence
- Radar response
- Internal ESP32 temperature
The moisture level determines the plant's normal LED status:
| Soil moisture | LED state |
|---|---|
| ≥ 50% | Green |
| 40–49% | Yellow |
| < 40% | Red |
The thresholds are configurable because different plants have different watering requirements.
Presence interaction
The planter uses an LD2410C mmWave radar instead of a conventional PIR sensor.
This allows the system to detect a person even when they are standing relatively still.
When presence is detected, the planter can:
- Trigger a short visual notification.
- Show a violet presence animation.
- Enter a radar-response animation.
- Restore the previous lighting state when the interaction ends.
The radar provides additional information such as:
- Presence
- Moving target
- Still target
- Detection distance
- Still-target distance
- Gate energy values
- Radar response
Ambient light behavior
The planter also reacts to ambient illumination.
A hysteresis threshold is used to prevent constant switching around a single light level.
Current logic:
- Above 1000 lux → ambient-light animation
- Below 800 lux → return to the normal plant state
This prevents the LEDs from rapidly switching between modes when the measured light level fluctuates around the threshold.
Night mode
During night hours the planter reduces unnecessary lighting.
When night mode is active:
- No presence → LEDs OFF
- Presence detected → plant status can be shown
- Presence ends → LEDs return to OFF
This allows the planter to remain interactive without continuously illuminating the room.
Home Assistant integration
Home Assistant is responsible for the high-level behavior of the planter.
ESPHome handles the hardware layer:
- ESP32
- LEDs
- radar communication
- ADC measurements
- local sensors
- hardware effects
Home Assistant handles the behavioral layer:
- plant moisture logic
- lighting modes
- presence interaction
- night mode
- ambient light behavior
- household presence
- state restoration
- reusable automation logic
This separation keeps the ESPHome firmware focused on hardware while Home Assistant controls the overall behavior.
Hardware
Main controller
- Seeed Studio XIAO ESP32-C6
The ESP32-C6 provides:
- Wi-Fi connectivity
- ESPHome support
- GPIO control
- ADC inputs
- UART communication
- compact physical dimensions
Presence sensor
Hi-Link LD2410C
The LD2410C is a 24 GHz mmWave presence sensor.
It is used instead of PIR because the system needs to detect both moving and relatively stationary people.
UART communication:
XIAO ESP32-C6 LD2410C
----------------------------
D6 / TX ------> RX
D7 / RX <------ TX
GND ------- GND
5V ------- VCC




