Change history of the RNXCMP software 2025-07-30 - Version 4.2.0 released. (Major Changes) - Support for RINEX version 4.02. - Definition and introduction of a new Compact RINEX version 3.1 that supports newly introduced optional pico-second records. ===== IMPORTANT NOTICE ===================================================== - RINEX 4.02 files processed by older versions of RNXCMP will have the pico-second records removed. It is strongly recommended not to use them for RINEX 4.02 files. - RINEX version 4.02 introduces optional pico-second records that previous RNXCMP software packages cannot handle. This new pico-second record is defined by Compact RINEX version 3.1. Users who wish to utilize the pico- second records must use RNXCMP version 4.2.0 or later. - RNXCMP version 4.2.0 outputs Compact RINEX version 3.1 when compressing RINEX 4.02 or later files. - Compact RINEX version 3.1 files cannot be handled by previous RNXCMP software packages. The correspondance between each version is as follows: RINEX Compact RINEX ver. 2.xx <---> ver.1.0 ver. 3.xx <---> ver.3.0 ver. 4.00, 4.01 <---> ver.3.0 ver. 4.02 or later <---> ver.3.1 (supports pico-second records) ============================================================================ (Specific Changes to rnx2crx.c) - Support for RINEX 4.02 + New CRINEX 3.1 is added and applied to RINEX>=4.02 + New pico-second record is added after the receiver clock offset record - Error message #20 is corrected to be more specific - Error when the full version number is invalid - Change 'put_clock' to avoid appending '\n' at the end of p_buff - Add new functions to rnx2crx.c: + 'read_picosec' + 'trim_right' + 'read_version_full' (Specific Changes to crx2rnx.c) - The indices of the arrays of observables and clock correction values are matched to the differential orderi as in rnx2crx.c. - CHOP_LF is renamed (corrected) to CHOP_CR - Subroutine set_ntype_rec separated from set_sat_table - Support for CRINEX 3.1, compatible with RINEX 4.02 + New pico-second record is added after the receiver clock offset record - Error when the full crx version number is invalid - Change 'print_clock' to avoid appending '\n' at the end of p_buff - Change 'error_exit' to display message when an unknown error number is passed - Add errors for 'split_string' - Add new functions: + 'read_clock_and_picosec' + 'split_string' + 'trim_right' + 'read_crx_version_full' - Add consts MAX_CLK_SIZE and PICOSEC_SIZE 2021-12-24 - Version 4.1.0 released. - RINEX ver.4.xx files are accepted as inputs. The correspondence between versions of RINEX format and those of Compact RINEX format is as follows: RINEX Compact RINEX ver. 2.xx <---> ver.1.0 ver. 3.xx <---> ver.3.0 ver. 4.xx <---> ver.3.0 - The front-end tools RNX2CRZ.bat and CRZ2RNX.bat for Windows are replaced with completely new ones. Long filenames or old short filenames of RINEX conventions are assumed for input RINEX and Compacct RINEX files and output RINEX files, accordingly. For old short file names of compressed files, NOT VMS/DOS types, but only UNIX types can be handled. The old DOS tools, that can handle short file names of compressed files of VMS/DOS types, are obsolete and not provided any more. - The default command is now "gzip" instead of "compress" for the text compression in the front-end tools. - Following bugs of RNX2CRX are fixed: + Error in case the number of special records exceeds 99 in RINEX ver.2 files. + Error in case clock offset is padded with spaces in RINEX ver. 3 or 4 files. + Error in case a bad GNSS type is detected even if option -s is specified with RNX2CRX. 2019-07-16 - Version 4.0.8 released. - Correction of a bug in rnx2crx.c which eliminates clock offset data periodically when used with the option "-e". - New option "-d" is added to rnx2crx.c. and crx2rnx.c. to delete input file after successful conversion. - Displaying files in process and a new option "-q" to suppress it are added to RNX2CRZ and CRZ2RNX. 2018-11-27 - Fixing a bug in RNX2CRZ and CRZ2RNX that delete input files by the option "-d" even if conversions are unsuccessful. 2016-04-14 - Version 4.0.7 released. - Licence policy is changed to apply Geospatial Information Authority of Japan Website Terms of Use. Read Licence.txt. 2015-02-19 - The values of the following constants are increased: MAXSAT 90 -> 100 MAXTYPE 50 -> 100 MAXCLM 1024 -> 2048 MAX_BUFF_SIZE 131072 -> 204800 2014-03-24 - Version 4.0.6 released. - Fixing a bug in crx2rnx.c. in outputting epoch lines in case there are skipped epochs when a corrupted Compact RINEX ver. 3 files are processed with the option "-s". - check and stop with an error if value of data exceed the range allowd in RINEX format (crx2rnx.c). - Manipulation of file names in the new file naming convention (*.rnx/crx) is added, except for front-end tools for DOS. 2012-07-18 - Version 4.0.5 released. - Fixing a bug in rnx2crx.c. A variable "dummy" is initialized. - Fixing a bug in displaying error message(#16) - Checking length of input file name - Minor changes to suppress warning messages at compilation. 2009-09-08 - Due to a bug in the front-end tool RNX2CRZ, output file name for *.yy[Oo] files were in correct. RNX2CRZ is just replaced to the bug-fixed one without updating version ID. Thanks to Huib de Ligt for notice and suggestion. 2009-07-07 - Version 4.0.4 released. - The function "getline" is renamed "ggetline" to avoid confliction with that referenced in stdio in gcc 4.4. (rnx2crx.c) - A truncatad CRINEX file can have no LF character in the last line. former versions of CRX2RNX crash with core dumping in such cases. This problem is solved by checking null pointer in the macro CHOP_LF to skip when LF is not found. (crx2rnx.c) Thank to Jelemy Palmer for notice and suggestion. - MAXTYPE is increased from 30 to 50 (crx2rnx.c) - correction of typos in error messages. - UNIX front-end tools RNX2CRZ and CRZ2RNX were extensively modified. Resolution of te following ambiguities/bugs in the previous vresions are major changes: * setting of output directory (default: the same directory as that of the input file) * case of deletion of input files (default: preserve) * case of overwriting an output file (default: inquiring) Options to control them are added. Users should be careful about it, since, in some cases, the behavior of the new tools can be different from that of the old ones concernning for these aspects. - The UNIX and DOS front-end tools can handle more RINEX file types. - Documentations of the Compact RINEX format (crinex1.0.txt and crinex3.0.txt) are removed from the distribution packages. The following paper is now avairable for the details of the compression format and the developement design of the software: Hatanaka, Y. (2008), A Compression Format and Tools for GNSS Observation Data, Bulletin of the Geospatioal Information Authority of Japan, 55, 21-30, available at https://www.gsi.go.jp/ENGLISH/Bulletin55.html. 2007-06-21 - Version 4.0.3 released by fixing a bug. - It was found that crx2rnx.c version 4.0.0-4.0.2 contains a serious bug which may output incorrect or corrupted data due to lack of a procedure to prevent overflow of lower digits of data (or its difference) in middle of the recovering operation. The overflow does not happen at the begining of data arcs, but probability of it increases as many epochs are processed for a data arc without initialization. Therefore, The higher the sampling rate is, the easier the overflow happens. - Rnx2crx.c is free from the above bug, but the version of it was also updated to become the same as crx2rnx.c. 2007-06-10 Following changes were made on the front-end tools (suggested by Mike Craymer of Natural Resources Canada) - "compress" command appears in the tool CRZ2RNX was an error and corrected to "uncompress". - modified to accept upper case in the extention of file names. 2007-06-08 - Version 4.0.2 released. - Incompatibility between arguments and format strings of sscanf or sprintf was fixed. This bug was contained in rnx2crx.c and crx2rnx.c of version 4.0.0 and 4.0.1, and may disturb output files if the programs are compiled with 16-bit compilers. - A string "ver." was eliminated from the display of the program version in the help messages. 2007-06-06 - Version 4.0.1 released. - Supports for VMS and SUN OS 4.1.x was terminated. - In the previous versions, the default output file was created in the "current" directory whatever directory the input file was in. From this version, the output file was created in the same directory as the input file that was specified in the command argument. - The above two modifications made it possible to eliminate system-dependency of the source codes. The adjustment of the source codes before compilation to switch OS environment (UNIX/DOS) became unnecessary. 2007-02-05 - Version 4.0.0 created. (It is a test version.) - Capability of conversion from RINEX version 3.00 to Compact RINEX format version 3.0 (RNX2CRX), and vice versa (CRX2RNX), was implemented. Conversion between RINEX version 2.xx and Compact RINEX format version 1.0 is also possible as before.