C1001 mmWave Sensor Integration

Complete guide for integrating the DFRobot C1001 mmWave Human Detection Sensor with ESPHome and Home Assistant

Overview

This guide provides a complete solution for integrating the DFRobot C1001 mmWave Human Detection Sensor with an ESP32-S3-DevKitC-1 board using ESPHome 2025.4.0 and Home Assistant.

The C1001 is a 60GHz mmWave radar sensor that can detect human presence, falls, and even monitor sleep patterns including respiration and heart rate.

Key Features:

  • Human presence detection
  • Fall detection
  • Sleep state monitoring
  • Respiration rate tracking
  • Heart rate monitoring
  • Full Home Assistant integration
C1001 mmWave Sensor

DFRobot C1001 mmWave Human Detection Sensor

Hardware Setup

Required Components:

Wiring Diagram:

C1001 Pin ESP32-S3-DevKitC-1 Pin Description
VIN 5V Power supply
GND GND Ground
RX GPIO4 (TX) UART communication
TX GPIO5 (RX) UART communication
IO1 GPIO12 Fall detection signal
IO2 GPIO14 Human presence signal
Wiring Diagram

Wiring diagram for connecting C1001 to ESP32-S3-DevKitC-1

ESPHome Configuration

Setup Process:

  1. Install ESPHome Add-on in Home Assistant
  2. Create a new ESPHome device
  3. Replace the configuration with our custom YAML
  4. Create the custom component file
  5. Compile and upload the firmware

Configuration Files:

The integration requires two main files:

c1001_esphome.yaml

Main ESPHome configuration file that sets up the device, sensors, and communication.

Download

c1001_parser.h

Custom component that handles UART communication with the C1001 sensor.

Download

Home Assistant Integration

Adding the Device to Home Assistant:

  1. After flashing the firmware, the device will automatically be discovered by Home Assistant
  2. Go to Settings > Devices & Services
  3. Look for a notification about discovering a new device
  4. Click CONFIGURE and follow the prompts

Available Entities:

Example Dashboard:

Home Assistant Dashboard Example

Example Home Assistant dashboard for C1001 sensor

Example Automation:

Fall Detection Alert

alias: Fall Detection Alert
description: Send a notification when a fall is detected
trigger:
  - platform: state
    entity_id: binary_sensor.fall_detection
    to: "on"
condition: []
action:
  - service: notify.mobile_app
    data:
      title: "⚠️ Fall Detected!"
      message: "A fall has been detected. Please check immediately."
      data:
        priority: high
        ttl: 0
        channel: "Fall Detection Alerts"
  - service: light.turn_on
    target:
      entity_id: light.status_led
    data:
      brightness: 255
      rgb_color: [255, 0, 0]
      effect: "Fast Pulse"
mode: single

Testing Your Setup

Hardware Connection Test:

  1. Connect the ESP32-S3-DevKitC-1 to power via USB
  2. Verify that both the ESP32 board and the C1001 sensor have power LEDs illuminated
  3. The RGB LED on the ESP32-S3 should initially turn red and pulse, then turn green after initialization

Testing Sensor Functionality:

Troubleshooting Common Issues:

  • Check power connections
  • Verify UART pin connections (they might need to be swapped)
  • Restart the ESP32 board
  • Check ESPHome logs for communication errors
  • Adjust the sensor position
  • Check for interference sources
  • Ensure the sensor has a clear line of sight to the detection area
  • Adjust the delayed_off filter in the configuration
  • Position the sensor away from moving objects like fans or curtains
  • Consider adding additional filtering in Home Assistant automations

Downloads

Configuration Files

ESPHome configuration and custom component

c1001_esphome.yaml c1001_parser.h

Documentation

Detailed guides and instructions

Integration Guide Testing Instructions Home Assistant Guide

Complete Package

All files in a single download

Download ZIP