%% fig-cap: "Indoor Positioning Technology Comparison"
%% fig-alt: "Comparison of indoor positioning technologies by accuracy and infrastructure requirements"
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#16A085', 'secondaryColor': '#E67E22', 'tertiaryColor': '#ecf0f1', 'noteTextColor': '#2C3E50', 'noteBkgColor': '#fff3cd', 'textColor': '#2C3E50', 'fontSize': '16px'}}}%%
graph TB
subgraph Proximity["Proximity Detection (Zone-Level)"]
BLE[BLE Beacons<br/>1-3m accuracy<br/>$5-15/beacon<br/>1-5mW power]
RFID[RFID/NFC<br/>Centimeters<br/>Requires contact]
end
subgraph Zone["Zone Positioning (Room-Level)"]
WiFi[Wi-Fi Fingerprinting<br/>3-5m accuracy<br/>Uses existing APs<br/>Labor-intensive survey]
Cell[Cellular<br/>100-1000m<br/>Tower-based]
end
subgraph Precise["Precise Positioning (Sub-meter)"]
UWB[UWB<br/>10-30cm accuracy<br/>$15-30/tag<br/>Requires anchors]
Ultrasound[Ultrasonic<br/>3cm accuracy<br/>Expensive<br/>LOS required]
end
subgraph Tradeoffs["Key Trade-offs"]
T1[Accuracy vs. Cost]
T2[Infrastructure vs. Opportunistic]
T3[Power vs. Update Rate]
end
BLE --> WiFi
WiFi --> UWB
style BLE fill:#16A085,stroke:#2C3E50,stroke-width:3px,color:#fff
style WiFi fill:#E67E22,stroke:#16A085,stroke-width:2px,color:#fff
style UWB fill:#2C3E50,stroke:#16A085,stroke-width:3px,color:#fff
style Ultrasound fill:#E67E22,stroke:#2C3E50,stroke-width:2px,color:#fff
1506 Indoor Positioning Technologies
1506.1 Learning Objectives
By the end of this chapter, you will be able to:
- Compare Indoor Positioning Technologies: Evaluate Wi-Fi, BLE, UWB, and ultrasonic systems for accuracy and cost
- Apply Trilateration Calculations: Compute position estimates from beacon distance measurements
- Design Sensor Fusion Systems: Combine GPS, Wi-Fi, BLE, and IMU for seamless indoor-outdoor transitions
- Troubleshoot Multipath Effects: Identify and mitigate RF interference in indoor environments
1506.2 Prerequisites
- Location Awareness Fundamentals: Understanding of positioning technology landscape
- GPS and Outdoor Positioning: Understanding of ToF, TDoA, and multipath concepts
1506.3 Why Indoor Positioning is Different
GPS doesn’t work indoors because:
- Satellite signals are extremely weak (~10^-16 watts received)
- Building materials attenuate signals by 20-40 dB
- Multipath from walls, ceilings, and furniture creates severe interference
- No line-of-sight to satellites in most buildings
This requires alternative technologies designed for indoor environments.
1506.4 Indoor Positioning Technologies
| Technology | Accuracy | Infrastructure | Cost | Power | Use Case |
|---|---|---|---|---|---|
| BLE Beacons | 1-3m | Deploy beacons | Low | Very Low | Retail, navigation |
| Wi-Fi RSSI | 3-5m | Use existing | Free | Medium | Zone detection |
| UWB | 10-30cm | Deploy anchors | High | Medium | Asset tracking, AR |
| Ultrasonic | 3cm | Deploy sensors | Very High | High | Precision tracking |
| Camera/Vision | Variable | Deploy cameras | High | High | Analytics, AR |
1506.5 BLE Beacon Positioning
BLE beacons continuously broadcast identifier packets. Smartphones detect these signals and estimate distance based on Received Signal Strength Indication (RSSI).
1506.5.1 RSSI-Based Distance Estimation
The relationship between RSSI and distance follows a path loss model:
\[ \text{RSSI} = \text{TxPower} - 10n \cdot \log_{10}(d) \]
Solving for distance:
\[ d = 10^{\frac{\text{TxPower} - \text{RSSI}}{10n}} \]
Where: - TxPower = Measured RSSI at 1 meter (typically -59 dBm) - n = Path loss exponent (2.0 in free space, 2.5-4.0 indoors) - d = Distance in meters
Scenario: A retail store deploys BLE beacons for indoor customer navigation. The positioning system uses trilateration from RSSI measurements to estimate shopper location.
Given:
- Beacon A at position (0, 0) meters, measured RSSI = -65 dBm
- Beacon B at position (10, 0) meters, measured RSSI = -72 dBm
- Beacon C at position (5, 8) meters, measured RSSI = -68 dBm
- Calibrated path loss model: RSSI = -59 dBm at 1 meter, path loss exponent n = 2.5
- Distance formula: d = 10^((TxPower - RSSI) / (10 x n))
Steps:
- Calculate distance from Beacon A:
- d_A = 10^((-59 - (-65)) / (10 x 2.5)) = 10^(6/25) = 10^0.24 = 1.74 meters
- Calculate distance from Beacon B:
- d_B = 10^((-59 - (-72)) / (10 x 2.5)) = 10^(13/25) = 10^0.52 = 3.31 meters
- Calculate distance from Beacon C:
- d_C = 10^((-59 - (-68)) / (10 x 2.5)) = 10^(9/25) = 10^0.36 = 2.29 meters
- Apply trilateration equations:
- Circle A: x^2 + y^2 = 1.74^2 = 3.03
- Circle B: (x-10)^2 + y^2 = 3.31^2 = 10.96
- Circle C: (x-5)^2 + (y-8)^2 = 2.29^2 = 5.24
- Solving: Position estimate = (1.5, 0.8) meters
- Apply error bounds:
- With RSSI variance of +/-3 dBm, distance error is +/-30%
- Position uncertainty: +/-1.2 meters (95% confidence)
Result: Shopper estimated at (1.5, 0.8) meters with 1.2 meter accuracy, placing them in the “Electronics” zone near Beacon A.
Key Insight: BLE trilateration accuracy depends heavily on path loss exponent calibration. A path loss exponent error of 0.3 (using n=2.2 instead of n=2.5) would shift the position estimate by 0.8 meters. Always calibrate path loss in the actual deployment environment, not from datasheet values.
1506.6 Wi-Fi Fingerprinting
Wi-Fi fingerprinting maps RSSI patterns to physical locations by pre-surveying the space.
1506.6.1 Two-Phase Process
Offline Phase (Survey): 1. Walk through the space with a device 2. At each known location, record RSSI from all visible access points 3. Build a fingerprint database mapping RSSI vectors to locations
Online Phase (Positioning): 1. Device scans visible APs and measures RSSI 2. Compare current RSSI vector to database entries 3. Find closest match(es) to estimate position
1506.6.2 Challenges with Fingerprinting
- Environmental changes: Moved furniture, added walls, relocated APs
- Temporal variations: Different occupancy (empty vs. crowded) affects propagation
- Device variations: Different phones have different RSSI calibration
- Maintenance burden: Requires periodic re-surveying (every 3-6 months)
Mitigation strategies: - Crowd-sourced calibration (users’ movements gradually update database) - Hybrid approaches (combine fingerprinting with dead reckoning) - Machine learning (automatically detect and adapt to environmental changes)
1506.7 Ultra-Wideband (UWB) Positioning
UWB uses extremely short pulses (nanoseconds) across a wide frequency spectrum (3.1-10.6 GHz), enabling precise time-of-flight measurements.
Key advantages: - 10-30cm accuracy: Far exceeds BLE/Wi-Fi - Multipath resistant: Short pulses separate direct and reflected paths - Low interference: Spread spectrum doesn’t interfere with other systems
Applications: - Hospital equipment tracking (room-level precision) - Apple AirTags (precise “find my” direction finding) - Autonomous robot navigation - Augmented reality anchoring
%% fig-cap: "UWB Positioning System Architecture"
%% fig-alt: "Diagram showing UWB positioning with anchors and tag"
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#16A085', 'secondaryColor': '#E67E22', 'tertiaryColor': '#ecf0f1'}}}%%
graph TB
subgraph Anchors["UWB Anchors (Known Positions)"]
A1[Anchor 1<br/>Position: 0,0,2.5m]
A2[Anchor 2<br/>Position: 10,0,2.5m]
A3[Anchor 3<br/>Position: 10,8,2.5m]
A4[Anchor 4<br/>Position: 0,8,2.5m]
end
subgraph Tag["UWB Tag (Unknown Position)"]
T[Asset Tag<br/>Measures ToF to<br/>each anchor]
end
subgraph Calc["Position Calculation"]
ToF[Time of Flight<br/>d = c × Δt]
Trilat[3D Trilateration<br/>4 anchors for<br/>x, y, z position]
Result[Position: 4.2, 3.7, 1.0m<br/>Accuracy: ±15cm]
end
A1 <-->|TWR| T
A2 <-->|TWR| T
A3 <-->|TWR| T
A4 <-->|TWR| T
T --> ToF
ToF --> Trilat
Trilat --> Result
style T fill:#E67E22,stroke:#16A085,stroke-width:3px,color:#fff
style Result fill:#16A085,stroke:#2C3E50,stroke-width:3px,color:#fff
style A1 fill:#2C3E50,stroke:#16A085,stroke-width:2px,color:#fff
style A2 fill:#2C3E50,stroke:#16A085,stroke-width:2px,color:#fff
style A3 fill:#2C3E50,stroke:#16A085,stroke-width:2px,color:#fff
style A4 fill:#2C3E50,stroke:#16A085,stroke-width:2px,color:#fff
1506.8 Sensor Fusion for Seamless Positioning
Real-world applications often require positioning that works both indoors and outdoors. Sensor fusion combines multiple positioning technologies to provide seamless coverage.
Scenario: A delivery driver app must track location seamlessly as the driver moves from outdoor parking (GPS) to indoor warehouse (Wi-Fi/BLE) for package pickup.
Given:
- Outdoor GPS position: (37.7749 N, -122.4194 W) with HDOP = 1.2, accuracy = 4.8 meters
- GPS signal lost upon entering building (< 4 satellites visible)
- Indoor Wi-Fi fingerprint match: Warehouse Zone B, confidence 78%
- BLE beacon proximity: Beacon “Dock-3” at -62 dBm (estimated 1.5m distance)
- IMU dead reckoning: 12.3 meters walked at heading 045 since GPS loss
- Building floor plan constraint: Driver must be in accessible walkway
Steps:
- Detect GPS degradation:
- Satellite count drops from 8 to 3 over 5 seconds
- HDOP increases from 1.2 to 6.5 (poor geometry)
- Trigger: Switch to indoor positioning mode when satellites < 4 AND HDOP > 4
- Initialize indoor position from last GPS fix:
- Last valid GPS: (37.7749, -122.4194) at building entrance
- Transform to local coordinates: (0, 0) meters at entrance door
- Fuse dead reckoning with Wi-Fi fingerprint:
- IMU estimate: (8.7, 8.7) meters from entrance (12.3m at 45 degrees)
- Wi-Fi fingerprint center: (10.0, 12.0) meters (Zone B centroid)
- Kalman filter weighted average: (9.1, 9.8) meters
- IMU weight: 0.6 (recent, low drift), Wi-Fi weight: 0.4 (lower confidence)
- Refine with BLE proximity:
- Beacon Dock-3 located at (8.5, 10.0) meters
- Proximity constraint: Driver within 1.5m of Dock-3
- Updated position: (8.8, 9.9) meters
- Apply map constraints:
- Check position against floor plan
- Position (8.8, 9.9) is in valid walkway - no correction needed
- If position were in wall/shelf, snap to nearest valid location
Result: Driver position estimated at (8.8, 9.9) meters from building entrance with 2.1 meter accuracy. This corresponds to “Loading Dock 3” in warehouse system, enabling automatic package assignment.
Key Insight: Sensor fusion requires careful weighting based on each source’s reliability. GPS provides absolute position outdoors but fails indoors. IMU provides relative movement but drifts over time (1-3% of distance traveled). Wi-Fi fingerprinting gives zone-level position but requires pre-surveyed database. BLE beacons provide proximity anchoring. The Kalman filter dynamically adjusts weights as sensor reliability changes, enabling sub-3-meter positioning across the indoor-outdoor transition.
%% fig-cap: "Sensor Fusion Architecture for Indoor-Outdoor Positioning"
%% fig-alt: "Diagram showing how multiple positioning sources are combined"
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#16A085', 'secondaryColor': '#E67E22', 'tertiaryColor': '#ecf0f1'}}}%%
graph TB
subgraph Outdoor["Outdoor Sources"]
GPS[GPS/GNSS<br/>5-10m accuracy<br/>High confidence outdoors]
Cell[Cell Tower<br/>100-1000m<br/>Fallback only]
end
subgraph Indoor["Indoor Sources"]
WiFi[Wi-Fi Fingerprint<br/>3-5m accuracy<br/>Zone-level]
BLE[BLE Beacons<br/>1-3m accuracy<br/>Proximity anchoring]
end
subgraph Continuous["Continuous Sources"]
IMU[IMU Dead Reckoning<br/>Accelerometer + Gyro<br/>Drift over time]
Baro[Barometer<br/>Floor detection<br/>±0.5m vertical]
end
subgraph Fusion["Kalman Filter Fusion"]
KF[Kalman Filter<br/>Weight by reliability<br/>Update continuously]
Map[Map Matching<br/>Constrain to valid paths<br/>Snap to hallways]
end
GPS --> KF
Cell --> KF
WiFi --> KF
BLE --> KF
IMU --> KF
Baro --> KF
KF --> Map
Map --> Output[Fused Position<br/>2-5m accuracy<br/>Seamless transition]
style KF fill:#2C3E50,stroke:#16A085,stroke-width:3px,color:#fff
style Output fill:#16A085,stroke:#2C3E50,stroke-width:3px,color:#fff
style GPS fill:#16A085,stroke:#2C3E50,stroke-width:2px,color:#fff
style BLE fill:#E67E22,stroke:#16A085,stroke-width:2px,color:#fff
1506.9 Knowledge Check
1506.10 Summary
Indoor Positioning Technologies:
- BLE Beacons: Low cost, 1-3m accuracy, requires beacon deployment
- Wi-Fi Fingerprinting: Uses existing infrastructure, 3-5m accuracy, labor-intensive survey
- UWB: High precision (10-30cm), multipath resistant, higher cost
- Ultrasonic: Best accuracy (3cm) but expensive and requires line-of-sight
Key Trade-offs:
- Accuracy vs. Cost: UWB is most accurate but most expensive
- Infrastructure vs. Opportunistic: Wi-Fi reuses existing APs, BLE/UWB require deployment
- Power vs. Update Rate: Frequent positioning updates drain batteries
Sensor Fusion Principles:
- Combine multiple technologies for seamless indoor-outdoor coverage
- Weight sources by reliability (GPS high outdoors, low indoors)
- Use Kalman filters to smooth transitions and handle sensor failures
- Apply map constraints to prevent impossible positions (inside walls)
1506.11 What’s Next
Continue to Location Privacy and Regulations to learn about privacy-preserving design patterns, E911 mandates, and ethical considerations when collecting location data.