• Stars
    star
    360
  • Rank 118,230 (Top 3 %)
  • Language
  • License
    Apache License 2.0
  • Created about 5 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Community list of open-source GNSS software and resources 📡

awesome-gnss Awesome RSS

Community list of open-source Global Navigation Satellite System (GNSS) software and resources 📡

Have something to add or change? Open a pull request or issue.

Contents

Android apps (open-source)

  • GPSTest (Google Play, F-Droid, Source code) - Supports dual-frequency GNSS for GPS, GLONASS, QZSS, BeiDou/COMPASS, Galileo, IRNSS, as well as various SBAS systems. Supports measuring accuracy using a ground truth location and file logging for NMEA, raw measurements, navigation messages, and location data. Logs are compatible with Google's GPS Measurement Tools suite to visualize data.
  • GNSSLogger (Source code) - Log raw measurements for visualization in Google's GPS Measurement Tools suite. No longer maintained by Google. A proprietary Google fork of the project can be downloaded from Google Play here.
  • GNSS Compare (Google Play, Documentation, Source code) - Supporting calculating positions from raw measurements for GPS and Galileo. Beta support for dual-frequency.
  • RTKGPS+ (Google Play) - Android frontend of RTKLIB.
  • Sat Stat (F-Droid, Source code) - Android Location, Sensor and Radio Network Status.

iOS apps (open-source)

  • Open GPX Tracker (App Store, Source code) - Open source GPX tracker app written in Swift.
  • Overland-iOS (App Store, Source code) - An experiment at gathering data from an iPhone to test the Core Location API and its various settings.

Desktop tools (open-source)

  • Android GNSS Logger to RINEX converter (Source code) - A Python script that converts raw measurements in the CSV format supported by GnssLogger and GPSTest to the RINEX format.
  • Anubis (Download) - Quality checks for GNSS data in RINEX2/3 format. Basic version is free and open-source, Pro and Real-time features available at a cost.
  • BKG Ntrip Client (BNC) (Download) - BNC is an open-source multi-stream client designed for a variety of real-time GNSS applications. It was primarily designed for receiving data streams from any Ntrip supporting Broadcaster. It can compute a real-time Precise Point Positioning (PPP) solution from RTCM streams or RINEX files. See related open-source tools for Ntrip on this page.
  • EGNOS Toolkit (Download, Source code)- A set of tools to work with Satellite-Based Augmentation Systems (SBAS), specially EGNOS. Support Linux.
  • FGI-GSRx (Source code) - An open-source software receiver in MATLAB used to develop, test and validate novel receiver processing algorithms for robust, resilient and precise Position, Navigation and Timing (PNT). Developed by the Finnish Geospatial Research Institute (FGI).
  • Ginan (Source code) - A processing package being developed by Geoscience Australia to provide real-time corrections to positioning data from the Global Navigation Satellite System (GNSS) constellations.
  • goGPS project - An open-source software package designed to improve the positioning accuracy of low-cost GPS devices by relative positioning. There are several versions, including goGPS_Java and goGPS_MATLAB.
  • Google's GPS Measurement Tools suite (Download, Source code) - Desktop companion app for GNSSLogger to visualize and analyze raw measurements. Supports Windows, Mac, and Linux.
  • GPSPACE - Fortran script for Precise Point Positioning.
  • GNSS-SDR (Download, Source code) - An open source GNSS software defined receiver. Supports Linux, Mac, and Windows.
  • GraphGNSSLib (Source code) - An Open-source Package for GNSS Positioning and Real-time Kinematic Using Factor Graph Optimization.
  • GPSTk (Download, Source code) - C++ open source library and a suite of applications for GPS processing problems.
  • RNXCMP (Download) - Open source software for Hatanaka compression/restoration of RINEX observation files.
  • RTKLIB (Download, Source code) - An Open Source Program Package for GNSS Positioning. Has a companion Android app RTKGPS+. Supports Windows.

Desktop tools (proprietary)

  • GFZRNX - RINEX GNSS Data Conversion and Manipulation Toolbox Download - Supports various translation, conversion, and quality check operations on RINEX data.
  • gLAB Lab (Download) - Performs precise modeling of GNSS observables (pseudorange and carrier phase) at the centimetre level, allowing both standalone GPS positioning and PPP. Supports RINEX-3.00, SP3, ANTEX and SINEX, as well as GPS, Galileo, and GLONASS. Developed under an European Space Agency (ESA) contract by the Universitat Politecnica de Catalunya (UPC). Free to download.
  • teqc (Download) - Translation, editing, and quality check of GNSS data in native and in RINEX/BINEX formats. Free to download. End-of-life as of February 25, 2019.

Web tools (proprietary)

  • GNSS-Radar - GNSS coverage simulator over time for any given location.
  • Jason Positioning-as-a-Service - Upload GNSS data (e.g., RINEX, u-blox files, GNSS logger files) and process it using Post-processing Kinematic (PPK) strategy. Automatically picks a nearby reference receiver. Currently free in beta, but will become a paid service with a free tier for evaluation and low-volume usage.
  • HowToCreate GPS/GNSS log file parser - Upload gnss_log output from GPSTest or Google's GnssLogger, or a CSV file containing the same columns. The tool processes the data, and applies a static Kalman filter to refine the position of the GNSS device, much better than basic averaging, since it can use the estimated accuracy for weighting.

Libraries and interfaces

  • earth-gravitational-model - A lightweight port of the GeoTools EarthGravitationalModel as a Java library to convert WGS84 (GNSS) altitude to EGM84 (height above mean sea level). Can be used on Android without requiring the entire GeoTools suite.
  • giulioscattolin/google-gnss-logger - A Java library that facilitates reading, writing and processing of sensor events and raw GNSS measurements encoded according to the Google's GNSS Logger application format.
  • ntripstreams - Python interface to transfer GNSS and related data between GNSS instruments, Ntrip caster and users using the Ntrip protocol.
  • gps_pvt - An Open Source Program Package for GNSS Positioning which is runnable and controllable via Ruby. RINEX ver.2/3, SP3, ANTEX, and u-blox UBX parsers are included.
  • rust-rinex - Rust package to parse and produce RINEX files
  • rust-sinex - Rust package to parse SINEX files

Data

  • Android smartphones high accuracy GNSS datasets by Google - Datasets collected from multiple Android phones, accompanied with high accuracy ground truth. This dataset has 39 traces collected from Pixel 4, Pixel 4 XL, and Xiaomi Mi8. They contain CN0, carrier phase, Doppler rate, satellite transmit time, signal arrival time, and other raw GNSS measurements of L1, L5 channels from GPS, Galileo, GLONASS, Beidou, and QZSS. Precise location ground truth files collected using NovAtel SPAN system are provided. Part of the Google Smartphone Decimeter Challenge at ION GNSS+ 2021.
  • GPSTest Device Database - A list of device capabilities (e.g., supported GNSS constellations and carrier frequencies) crowd-sourced from users of the GPSTest Android app.

Social media

  • EUSPA - EU Agency for the Space Programme.
  • GNSS Status - GNSS satellites updated status.
  • IGS - International GNSS Service.

Blogs

  • BlackDotGNSS - Technical discussions related to GNSS data processing.
  • rtklibexplorer - Using RTKLIB for precise positioning with low-cost GNSS receivers.

Wikis

  • Navipedia by ESA - An online reference for GNSS systems and data processing.

Videos

Articles

Academic peer-reviewed publications

Books

Lists

More Repositories

1

gpstest

The #1 open-source Android GNSS/GPS test program
Kotlin
1,682
star
2

earth-gravitational-model

A lightweight port of the GeoTools EarthGravitationalModel (http://docs.geotools.org/latest/javadocs/org/geotools/referencing/operation/transform/EarthGravitationalModel.html).
Java
16
star
3

face-off-lens

A Snapchat / Snap Camera Lens Studio project to train you to stop touching your face
JavaScript
6
star
4

BatchStepSensorDemo

A demo project for the Android hardware-powered step detection/counter from the Android SDK
Java
4
star
5

AstarVisualizer

An implementation and visualization of the A* algorithm that allows the user to see the impact of different heuristics and settings for the algorithm.
Java
4
star
6

EncogME

A port of the Encog neural network project to Java Micro Edition, as well as supporting server-side projects that allow a neural network to be trained server-side, and then have the trained model extracted and transferred to the mobile phone for neural net execution in real-time on the mobile device.
Java
3
star
7

mytracks

Git import from MyTracks project (https://code.google.com/p/mytracks)
Java
2
star
8

show-radar-demo

An app that demos passing locations to another app using the SHOW_RADAR intent
Kotlin
2
star
9

motion-layout-demo

Demo of the Android MotionLayout, along with an issue of a CardView not properly collapsing and expanding after animation
Java
1
star
10

Media-Remote-ME

Media remote client and server code to control desktop media applications such as iTunes or Yahoo Launchcast streaming music player from a Java Micro Edition mobile phone.
Java
1
star
11

DeleteIntentDemo

Demo project to illustrate problem with DeleteIntent discussed at http://stackoverflow.com/questions/24769228/notification-deleteintent-broken-on-later-versions-of-android
Java
1
star
12

GeocoderDemo

Demo that shows a bug with the Android Geocoder
Java
1
star
13

compose-preview-bug

This project demonstrates a bug in Compose previews - see https://issuetracker.google.com/issues/197954277
Kotlin
1
star