Asset Tracking: Real-Time Location System (RTLS)
A practical guide to RTLS positioning methods (RSSI, ToF, TDoA, AoA), physical layers (BLE, UWB, Wi-Fi), and how to size a real deployment.
Contents & prerequisites
Knowing where a forklift, a surgical tray, or a pallet of high-value inventory is right now, not where it was scanned last, is the difference between a warehouse that runs on real-time data and one that runs on guesswork and cycle counts. Real-Time Location Systems (RTLS) are the class of IoT technology built to close that gap, trading off accuracy, range, cost, and power in ways that dictate which physical layer fits a given facility.
What RTLS Actually Delivers
RTLS is not a single technology — it's an architecture pattern: tags attached to assets or people, a fixed infrastructure of anchors/readers that observe those tags, and a positioning engine that turns raw radio measurements into (x, y, [z]) coordinates on a floor plan, updated continuously (seconds, not hours).
This distinguishes RTLS from simple presence/proximity systems (e.g., a single RFID gate that logs "asset left the building") in two ways:
- Continuous tracking — position is estimated repeatedly, not just at a chokepoint crossing.
- Sub-room accuracy — RTLS targets meter or sub-meter precision inside a building, where GPS doesn't work reliably (multipath, no line-of-sight to satellites).
Core Positioning Techniques
All RTLS methods reduce to measuring some physical quantity from the tag's radio signal and converting it to distance or angle, then combining multiple measurements geometrically.
| Technique | What's measured | Typical accuracy | Notes |
|---|---|---|---|
| RSSI trilateration | Received signal strength vs. known path-loss model | 3–10 m | Cheapest, most affected by multipath/fading |
| ToF / RTT (Time of Flight) | Round-trip signal propagation delay | 1–3 m (UWB: 10–30 cm) | Needs tight clock sync or two-way ranging |
| TDoA (Time Difference of Arrival) | Arrival time differences at ≥3 synchronized anchors | 0.3–2 m | Anchors need common time reference |
| AoA (Angle of Arrival) | Phase difference across an antenna array | 0.5–3 m | Needs multi-antenna anchors, good for fewer anchors/large areas |
| Fingerprinting (e.g., Wi-Fi RSSI maps) | Pattern match against a pre-surveyed signal map | 2–5 m | No extra hardware if Wi-Fi already exists; needs site survey and re-survey after layout changes |
Trilateration math (ToF-based), the core idea: if a tag's distance from three anchors at known coordinates is d1, d2, d3, each distance defines a circle (2D) or sphere (3D) of possible positions. The tag's position is the intersection point:
(x - x1)² + (y - y1)² = d1²
(x - x2)² + (y - y2)² = d2²
(x - x3)² + (y - y3)² = d3²
Solving this linear system (after subtracting equations to cancel the quadratic terms) gives a closed-form (x, y). Real systems use 4+ anchors and least-squares fitting to average out measurement noise — a single noisy ToF reading skews the fix badly, so redundancy matters more than any single anchor's precision.
Physical-Layer Choices and Their Trade-offs
| Layer | Range/anchor | Native accuracy | Power | Cost/tag | Best fit |
|---|---|---|---|---|---|
| BLE (RSSI or AoA) | 10–30 m | 1–5 m (RSSI), <1 m (AoA) | Very low, coin-cell years | Low | Asset/people tracking, retail, healthcare |
| UWB | 20–50 m | 10–30 cm | Low-moderate | Moderate-high | Precision tracking: tools, robots, safety zones |
| Wi-Fi (RTT/fingerprint) | 50–100 m | 2–5 m | Moderate (if tag has full Wi-Fi radio) | Low if infra reused | Large open areas, reusing existing APs |
| RFID (active) | 20–100 m | Zone-level, not true position | Low | Low | Choke-point/zone presence, not continuous RTLS |
| GPS/GNSS | Outdoor, km | 3–10 m (open sky) | Moderate | Low | Yard, outdoor fleet, breaks down indoors |
The fundamental tension: UWB gives the best accuracy because it uses wide bandwidth (≥500 MHz) to resolve time-of-flight precisely — bandwidth and time resolution are inversely related (Δt ≈ 1/B), so a 500 MHz UWB pulse resolves timing to ~2 ns, corresponding to ~60 cm of path length, and with pulse-shape correlation techniques, real systems do significantly better than that raw bound. BLE's narrowband signal can't resolve time that finely, so BLE RTLS leans on RSSI (noisy, environment-dependent) or angle-of-arrival hardware to get better than room-level accuracy.
Worked Example: Sizing a Warehouse RTLS Deployment
A 150 m × 80 m warehouse needs forklift tracking to ±1 m for collision-avoidance zoning, using UWB anchors with 30 m usable range accounting for shelving obstructions.
- Anchor grid spacing: for reliable TDoA fixes, each point should see ≥3 anchors — plan a grid spacing of ~20 m (under the 30 m range to allow overlap margin).
- Anchor count: along 150 m → 150/20 ≈ 8 positions; along 80 m → 80/20 = 4 positions → 8 × 4 = 32 anchors.
- Check overlap: at 20 m spacing, any point is within 20/√2 ≈ 14.1 m of the nearest anchor diagonal — well under the 30 m range, so ≥3 anchors stay in range even with obstruction losses. ✓
- Tag budget: 60 forklifts + 200 high-value pallets = 260 tags. At ~6.5–10.4k in tags alone, plus 32 anchors at ~4.8–9.6k) plus PoE switch/gateway infrastructure.
- Update rate vs. battery life: if forklifts need 4 Hz updates (fast-moving, collision safety) but pallets only need 0.1 Hz (slow-moving inventory), tag firmware should support per-tag configurable report rates — this is a standard RTLS platform feature and the main lever for battery life (a tag reporting 40× less often lasts roughly 40× longer, all else equal).
This sizing exercise generalizes: accuracy target sets the physical layer, range sets anchor density, and update-rate requirements set tag battery life — those three decisions dominate RTLS project cost more than any single component price.
System Architecture: Where RTLS Fits in the IoT Stack
[Tag] --wireless (BLE/UWB/Wi-Fi)--> [Anchor/Reader] --Ethernet/PoE--> [Location Engine/Edge Server] --API/MQTT--> [Cloud/Application]
- Tags transmit periodic beacons or respond to ranging requests; some (BLE) are tag-initiated broadcast-only for lowest power, others (UWB two-way ranging) require bidirectional exchange.
- Anchors are fixed, surveyed, time-synchronized (critical for TDoA) infrastructure — synchronization is usually wired (Ethernet/PoE with PTP-like sync) rather than wireless, because clock drift directly becomes position error.
- Location engine runs the trilateration/multilateration math, typically at the edge (low latency, no cloud round-trip needed for real-time zone alerts) with position history streamed to the cloud for dashboards, analytics, and historical replay.
- Application layer consumes positions as just another telemetry stream — this is where RTLS overlaps with device shadow/digital twin concepts: the "shadow" state includes a location field updated at the tag's report rate.
Practical Deployment Considerations
- Multipath and NLOS (non-line-of-sight): metal shelving, forklifts, and machinery reflect and block signals; UWB tolerates NLOS better than RSSI-based BLE but still needs site survey and anchor placement above obstruction height.
- Anchor time synchronization: TDoA accuracy is bounded by clock sync error — a 1 ns sync error translates to ~30 cm of position error, so wired PTP/sync infrastructure is not optional for sub-meter TDoA systems.
- Tag density and RF congestion: hundreds of tags reporting on shared unlicensed spectrum (2.4 GHz for BLE) need scheduled/TDMA reporting to avoid collisions degrading update rate — this is a platform-level MAC design concern, not something to leave to default beacon intervals.
- Calibration drift: fingerprinting-based systems need periodic re-survey as the RF environment changes (new shelving, seasonal inventory); ToF/TDoA systems are more robust to environmental change since they rely on physics (time/distance) rather than a stored signal map.
Key Takeaways
- RTLS provides continuous, sub-room-accuracy indoor positioning by combining tags, fixed anchors, and a location engine — distinct from simple RFID presence/gate detection.
- Core positioning methods are RSSI trilateration, ToF/RTT, TDoA, AoA, and fingerprinting, trading accuracy against infrastructure complexity and cost.
- UWB's wide bandwidth gives the best native time (and thus distance) resolution —
Δt ≈ 1/B— making it the default choice when sub-meter accuracy matters; BLE and Wi-Fi trade accuracy for lower cost and reuse of existing infrastructure. - Anchor density is set by range and the need for ≥3 anchors in view at any point; anchor time synchronization error directly limits TDoA accuracy (~30 cm per ns of sync error).
- Deployment cost is driven by three decisions: required accuracy (picks the physical layer), coverage area (picks anchor count), and required update rate (picks tag battery life and RF channel loading).
Learning
Sign in to track your progress.
Evidence
Public projects engineers linked to Asset Tracking: Real-Time Location System (RTLS).
Yocto Reference Design
by Lucas Meyer
Lucas Meyer built a production-oriented project around Yocto, Device Tree, Linux drivers.
YoctoDevice TreeLinux driversU-BootMatter Reference Design
by Kenji Tanaka
Kenji Tanaka built a production-oriented project around Matter, BLE, MQTT.
MatterBLEMQTTSecure provisioningEtherCAT Reference Design
by Ivan Petrov
Ivan Petrov built a production-oriented project around EtherCAT, Modbus, PLC integration.
EtherCATModbusPLC integrationReal-time LinuxSecure boot Reference Design
by Noah Smith
Noah Smith built a production-oriented project around Secure boot, Threat modeling, PKI.
Secure bootThreat modelingPKIOTA securitySensor nodes Reference Design
by Ben Carter
Ben Carter built a production-oriented project around Sensor nodes, Low power design, SPI.
Sensor nodesLow power designSPIPCB bring-up
