Breaking the mmWave black box

How DFRobot C4002 Radar Module Enables Advanced Static Presence Detection

The DFRobot Fermion: C4002 mmWave Radar Module features a Full Data Access Mode that provides developers with processed micro-Doppler telemetry and displacement vectors.

Introduction

Why do smart home systems still turn on lights for empty rooms – or, even worse, leave us in the dark while we’re simply sitting still reading on the sofa?

The answer lies in the limitations of traditional sensing technologies. For years, automation has relied on passive infrared (PIR) sensors, which operate on simple binary logic: they either detect significant movement, or they assume the room is empty. These sensors are notoriously unable to detect static subjects and lack any form of spatial context.

While millimetre-wave (mmWave) radar emerged to bridge these gaps, most commercial modules still function as ‘black boxes’. They provide a simplified output but hide the rich environmental data, strictly limiting what a developer can actually achieve.

The DFRobot C4002 Radar Module shifts this paradigm through its Full Data Access mode. What we call ‘static detection’ does not mean the subject is completely motionless. In reality, even when a person remains still, subtle body fluctuations occur – such as chest movement from breathing or neural regulation. The amplitude of these movements is typically greater than 0.1mm.

The C4002 easily detects these displacement changes over time, generating a fluctuating curve that reflects the precise characteristics of a person who appears immobile to the human eye. By granting direct access to these processed tracking vectors and micro-motion energy values, the module evolves from a closed system into an open window to advanced spatial telemetry.

Advanced telemetry unlocked: multi-dimensional data outputs of the C4002

What is Full Data Access Mode?

The DFRobot C4002 Radar Module perceives its environment by capturing and analysing micro-Doppler signals internally. Instead of exposing a raw, bandwidth-heavy 3D point Cloud, the Full Data Access Mode grants developers direct access to pre-filtered spatial tracking vectors, displacement curves, and micro-motion energy values. This allows the sensor to deliver a digital map of environmental dynamics, capturing the exact speed, direction, and posture indicators of multiple subjects without overloading the serial interface.

What we define as ‘static presence’ is actually the detection of subtle, continuous physical fluctuations. Even when a person sits perfectly still, neural regulation and breathing cause chest displacements greater than 0.1mm. The C4002 plots these minute displacements over time to generate a fluctuating curve. By calculating the peak-to-peak value and frequency of this curve, the module accurately differentiates between a truly static object and a living human being who only appears immobile to the human eye.

By granting access to these Processed Tracking Signals, the module empowers developers to analyse behavioural telemetry before it is restricted by a simple binary output. This architecture is crucial for deploying custom signal processing to eliminate false positives — such as those caused by rotating fans, moving curtains, or pets. Developers can now write targeted logic ensuring that smart home triggers respond exclusively to actual human intent and vital presence, rather than environmental noise.

The primary technical differentiator of the C4002 Radar Module is the radical shift from opaque ‘black box’ restrictions to an accessible, developer-defined framework. While standard modules force users to rely on a generic ‘motion/no motion’ output, the C4002 provides full structural transparency over its tracking layers, allowing engineers to audit the detection thresholds and deploy precise automation.

Visualising the transition from ‘Black Box’ sensing to Full Data Access

Advanced use cases

Direct access to high-resolution point Clouds allows the C4002 Radar Module to be deployed in critical scenarios where traditional sensors fail:

  • Contactless vital signs & static presence monitoring: tracks millimetre-level body fluctuations of the human torso. By evaluating displacement changes greater than 0.1mm, the module captures a fluctuating curve that isolates chest movement. This enables precise analysis of breathing patterns and sleep phases without using invasive cameras
  • High-performance security & fall detection: measures abrupt changes in pre-processed velocity vectors and spatial direction. By computing the frequency and peak-to-peak values of the micro-motion signals, it allows for real-time identification of accidental falls while filtering out environmental noise caused by pets.
  • Multi-target multi-dimensional tracking: maps the trajectory and speed of multiple subjects simultaneously by utilising clean, onboard-processed spatial data vectors instead of bandwidth-heavy raw structures. This provides a rich behavioural context ideal for optimising dynamic HVAC systems based on real-time room density

Technical hardware architecture

To enable precise sensor fusion and algorithm design, the DFRobot C4002 Radar Module operates under the following hardware parameters and telemetry bandwidth constraints:

Data pipeline and accessibility layer

To properly scope custom DSP development and firmware integration, developers must understand the boundaries of the C4002 processing pipeline. The onboard digital signal processor (DSP) abstracts low-level radar mathematics to deliver actionable telemetry without overloading Edge microcontrollers or choking the standard 115200 bps serial link.

  • ADC raw data (inaccessible): high-speed differential IQ sampling data is handled entirely within the chip’s internal pipeline. Raw ADC streams are not exposed over the UART interface to maintain low pin-count and power profiles
  • FFT range-doppler heatmaps (inaccessible): the 1D and 2D Fast Fourier Transforms are computed locally inside the core. Intermediate spectrum maps are condensed internally to prevent bandwidth choking on standard serial links
  • 3D point Cloud vector (inaccessible): the module does not allow access to raw point-Cloud data. The point-Cloud matrix is processed strictly within the internal pipeline to isolate target clusters and remove environmental static noise before outputting serial frames
  • Tracking & inference layer (fully accessible): advanced target tracking parameters — including processed micro-motion energy values, displacement curves for tracking fluctuations greater than 0.1mm, and velocity vectors — are readily exposed via standard AT frames.

Developer implementation guide

The true potential of the C4002 Radar Module emerges when its data stream is integrated into artificial intelligence architectures. By utilising Full Data Access Mode, developers can capture real-time displacement curves, velocity vectors, and micro-motion energy values to train machine learning models (such as dense neural networks or CNNs). This approach allows the system to ‘learn’ to differentiate subtle micro-movement patterns — such as the distinction between regular breathing during deep sleep and the anomalies of sleep apnea — transforming a presence sensor into an intelligent diagnostic node capable of executing local inference via TinyML.

Edge Impulse is a TinyML framework for the Edge AI lifecycle

To enable Full Data Access Mode, the C4002 Radar Module requires specific configuration via its UART communication interface. Engineers can use software tools provided by the DFRobot ecosystem or send specific AT commands to unlock the filtered telemetry stream, bypassing the standard digital outputs that only provide simple binary states. This flexibility is crucial for R&D projects where fine-tuning gain, range, and noise thresholds is necessary to adapt the hardware to complex physical environments.

Thanks to available libraries for Arduino and ESP32, integrating this sensor into IoT projects is nearly immediate, enabling telemetry transmission via protocols like MQTT or HTTP. Furthermore, its compatibility with Home Assistant (through custom integrations or ESPHome) allows advanced users to incorporate this high-fidelity displacement and micro-motion data into residential automation dashboards.

Implementing a TinyML workflow with Edge Impulse

To transform the processed mmWave data bursts into complex classifications — such as fall detection or respiration patterns — the most efficient approach is deploying a TinyML workflow at the Edge. Utilising the Edge Impulse platform, this process is divided into three critical technical phases:

1. Real-time data ingestion and normalisation

The initial step consists of capturing the multi-dimensional tracking vectors (displacement curves, speed, and energy flags) delivered by the sensor at 10Hz over the UART interface. To feed the TinyML pipeline, the microcontroller firmware must structure these telemetry values into fixed time windows (e.g., 2000ms blocks containing 20 full frames).

Using the Edge Impulse Data Forwarder via a serial connection, these windows are streamed directly to the platform for dataset labelling. Normalising the micro-motion velocity and energy vectors at this stage is crucial to prevent sensor-distance variations from biasing the model’s training.

2. DSP block and feature extraction

Once collected, the raw data is not fed directly into the neural network; it first passes through a custom digital signal processing (DSP) block to reduce dimensionality. Within the Edge Impulse interface, a Spectral Analysis block is configured to process the fluctuating displacement and velocity vectors. This block applies a high-pass filter to eliminate static background noise and executes a Fast Fourier Transform (FFT). The output is a compact feature map that highlights micro-movement frequencies (such as the peak-to-peak patterns of human respiration greater than 0.1 mm) and sharp, high-energy acceleration peaks characteristic of a fall.

3. Model architecture and TensorFlow Lite deployment

With optimised features, a 1D Convolutional Neural Network (1D-CNN) or a Keras classifier optimised for time-series data is trained. The network learns to map the spectral patterns to the desired target labels (e.g., Resting, Walking, Fall Detected). Following the quantisation process (converting the model from Float32 to Int8 to minimise memory footprint), the final model is exported as a C++ library using TensorFlow Lite for Microcontrollers. This allows the algorithm to run natively on the edge MCU, executing local inference in under 15 milliseconds while keeping RAM consumption below 20KB.

Conclusion: streamlining Edge AI development

By combining DFRobot Fermion: C4002 mmWave Radar Module with TinyML, developers can extract meaningful spatial behaviour and deploy intelligent presence or health-monitoring features on low-power microcontrollers without relying on expensive processors or Cloud infrastructure.

With onboard radar filtering, TensorFlow Lite models, and streamlined Edge Impulse workflows, the solution simplifies AI deployment while reducing development complexity and time-to-market. The result is a practical, low-latency Edge AI architecture for building efficient and privacy-friendly smart devices.

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Previous Post
Deploying the world’s first pure photonic AI network

World’s first pure photonic AI network to supercharge data centres