Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rokubun/android_rinex
This repository contains a python script that converts logs from Google's GNSS measurement tools to RINEX
https://github.com/rokubun/android_rinex
Last synced: 3 months ago
JSON representation
This repository contains a python script that converts logs from Google's GNSS measurement tools to RINEX
- Host: GitHub
- URL: https://github.com/rokubun/android_rinex
- Owner: rokubun
- License: bsd-2-clause
- Created: 2017-07-13T15:21:37.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-24T09:13:26.000Z (7 months ago)
- Last Synced: 2024-08-02T16:32:02.005Z (6 months ago)
- Language: Python
- Size: 1.42 MB
- Stars: 81
- Watchers: 12
- Forks: 31
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-gnss - Source code - A Python script that converts raw measurements in the CSV format supported by [GnssLogger](https://github.com/google/gps-measurement-tools#gnsslogger) and [GPSTest](https://github.com/barbeau/gpstest) to the RINEX format. (Uncategorized / Uncategorized)
README
Android GNSS Logger to RINEX converter
======================================This repository contains a Python script that converts logs from Google's GNSS
measurement tools to RINEXThe repository for the GNSS measurement Android app can be found in this link:
https://github.com/google/gps-measurement-tools
Once installed in your Android device, the app will log GNSS measurements
and will write a text file with the GNSS measurements. There is a file in
the `data` folder that contains an example data file collected with a Nexus 9
tablet:data/pseudoranges_log_2017_07_17_13_46_25.txt
This file can be used with this tool to generate a RINEX file that can be
then used in GNSS data processing software such as e.g. RTKLib.Standalone test
------------If you are developing the code it might be easier to run it as a standalone library.
* in Linux this can be done via
```
export PYTHONPATH=$PWD;$PYTHONPATH
bin/gnsslogger_to_rnx
```
* in Windows, most of the time PYTHONPATH is not set so its easier to use batch filegnsslogger_to_rnx.bat -o nex91980.17o .\data\pseudoranges_log_2017_07_17_13_46_25.txt
That is
gnsslogger_to_rnx.bat -o OUTPUT FILE INPUT FILE
Installation
------------This package has been built using Pyhton's setuptools. As such, you can
install it into your system by issuing the commandpython setup.py install
You might need the root password to issue this command. Alternatively, you can
install in a non-default directory by specifying the install path with the
`--prefix` option:python setup.py install --prefix /path/to/instal
Examples
--------The script has a small help that explains the different options of the
program. This help is accessed through the command:gnsslogger_to_rnx -h
There are several options that allow the user to change several standard
RINEX fields ('MARKER NAME', 'RECEIVER TYPE', ...)Some execution examples follow:
(a) Process the data file and generate a RINEX file in the standard output
(discard the error messages)gnsslogger_to_rnx data/pseudoranges_log_2017_07_17_13_46_25.txt 2> /dev/null
(b) Process the data and save the results into a specified file name (and
disregard warning messages)gnsslogger_to_rnx -o nex91980.17o data/pseudoranges_log_2017_07_17_13_46_25.txt 2> /dev/null
(b) Process the data, trying to "integerize" the observations to the nearest
time stamp (i.e. integerize the time stamp to the closest second and
modify the pseudorange uaing the PseudoRangeRateMeterPerSecond measurements=.
Note: this option does not touch the carrier phase. In theory the same could
be done to the phase, but strictly speaking we would need the Doppler. not
the PseudoRangeRate measurements.gnsslogger_to_rnx -i -o nex91980.17o data/pseudoranges_log_2017_07_17_13_46_25.txt 2> /dev/null
This option might be useful to process data from various smartphones at
once.(d) Process the data and generate a named RINEX data but maintaining
constant the 'FullBiasNanos' instead of using the instantaneous value.
This avoids the 256 ns jumps each 3 seconds that create a code-phase
divergence due to the clock.gnsslogger_to_rnx -b -o nex91980.17o data/pseudoranges_log_2017_07_17_13_46_25.txt 2> /dev/null