Location Engine Lookup Settings
Table of Contents
Edge Device Overview
Check out the 'Edge' range of devices on our website.
The 'Edge' range of devices rely on our Location Engine in order to resolve raw 'scan' data into positions (lat/long). Obtaining a location is complex, but we can think of it happening in two key stages, each with different configuration options.
1. Device: Location Scan
The device scans for GNSS satellites and WiFi access points. When it uploads data, it also sends Cell tower information from the connection
We can configure this behaviour in system parameters (i.e. only scan for GNSS and not Wi-Fi, or do 1 first then the other etc). See Yabby Edge Cellular - Location Scanning Parameters for details. By default, the device will scan for all 3.
2. Location Engine: Lookups and Filtering
The raw data is uploaded to the server, and then the Location 'looks up' the lat/long position. This involves making API calls to various location providers. The process is described below.
Default Lookup Settings
The Location Engine attempts the following look ups, in order. This is in order of relative accuracy of each method.
- LE-GNSS (GNSS lookup) - 30-100m typical accuracy
- LE-WIFI-PER1K (WiFi lookup) - 30-100m typical accuracy
- If cell scan data is available - it is also sent in the same API call along with the Wi-Fi access point data.
We need the raw data to begin with in order to do the lookup - i.e. if the device scans and doesn't see any satellites, then the GNSS lookup is skipped and we move to WiFi.
There are accuracy requirements on each step, which if they are not met, that lookup is 'failed' and we move to the next. So it follows if we return a WiFi lookup, GNSS failed. If we are returning Cell positions, we couldn't get a position off GNSS or WiFi
- If the lookup is successful, an estimated position accuracy is returned, if this is within 100m, this position is accepted used.
- If the lookup fails or pos. acc. estimate >100m , try WiFi.
- The WiFi Access Point MAC addresses and Cell scan data is sent to our location provider
- Once the result is returned, we identify if the returned result was obtained from Wi-Fi or Cellular data (based on the position accuracy estimate)
- WiFi results
- These are checked against a 'jump filter' - which compares this new position to the previous position and time. If we had to be travelling at >1000km/h to move this far, the fix is discarded. This prevents some large anomalies as MAC addresses aren't always unique.
- Cellular results
- The cellular accuracy is much less than that of GNSS or WiFi, so we only use this position if we've moved a great distance without a GNSS or WiFi fix. This stops scenarios where a device appears to move on the map, simply because it's getting updated cell fixes but in reality is in the same spot.
- The cellular lookup result is discarded if it is less than 10x the accuracy (of the new lookup) away from the last location. The minimum accuracy bound is 100m, this means that the location has to be further than 1km away from the last location to be considered valid.
Adjusting Lookup Settings
The default settings provided are aimed at producing the best possible out-of-box experience for a typical use case. They are the result of extensive testing and adjustment over time. However, they may not suit all applications. Different settings can be used to meet different price points and use-cases.
To use alternative lookup settings to the defaults, a new set must be created. The user will require the Location Engine Lookup Settings Manager permission on their account to undertake the following:
- From the toolbar in OEM, Manage -> Location Engine Lookup Settings
- At the bottom of the grid, click New
- The following dialogue appears
Give the settings a name, select the Distributor, Vendor, Client Groups, and select your chosen settings.
Lookups are performed in order left to right of the options shown. The first successful position returned is used.
It may be tempting to try and 'increase' the accuracy of positions by simply reducing the Max Accuracy Meters settings. Use care. In our testing, dropping below 100m will result in a high proportion of positions being discarded. It is not advised to reduce this value.
Which source was used to resolve the position is sent to the end server. For 3rd party servers, this information is sent in the JSON payload.
On Telematics Guru, this is logged in Analogues 8, 9, 10 and 11.
Analogue 8= Position Source (Src)
- None = 0
- LE-GNSS = 1
- LE-Wifi-Per1k = 6
- CellId = 7
- LE-Cell-Pro = 8
- LE-Wifi-Bundle = 9
- Analogue 9 = GPS Satellite count
- Analogue 10 = Beidou Satellite count
- Analogue 11 = Dilution of Precision
The Edge devices also show the position source and an accuracy ring on Telematics Guru - Live & Trip History Map View when clicking on a specific point.