A Summary of Low-Power Geopositioning

A project log for LR1110 module - Tiny LoRa & WiFi/GNSS positioning

Leveraging the LR1110 to create the smallest geolocation+LoRaWAN combined module for use in tracking.

SensorsSensors 04/28/2020 at 10:530 Comments

The LM1110 leverages three technologies to have its position determined:

  1. Wi-Fi Passive Scanning
  2. GNSS Scanning
  3. LoRaWAN Geolocation

The important thing to note is that these positioning techniques are only fully (or at all) effective when used in conjunction with an external source of information or service, which imposes a bit of limitation on potential applications.

Wifi Passive Scanning

The LM1110 is able to discover WiFi b/g/n (2.4GHz) access points available in the vicinity of the device and extract the MAC addresses. By transmitting these addresses to a Wi-Fi lookup service the positioning information can be obtained. The likelihood is that you'll do this via an external server, transmitting the MAC addresses via LoRaWAN. 

GNSS Scanning

The GNSS scanner of the LM1110 is fast and low-power, capturing a short portion of the GNSS (GPS, BeiDou) satellite signals and extracting the information required to calculate the device position. Again, this information (NAV message) is then packaged up and sent to a back-end system to compute the actual device position. By offloading the time and processor intensive work of resolving the full position, energy-efficient GNSS positioning is made possible.

There are two modes of GNSS scanning that can be used: Autonomous, and Assisted.

Autonomous Scanning

In this mode a fast search of all satellites is carried our, and any with a strong signal (better than -134dBm) are detected. 

If no strong signals are detected the device presumes it is indoors and searching for weaker signals, which is more time/energy consuming, can be scrapped. In this case it may be preferable to switch to an alternative mode of positioning (e.g. WiFi scanning) to save power.

Assisted Scanning

In order to improve the efficiency and minimise the search space for satellite signals, assistance parameters can be provided to the device. These parameters include Rough estimate of device position, current time, frequency reference error, and recent version of the GNSS Almanac...

The Almanac parameters contain coarse orbital information which describe the satellites' motion in space. Together with a coarse estimate of time and position, the Almanac can be used to exclude irrelevant space vehicles and reduce the search window for the Doppler error search.

All of these parameters have a contribution to the total error of the Doppler estimation for each satellite.

Based on the information the LR1110 will build a list of 10-12 satellites that is should look for at it's current position and time and then move onto performing the scans. 

LoRaWAN geopositioning

Given that the device is intended to be on a LoRaWAN with an accessible network service, aLoRaWAN geolocation positioning/solver service can be used:

Semtech’s LoRa geolocation solution is enabled by version two LoRaWAN gateways that share an accurate, common time base and add an ultra-high resolution timestamp to each received LoRa data packet. Each base station will report the time of arrival and supporting metadata enabling location solvers based on differential time of arrival (DTOA) algorithms to determine the end node position to the nearest block.

In short, transmitting devices positions are triangulated based on the comparison of when the signal arrives at each gateway. A whitepaper by the LoRa Alliance boasts positioning accuracies in the 20m to 200m range.


Overall the LM1110 takes a fairly unique approach to geo-positioning by leveraging multple technologies and infrastuctures, with a lot of neat features to improve accuracy and keep power consumption as low as possible. 

However, it's clear from the methods it uses and how it relies heavily on back-end processing that this part is primarily intended for remotely tracking and management assets. While it could potentially be used in a hand-held positioning system (if you returned the positioning information from the back-end), it couldn't be a standalone device.

If you have any thoughts on this, I'd love to hear them!