Introducing the Awesome GNSS list

I’ve been interested in location services for mobile devices ever since I owned my first phone. I wrote my first location-aware apps on the HP iPAQ H555 (with an external Navman GPS antenna) and the Motorola i860, the first device to support the standardized Java Location API.

The HP iPAQ H5555 with Navman GPS 3450 antenna and the Motorola i860 (Source: USF and Wikipedia)

There have been many changes in the industry since these devices, but one consistent limitation of building apps for consumer-level phones has been the computation of location information in a “black box”. In other words, a mobile app can read the location calculated by the underlying hardware via an Application Programming Interface (API) but it cannot read any of the raw data (e.g., pseudoranges) from Global Navigation Satellite Systems (GNSS) used to determine that location.

This changed with the launch of Android Nougat 7.0, which brought the ability to collect and process raw pseudorange measurements and navigation messages within an Android app. Android Pie 9.0 went further by providing developer options for testing real-time kinematic (RTK), or carrier-phase measurements.

Having raw GNSS data available on handsets is amazing, but it takes a lot of software, and in some cases expertise, to process it. As a result, it can take a lot of effort to build a relatively simple app that computes a location from raw data.

As I’ve worked on my own open-source GNSS testing app for Android (GPSTest), I’ve run across other open-source apps that process GNSS data and are a great educational resource. But, often they are hidden in GitHub repositories and largely unknown to the world.

Introducing awesome-gnss

An open list to track open-source GNSS tools (https://github.com/barbeau/awesome-gnss)

I hope this list makes it easier for software developers to discover open-source software, tools, and resources that speed up location-aware app development.

But what about…

I’d like to keep the list focused on open-source solutions, but there may be some exceptions for excellent tools that aren’t open-source but are free to use. If you’re not sure about something, open an issue to discuss it!

Was this article helpful? Consider following me on Medium. If you’re a user of the open-source GPSTest app or the awesome-gnss list and you’d like to support it, you can check out the GPSTest “Buy me a coffee” page:

Improving the world, one byte at a time. @sjbarbeau, https://github.com/barbeau, https://www.linkedin.com/in/seanbarbeau/. I work @CUTRUSF. Posts are my own.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store