Release Notes
RINGO v0.9.6 (May, 2026)⌗
1. New Features⌗
-
Support for conversion of high-rate BINEX and RTCM data (>1 Hz)
Conversion of high-rate BINEX and RTCM data with sampling rates greater than 1 Hz is now supported. -
Support for time system definition in RINEX observation files
Previously, the time system in RINEX observation files was treated as GPST. Now, processing is performed according to the time system specified in the “TIME OF FIRST OBS” header. When merging files with different time systems, if multiple satellite systems and time systems are present, the data will be converted to GPST. If you wanto to explicitly set output time system, you can use the “--outsystime” option. -
Support for BINEX 0x7e-00 output in the “bingo” command
The bingo command now supports output of BINEX 0x7e-00 (meteorological data such as pressure, temperature, humidity; tilt meter data; strain meter data, etc.). You can output this data to a specified file by using the new “--outextra” option.
2. Misc⌗
- bingo and rtcmgo now allow multiple input files to be specified simultaneously.
- In rtcmgo, an option “--fixaprdate” has been added to fix the date specified by “--aprdate” as the approximate date.
By default, if navigation data exists within the RTCM data read simultaneously, the date information in the input navigation data is prioritized. Starting from this version, this behavior can be overridden using the “--fixaprdate” option. - Add an option “--sortorder-sys” for changing the sorting order of satellite systems when outputting RINEX files.
This allows users to specify the sorting order of satellite systems, specifing e.g., “--sortorder-sys JGE”. - viewer now supports displaying high-rate data (>1 Hz).
3. Bug fixes⌗
- Fix an issue causing incorrect file type “N” output during down-conversion of navigation data to RINEX 2.xx for single-system files. (GLONASS-only files should be “G”, SBAS-only files should be “H”.)
- Fix missing output of either I/NAV E1b or E5b in the merge command when both are present at the same epoch in Galileo navigation data.
- Add handling in the clkcorr command for a special clock jump pattern that may occur in files merged from hourly RINEX files.
- Fix panic when no input file are specified in the bingo and rtcmgo commands.
- bingo outputs missing Doppler observations as blank filelds instead of “0.000”.
- rtcmgo output values are now rounded to the 0.001 digit.
- Fix an internal error in the definition of a leap second introduction date (January 1, 2017 was incorrectly defined as December 31, 2016).
- Epochs without observation data are now skipped.
- Fix issues when reading certain BINEX data.
- Fix issues when reading certain RINEX 2.xx data.
RINGO v0.9.4 (March, 2025)⌗
1. New Features⌗
-
Support for RINEX 4.02
Support for the latest RINEX 4.02 format has been added.RINEX 4.02: https://igs.org/news/rinex-4-02/
-
International Geomagnetic Reference Field (IGRF14) support
The geomagnetic model used for the higher-order ionospheric correction in “ioncorr” command has been updated to the latest IGRF14 model. With this update, the higher-order ionospheric correction can be applied until 2029-12-31. The updated model also slightly changes the results for the period 2020-01-01 ~ 2024-12-31 by the previous RINGO version that uses the IGRF13 model.International Geomegnetic Reference Field (IGRF):
https://www.ncei.noaa.gov/products/international-geomagnetic-reference-field
2. Misc⌗
- “bingo”, “rtcmgo” automatically add “LEAP SECONDS” value in the header of RINEX4 navigation data output.
- “bingo”, “rtcmgo” can now accept multiple input files simultaneously.
- “rtcmgo” command supports RTCM message 1045 (Galileo F/NAV ephemeris).
- The approximate position is automatically estimated even if the approximate position is not shown in the RINEX observation file header when “merge” or “rnxcsv” command is executed.
- The Navigation Data Type “FNAV” and “INAV” are automatically reflected based on the Data Sources record for the Galileo navigation data in RINEX4.
- Support for the QZSS L1C/B signals for binex to RINEX conversion.
- Add 3rd-order ionospheric correction to “ioncorr” command by “-3” or “--corrion3rd” option. (but this option is still experimental)
3. Bug fixes⌗
- Fix an issue that “merge” command with both –obstypes and –inclSat options would cause a panic if the specified satellites were inconsistent.
- Fix a problem that LLI is not modified (LLI+=4) for RINEX2 data with Anti-spoofing on (L1W, L2W) when “--obstypes” option is specified.
- Fix receiver clock offset output for RINEX2. The value of receiver clock offset was output as “0” by the previous RINGO, but now output as blank.
- Fix handling of invalid phase values when reading RTCM data. Invalid phase values are now skipped.
- Fix handling of Galileo TGD values when reading RTCM data. Previous RINGO outputs raw value, but it should be correctly converted to seconds.
- Implement CRC checks for reading RTCM data to ensure data integrity. If the CRC check fails, the data will be skipped and a warning message will be displayed.
RINGO v0.9.2 (September, 2024)⌗
1. New Features⌗
-
Support for azimuth-dependent elevation mask
Added global flag “--elmaskf” that enables elevation mask for reading RINEX files. Azimuth-dependent elevation mask is also supported. See documentation for more detail. -
High-rate data support
The previous RINGO only supports RINEX data up to 1 second interval. Now RINGO can handle high-rate data up to 10Hz. -
deepMerge option to be default
The option “--deepMerge” that enables merging obsdata with overlapping timetags has been changed to default. The data are also sorted by time. -
Calculation of approximate position in QC
The approximate position is automatically calculated if the approx position is unknown, i.e., the case observation file does not include “APPROX POSITION XYZ”. A new option “--calcpos” is also added that recalculate the approximate position in QC. (The accuracy is about a few tens of meters.)
2. Misc⌗
- Support of conf file with any extension. Previous versions only accepted .yml files.
- Support conversion of BINEX and RTCM to RINEX2.
- Add Checksum and CRC when reading BINEX data to check the integrity of the data. If the checksum fails, the data is skipped and a warning message is displayed.
- Support QC of NavIC data.
- Supress NaN output for missing qc data of rnxcsv.
- The values of satsys and obstypes in header are automatically changed according to the actual data contained in the merged file.
- Support for signals defined in RTCM 10403.3 (August 19, 2022).
- Suppress output of unsupported observation header parameters.
- Suppress output data of unsupported satellite systems.
- Update crinex version to v1.4.2.
3. Bug fixes⌗
- Add cylce slip flag on LLI (=1) for BINEX to RINEX conversion.
- Fix the value of LLI of AS on (LLI+=4) when outputting RINEX2.
- Fix invalid SatID output for satsys that is not supported by RINGO.
- Skip QC of GLONASS data if the frequency number is not available in both observation and navigation data.
RINGO v0.9.0 (January, 2024)⌗
1. New Features⌗
-
New command “rnxcsv”
Converts a RINEX observation file to a csv file. This command also supports qc output via “–qcmode” flag that includes timeseries of each linear combination and cycle slip flags. -
Support for direct reading of Compact RINEX (Hatanaka Format) files
Enables reading of Compact RINEX (Hatanaka Format) files natively, without using the external program “CRX2RNX”. -
Wildcard support for Powershell in the Windows version
Enables filename pattern expansion with wildcards (e.g., “*”, “?”, “A-X”) in Powershell. -
Support for RINEX 4.01 update (2023-07-10)
Added support for new observation codes included in the RINEX 4.01 update on 2023-07-10. -
Support for BINEX 0x7f update (2023-08-31)
Added support for QZSS L1C/B and other modern signals included in the BINEX 0x7f update on 2023-08-31. -
New opt “–deepMerge” for merge
Enables merging observation data deeply via “–deepMerge” flag. This can merge data with the same epochs taking into account differences in satellites and observation codes. -
New opt “–phaseshift”
Enables to apply phase shift corrections in output for the related commands. -
Observation code mapping change for RINEX version conversions “ObscodeMapping” section is added to change default observation codes mapping table that is used for RINEX version conversions.
-
Performance improvements
Speed up the output and enable parallel reading of multiple input files.
2. Misc⌗
- Output contents of unknown header labels, not ignored
- Support for reading interrupted obs data from correct position
- Skip observation data with unknown observation codes
- Keep LLI flags to the following data that are skipped by the change of data interval. This feature can be controlled by “–ignore-skipped-lli” and “–seconds-keep-lli” flags.
- Change behavior when invalid values are recorded in the “ANTENNA” related headers from an error to a warning, and the invalid antenna values are output as is
3. Bug fixes⌗
- Fix typo in the help message of “cal” command
- Fix an issue in which the number of epochs in QC changes by one when the time tag contains a decimal number of seconds
- Fix an issue in qc result that number of observation data was not calculated if the observation data include clock offsets > 0 msec at the beggining of the file
- Fix an issue that only one “IONOSPHERIC CORR” or “TIME SYSTEM CORR” could be output even if multiple values were stored in a navigation file.