How a Position is Determined

A tag does not compute its own position. It reports what it observes — the mobile network cell it is registered on, the WiFi access points in range, and the BLE devices it sees. The position is derived from that in the cloud.

This page describes the order in which the application consults its sources. Knowing it lets you correct a wrong position deliberately instead of guessing.

The Order

The application asks the most precise and cheapest source first and works towards the least precise and most expensive. The first one that answers wins — nothing further is consulted after that.

Step What is checked Result

1

Exclusion. WiFi access points recorded as Ignored are removed from the message — even before anything reaches an online service.

The observation is cleaned up.

2

Is the tag itself a recorded beacon? If yes, and it is marked as Gateway: its position is handed to every device it observed.

Position for the tag and for every device it saw. Done.

3

Was the tag seen by a gateway beacon? Then it has already received its position from there.

No further search. Done.

4

Is one of the reported WiFi access points recorded? Checked in order of signal strength — the nearest one first.

Position of the access point. Done.

5

Is the serving cell recorded? Only when the message contained no WiFi data at all.

Position of the cell. Done.

6

Is this environment already known? The position cache recognizes the combination of cell and observed WiFi access points.

Previously resolved position. Done.

7

Ask an online service. Only now does a — chargeable — request go out. The result is remembered for the next message from the same environment.

Position from the service.

8

If the service returns nothing usable and WiFi was part of the request: fall back to the known cell.

Coarse position or none.

Why the Cell is so Far Down

A mobile network cell covers square kilometres, a WiFi access point a few dozen metres. That is why the cell is consulted only when no WiFi data was reported at all.

If access points were reported but none of them is recorded, the application deliberately does not use the cell either, and asks the online service instead. Otherwise a missing answer would be replaced by a bad one — and a position that is kilometres off is more misleading than none.

The Position Cache

The cache is the memory of the positioning. It stores which position an online service returned for a given radio environment, and recognizes that environment again later.

What is recognized is the combination of mobile network cell and the set of observed WiFi access points. Signal strengths deliberately play no part — they change with every position of the device, which would make every observation unique.

Nor is an exact match required. A WiFi environment is never twice the same: a hotspot appears, a router is switched off, one is briefly out of range. It is therefore enough if at least two access points match; among several candidates the one with the most matches wins.

What this means in practice:

  • A device that always reports from the same place causes no cost after the first request.

  • The cache applies across all tenants — a mobile network cell is at the same place regardless of who observes it.

  • A wrong entry therefore affects everyone. It can be removed in the administration area; the environment is then relearned on the next report. See Position Cache.

  • Entries expire on their own after about a week.

What You Can Do

Observation Action

A position is consistently wrong, always at the same place

Open the event in Decision events and see in the raw data which source answered. If it was the cache, remove the entry in the administration area. If it was a recorded access point, correct its position.

Positions jump between distant places

Most likely a mobile hotspot in the environment. Find the access point in question in the raw data and set it to Ignored via Customize WiFi.

A device has no position at all

The decision is recorded anyway. The detail dialog shows whether any data arrived — without a serving cell no position can be determined.

Positions are generally too coarse

Check whether WiFi access points are recorded for the area. A single correctly placed access point improves the result more than any setting.

An entire area needs to be located precisely

Mount a beacon there, mark it as Gateway and set its position. Every device in range then receives that position — with no online request.

What is in the Message

For understanding the raw data in the detail dialog:

Item Meaning

Serving cell

The cell the device is registered on, with country and network code

Neighbour cells

Further received cells. They refine the position at the online service

WiFi access points

Address, signal strength and channel per access point

BLE devices

Addresses and signal strengths of the devices seen, sorted by signal strength

Trigger

Why the device reported: motion start, motion end, or on schedule

When a device reports other BLE devices, a separate position is determined for each of them. This is how devices without a cellular connection of their own can be located — they are seen by one that has.