ESP32-S3 + DWM3000 UWB Drone Localization System
- Carlos Osorio
- hace 4 horas
- 3 min de lectura
Accurate localization is one of the main challenges for autonomous drones operating in GPS-denied environments, including indoor spaces, urban canyons, disaster zones, tunnels, and collapsed structures. Conventional GNSS-based navigation can become unreliable or completely unavailable in these scenarios. This project explores a compact localization architecture based on the ESP32-S3-WROOM-1 microcontroller and the Qorvo DWM3000 Ultra-Wideband (UWB) transceiver for real-time drone ranging and relative positioning.

The proposed system combines the communication and embedded processing capabilities of the ESP32-S3 with the precise time-of-flight measurement capabilities of UWB. The DWM3000 operates using IEEE 802.15.4 UWB technology and enables distance estimation between mobile and fixed nodes with centimeter-level potential under favorable line-of-sight conditions.
System Architecture
The experimental platform is organized around three primary nodes:
Anchor 1 — ESP32-S3 + DWM3000
Anchor 2 — ESP32-S3 + DWM3000
Mobile Tag — ESP32-S3 + DWM3000
The anchors provide known or continuously updated reference positions, while the tag can be installed on the drone. Distance measurements between the tag and anchors are used to estimate the drone's relative position. Communication between the ESP32-S3 and DWM3000 is implemented through the SPI interface.
UWB Distance Measurement
The system can support different UWB ranging strategies, particularly Single-Sided Two-Way Ranging (SS-TWR) and Double-Sided Two-Way Ranging (DS-TWR). In two-way ranging, the distance is estimated from the propagation time of the UWB signal: [d = c,t_p], where (d) is the estimated distance, (c) is the speed of light, and (t_p) represents the estimated UWB signal propagation time. DS-TWR is particularly attractive for drone localization because it mitigates the effects of clock offsets between independent UWB nodes. SS-TWR requires fewer message exchanges and thus incurs lower communication overhead, whereas DS-TWR generally provides better ranging robustness when accurate synchronization is difficult.
Drone Localization
For two anchors with known coordinates, [A_1=(x_1,y_1), \qquad A_2=(x_2,y_2),] the UWB system measures the distances [r_1=|P-A_1|,\qquadr_2=|P-A_2|,] where [P=(x,y)] represents the estimated drone position. With additional anchors, the architecture can be extended to 2D multilateration or 3D localization. Position estimates can also be fused with onboard information such as:
Visual-Inertial Odometry (VIO)
IMU measurements
Optical flow
LiDAR
Camera-based navigation
Barometric altitude
Extended or Unscented Kalman Filtering
This fusion is particularly useful for reducing errors caused by UWB non-line-of-sight propagation and multipath effects.
Drone-to-Drone Localization
An important extension of the platform is its use in multi-UAV networks. Rather than treating all anchors as permanently fixed infrastructure, ESP32-S3 + DWM3000 nodes can be mounted on multiple drones. For example:
Drone 1 → UWB Anchor 1Drone 2 → UWB Anchor 2Drone 3 → Mobile Tag
The drones can exchange ranging and localization information to construct a dynamic relative-positioning network. Such a configuration is attractive for cooperative exploration and search-and-rescue missions where installing permanent localization infrastructure may not be possible.
Applications
The ESP32-S3 + DWM3000 architecture is particularly suitable for research involving:
GPS-denied UAV navigation
Indoor drone localization
Search-and-rescue robotics
Cooperative UAV navigation
Drone swarm relative positioning
UWB-based mapping
Infrastructure inspection
Disaster-area exploration
Autonomous landing
Sensor-fusion research
Conclusion
The ESP32-S3 + DWM3000 UWB Drone Localization System provides a low-cost and flexible experimental platform for investigating precise ranging and relative navigation in environments where GNSS cannot be trusted. By combining UWB ranging, embedded processing, and sensor fusion, the platform can support both fixed-anchor localization and cooperative drone-to-drone positioning. The next development stage can integrate DS-TWR/SS-TWR measurements, real-time USB telemetry, multilateration, and UKF-based sensor fusion to generate a live map of anchor and drone positions. This architecture can ultimately serve as a building block for autonomous and cooperative UAV operations in complex GPS-denied search-and-rescue environments.


Comentarios