UWB centimetre positioning relies on time-of-flight measurement of Ultra-Wideband radio pulses.
Ultra-Wideband (UWB) sends very short pulses (~2 ns) over a wide band (≥ 500 MHz, channel 5 = 6489.6 MHz). This short duration enables pulse-arrival timestamping with picosecond precision — a few millimetres at time-of-flight scale.
The Qorvo DWM3000 module is an IEEE 802.15.4z-compliant UWB radio with ~15.65 ps timestamp resolution (~4.7 mm).
Measuring time-of-flight between two nodes without a shared clock is naively impossible. DS-TWR sidesteps this with 4 messages:
The 6 timestamps cancel out the clock drift between the two nodes. The formula combines two round-trip measurements to yield a 2-5 cm accurate distance.
0x21 = POLL · 0x10 = RESPONSE · 0x23 = FINAL · 0x11 = RESULTWith 3 distances to 3 anchors at known coordinates (and their geometry), 2D or 3D tag position is computed by trilateration (sphere intersection). In Centilog this runs in the browser (JavaScript), not embedded.
The tag sends the 3 distances over WiFi/UDP to a small PC relay, which forwards them via SSE to the browser. Real-time Three.js 3D visualization.
| Metric | Typical value | Conditions |
|---|---|---|
| Distance accuracy | 2 to 5 cm (1σ) | Calibrated antennas, clear LoS |
| 2D position accuracy | 5 to 10 cm | Balanced 3-anchor geometry |
| Maximum range | 300 m | LoS, integrated antennas |
| Range with external antenna | 500 m | Clear LoS, +3 dB gain |
| Refresh rate | 10 Hz | 3 anchors, configurable |
| TX peak current | ~150 mA | 1 ms pulse |
| Technology | Typical accuracy | Multipath robustness |
|---|---|---|
| UWB (DS-TWR) | 2-10 cm | Excellent (short pulses) |
| WiFi RTT 802.11mc | 1-3 m | Medium |
| BLE RSSI | 2-5 m | Poor (signal-sensitive) |
| Bluetooth AoA/AoD | 30-100 cm | Good in LoS |