Indoor Positioning System
The Haltian Inventory Tracking Solution (HITS) provides real-time indoor positioning for tracking assets and devices within buildings. The system uses Wirepas mesh networks and RSSI-based patented positioning algorithms to calculate device positions, delivering location data through the platform’s standard APIs. Energy-harvesting locators enable wireless installation with no changes to existing buildings or networks.
How Positioning Works
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#F6FAFA', 'primaryTextColor': '#143633', 'primaryBorderColor': '#143633', 'lineColor': '#143633', 'secondaryColor': '#C7FDE6', 'tertiaryColor': '#73F9C1', 'clusterBkg': '#ffffff', 'clusterBorder': '#143633', 'edgeLabelBackground': '#ffffff'}}}%%
flowchart TB
subgraph North["fa:fa-desktop Applications"]
Finder["Haltian Finder"]
Studio["Haltian IoT Studio"]
Custom["Custom Applications"]
end
subgraph Cloud["fa:fa-cloud Haltian IoT Cloud"]
Ingest["Ingestion"]
PosEngine["Haltian Positioning Engine"]
Store["Data Store"]
StreamAPI["Stream API<br/><i>MQTT</i>"]
ServiceAPI["Service API<br/><i>GraphQL</i>"]
DataAPI["Data API<br/><i>Parquet</i>"]
Ingest --> PosEngine --> Store
Store --> StreamAPI
Store --> ServiceAPI
Store --> DataAPI
end
subgraph GW["fa:fa-server Gateway"]
Sink["Wirepas Sink"]
Proc["Gateway Processor<br/><i>CBOR → JSON</i>"]
Sink --> Proc
end
subgraph South["fa:fa-broadcast-tower Positioning Infrastructure"]
direction LR
L1["EH Locator<br/><i>Router mode</i>"]
L2["EH Locator<br/><i>Beacon mode</i>"]
L3["EH Locator<br/><i>Router mode</i>"]
end
subgraph Tags["fa:fa-tag Tracked Devices"]
direction LR
T1["NANO Tag"]
T2["NANO Tag"]
T3["NANO Tag"]
end
T1 & T2 & T3 -->|"BLE DA<br/>broadcast"| L1 & L2 & L3
L1 & L3 -->|"Wirepas Mesh<br/>AES-128"| Sink
Proc -->|"LTE / Ethernet<br/>TLS"| Ingest
StreamAPI & ServiceAPI & DataAPI --> Finder & Studio & Custom
style North fill:#ffffff,stroke:#143633,stroke-width:2px,color:#143633
style Cloud fill:#ffffff,stroke:#143633,stroke-width:2px,color:#143633
style GW fill:#ffffff,stroke:#143633,stroke-width:2px,color:#143633
style South fill:#ffffff,stroke:#143633,stroke-width:2px,color:#143633
style Tags fill:#ffffff,stroke:#143633,stroke-width:2px,color:#143633
style PosEngine fill:#73F9C1,stroke:#143633,stroke-width:2px,color:#143633
style L1 fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style L2 fill:#C7FDE6,stroke:#143633,stroke-width:2px,color:#143633
style L3 fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style T1 fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style T2 fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style T3 fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Sink fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Proc fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Ingest fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Store fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style StreamAPI fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style ServiceAPI fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style DataAPI fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Finder fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Studio fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633
style Custom fill:#F6FAFA,stroke:#143633,stroke-width:2px,color:#143633Position calculation follows five steps:
- Tag broadcasts — A NANO Tag attached to an asset transmits BLE advertisement packets using Wirepas 5.2 Direct Advertisement (DA) protocol
- Locators receive — Multiple EH Locators in range receive the signal and measure RSSI (Received Signal Strength Indicator)
- Data forwarded — RSSI data is sent through the Wirepas mesh network to the gateway
- Cloud calculates — The Haltian Positioning Engine calculates the tag’s coordinates using collected RSSI values and patented positioning algorithms
- Position delivered — Calculated position is available via MQTT (real-time), GraphQL (query), or Parquet (historical export)
The positioning system works with as few as 1 EH Locator in range — the tag’s position is reported based on proximity to the locator. With 3 or more locators receiving the signal, the system achieves higher accuracy. More locators in range means better positioning precision.
System Components
The positioning system requires three hardware components. Each has its own detailed documentation page.
| Component | Role in Positioning | Details |
|---|---|---|
| NANO Tag | Attached to tracked assets. Broadcasts BLE signal. Reports every 2 minutes while moving, every 24 hours when stationary. | Up to 5 years battery life |
| EH Locator | Fixed anchor that receives tag signals and provides RSSI data for position calculation. Operates in Router mode (routes mesh + beacons) or Beacon mode (beacons only). | Powered by indoor light (energy harvesting) or USB-C |
| IoT Gateway | Bridges the Wirepas mesh to the cloud via LTE or Ethernet. One or more per site. | Global LTE connectivity out of the box |
Use Cases
Where Is My Equipment Right Now?
Tags on equipment and tools report their position while being moved between workstations. Staff locate assets instantly through the Finder app or custom applications, reducing search times across the facility.
Which Section Holds Each Asset?
Real-time position tracking across warehouse floors provides visibility into asset utilization. Zone-based tracking identifies which section holds each item, enabling real-time inventory management and minimizing equipment downtime.
Positioning Modes
Haltian IoT provides two complementary approaches to location tracking:
Precise Positioning (Coordinates)
Returns calculated coordinates based on RSSI positioning, available as global WGS84 coordinates (latitude/longitude). Each position includes an accuracy estimate in meters. Use for map visualization, movement tracking, and heat maps.
Zone-Based Positioning
Reports which named zone (room, area) contains the device, based on zone polygon boundaries configured in the platform. Returns zone name, identifier, entry timestamp, and detection confidence. Use for room-level tracking and occupancy by area.
Coordinate Systems
| System | Format | Status | Use Case |
|---|---|---|---|
| Global (WGS84) | GeoJSON Point [longitude, latitude] | Primary | All positioning — indoor and outdoor |
| Local (Cartesian) | X/Y/Z in meters, building-relative | Deprecated — removed in R3 (end of summer 2026) | Legacy indoor positioning |
| Zone | Named area with polygon boundary | Active | Room-level location |
Local Cartesian coordinates (positionLocal) are deprecated and will be fully removed in R3 (end of summer 2026). Global WGS84 coordinates are the only supported system going forward. See the Location Tracking guide for migration details.
Accuracy
Positioning accuracy depends on the number and placement of EH Locators, physical environment, and tag reporting frequency.
| Accuracy Range | Typical Scenario |
|---|---|
| 1–3 m | Wirepas Mesh with adequate locator density |
| 3–5 m | Standard BLE with fewer reference points |
| Room-level | Zone-based positioning (device within zone polygon) |
Factors that reduce accuracy:
- Insufficient locator density (fewer than 3 locators in range)
- Metal obstructions and thick concrete walls blocking RF signals
- Low tag battery reducing transmission power or update frequency
Deployment
Required Components
| Component | Quantity |
|---|---|
| NANO Tags | One per tracked asset |
| EH Locators | Multiple per area (3+ recommended for best accuracy) |
| IoT Gateway | One or more per site |
Installation Guidelines
- Mount EH Locators at a minimum height of 2.5 m from the floor
- Avoid metal surfaces and obstructions that block RF signals
- Deploy locators following the Locator Grid — the recommended maximum spacing between devices for optimal positioning accuracy
- No wires or changes to existing buildings required — EH Locators harvest power from indoor lighting
- The system operates independently and does not interfere with existing IT networks
Locator density and placement directly affect positioning accuracy. Contact Haltian for site-specific deployment planning and Locator Grid recommendations for your environment.
Security
| Layer | Protection |
|---|---|
| Mesh radio | AES-128 encryption for all wireless traffic between tags, locators, and gateway |
| Gateway → Cloud | X.509 certificate-based TLS authentication |
| API access | API key authentication with role-based access control |
| Privacy | No image capture or biometric data — positioning uses radio signal strength only |
Tags and locators have no IP connectivity and are not addressable from the internet. They communicate exclusively through the Wirepas mesh radio, with the gateway as the only internet-facing component.
Accessing Position Data
Position data is available through all three Haltian IoT APIs:
| API | Protocol | Position Data |
|---|---|---|
| Stream API | MQTT | Real-time position events as they occur |
| Service API | GraphQL | Latest position, position history, zone assignment |
| Data API | Parquet | Historical position time-series for analytics and AI/ML |
Two measurement types carry position data: position (precise coordinates with accuracy) and position_zone (zone name, type, and confidence).
For built-in visualization, Haltian Finder provides device search and interactive floor plan maps. Infrastructure is configured through Haltian IoT Studio.
Next Steps
- Location Tracking Guide — Implementation guide with GraphQL queries, MQTT streaming, and Python code examples
- Haltian NANO Tag — Tag specifications and configuration
- Haltian EH Locator — Locator specifications and installation
- Data Model — Space hierarchy, zones, and device placement
- Wirepas Mesh — Underlying mesh network architecture
- Haltian Finder — Asset search and location visualization