meta data for this page
lamaPLC: RD-xx - Ai-Thinker Radar Module with UART communication
The Ai-Thinker RD-xx series comprises 24 GHz mmWave radar modules, each optimized for varying levels of human detection and tracking complexity. While all use FMCW technology, their primary differences lie in connectivity, target tracking capabilities, and power requirements.
Comparison of RD-01, RD-03, and RD-03D:
| Feature | RD-01 | RD-03 | RD-03D |
|---|---|---|---|
| Primary Focus | Human presence + Wireless | Precise motion/presence | Multi-target trajectory tracking |
| Connectivity | UART, Wi-Fi, BLE 5.0 | UART | UART |
| Detection Range | Up to 5 meters | Up to 6.5 meters | Up to 8 meters |
| Detection Angle | ±60° (Horizontal) | ±60° (Horizontal) | ±60° (Azimuth), ±30° (Pitch) |
| Target Tracking | Single presence/motion | Single presence/motion | Up to 3 targets simultaneously |
| Data Output | Presence, micro-motion | Presence, micro-motion | X/Y coordinates, speed, distance |
| UART Baud Rate | 115200 (Default) | 115200 (Default) | 256000 (Default) |
| Power Supply | 3.0V – 3.6V | 3.0V – 3.6V | 5V (Stable) |
| Size | 35 x 18 mm | 20 x 20 mm | 15 x 44 mm |
Key Differentiators
- RD-01: The only one in this group with integrated Wi-Fi and Bluetooth (via BL602 chip). It is designed for smart home products that need to report human presence directly to a cloud or app without an external gateway.
- RD-03: A cost-optimized, standalone version of the RD-01 without wireless features. It offers higher bandwidth (1 GHz) for better interference resistance and is ideal for simple “occupied/unoccupied” triggers such as lighting.
- RD-03D: The most advanced in the series. Unlike the others, it provides a spatial map of up to three people, showing their exact positions in a room (X and Y coordinates) and their speed.
Rd-03 is an electrostatically sensitive piece of equipment; special precautions should be taken during handling.
PIN out
| 3V3 | input power |
|---|---|
| GND | Ground |
| OT1 | UART_TX |
| RX | UART_RX |
| OT2 | Detection result output, output high level when sensing, output low level when not sensing |
If you'd like to support the development of the site with the price of a coffee — or a few — please do so here.
Here's a handy tip: you can quickly save this page as a PDF by clicking “export to PDF” in the menu on the right side of the screen.
Characteristics of perception
RD-03 Arduino example
To connect the Ai-Thinker RD-03 to an Arduino reliably, use a dedicated library such as RD03Radar. This library simplifies the interpretation of complex 24 GHz mmWave data packets by translating them into straightforward presence and motion indicators.
Pinout
The RD-03 requires a stable 3.0V – 3.6V power supply and communicates via UART at a default baud rate of 115200.
- VCC → Arduino 3.3V
- GND → Arduino GND
- RX → Arduino TX (e.g., Pin 17 for ESP32/Mega)
- TX → Arduino RX (e.g., Pin 16 for ESP32/Mega)
Arduino code
#include <RD03Radar.h> // Use a HardwareSerial port (e.g., Serial2 on ESP32 or Serial1 on Mega) // On Uno, you may need SoftwareSerial, but performance may be limited. RD03Radar radar(Serial2); void onPresenceChange(RD03PresenceState state, float distance) { if (state == RD03PresenceState::MOTION_DETECTED) { Serial.print("Motion detected at: "); Serial.print(distance); Serial.println(" cm"); } else if (state == RD03PresenceState::STATIONARY_DETECTED) { Serial.println("Subject is stationary (e.g., breathing detected)."); } else { Serial.println("Area is clear."); } } void setup() { Serial.begin(115200); // Set detection callback radar.onPresenceChange(onPresenceChange); // Start radar (provide RX and TX pins for ESP32) radar.begin(16, 17); Serial.println("RD-03 Radar Initialized"); } void loop() { // Required to process incoming serial data radar.loop(); }
Sources
Sensor topics on lamaPLC
This page has been accessed for: Today: 2, Until now: 47


