icon

ESP32-C6 and C4002 mmWave Sensor Demo for Human State Detection

This demonstration leverages the ESP32-C6 and C4002 mmWave sensor to deliver high-precision human state detection. By combining 24GHz FMCW radar technology with the ESP32-C6's Wi-Fi 6 and Zigbee capabilities, the system accurately tracks motion, micro-presence, and absence. It filters ambient clutter to ensure ghost-proof reliability for smart home automation. Fully customizable and community-driven, this project provides a low-latency, privacy-first alternative to traditional PIR sensors, making advanced spatial awareness accessible to everyone.

Functions

Blink LED every second

Long pressed BOOT button to start calibration

- Beep for the first 10 seconds to signal the user to leave the room. (A long beep indicates the start of calibration.)

- Beep at a higher frequency during calibration. (A long beep indicates the end of calibration.)

HARDWARE LIST
1 FireBeetle 2 ESP32-C6 IoT Development Board
HARDWARE LIST
1 Fermion: C4002 mmWave Human Presence Sensor

Device Block diagram (with power save feature)

Pin assignment


Prototype photo

Front view

Top view

Software setup

- Install [Arduino IDE 2.3.7+ for Arduino](https://www.arduino.cc/en/Main/Software)

- Install [Arduino-ESP32](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html)

- Install [Arduino DebugLog](https://www.arduino.cc/reference/en/libraries/debuglog/)

- Install [UrlEncode](https://docs.arduino.cc/libraries/urlencode/)

- Install [ArduinoJson v7+](https://github.com/bblanchon/ArduinoJson)

- Install [Adafruit IO Arduino](https://github.com/adafruit/Adafruit_IO_Arduino)

- Install [ArduProf v2.5.3+](https://www.arduino.cc/reference/en/libraries/arduprof/)

- clone this repo by

"git clone --recurse-submodules https://github.com/teamprof/github-esp32c6-c4002.git"


Build demo code

Build firmware

- clone this repo by "git clone https://github.com/teamprof/github-esp32c6-c4002.gif"

- Launch Arduino IDE

- Open "github-esp32c6-c4002.ino" under "github-esp32c6-c4002" folder

- On Arduino IDE, click menu "Tools" -> "Board: " -> "Board Manager..." -> "DFRobot FireBeetle 2 ESP32-C6"

- On Arduino IDE, click menu "Tools" -> "USB CDC On Boot:" -> "Enable"

- Build the code by clicking Menu -> “Sketch” -> “Compile/Verify”

If everything goes smoothly, you should see the following screen.


Flash firmware

- On Arduino IDE, click Menu -> “Sketch” -> “Upload”

If everything goes smoothly, you should see the following screen.

Run

- Click the RESET button

If everything goes smoothly, you should see the following screen.

ThreadSensor state

ThreadSensor-to-ThreadApp event

ThreadSensor-to-ThreadApp event


License

The project is licensed under GNU GENERAL PUBLIC LICENSE Version 3


Copyright

Copyright 2026 [email protected]. All rights reserved.


License
All Rights
Reserved
licensBg
0