| 1 | Manual for rtcm3torinex | 
|---|
| 2 |  | 
|---|
| 3 | The program rtcm3torinex is an real-time converter from NTRIP streamed RTCM3 | 
|---|
| 4 | data into the RINEX format. | 
|---|
| 5 |  | 
|---|
| 6 | RTCM3 defines a number of message types. Among them are the following: | 
|---|
| 7 |  | 
|---|
| 8 | Message | 
|---|
| 9 | Type  Contains information about | 
|---|
| 10 | -------------------------------------------------------------------------- | 
|---|
| 11 | 1001  GPS L1 code and phase | 
|---|
| 12 | 1002  GPS L1 code and phase and ambiguities and carrier to noise ratio | 
|---|
| 13 | 1003  GPS L1 and L1 code and phase | 
|---|
| 14 | 1004  GPS L1 and L2 code and phase and ambiguities and carrier to noise ratio | 
|---|
| 15 | 1005  Station coordinates XZY for antenna reference point | 
|---|
| 16 | 1006  Station coordinates XYZ for antenna reference point and antenna height | 
|---|
| 17 | 1007  Antenna descriptor and ID | 
|---|
| 18 | 1008  Antenna serial number | 
|---|
| 19 | 1009  GLONASS L1 code and phase | 
|---|
| 20 | 1010  GLONASS L1 code and phase and ambiguities and carrier to noise ratio | 
|---|
| 21 | 1011  GLONASS L1 and L1 code and phase | 
|---|
| 22 | 1012  GLONASS L1 and L2 code and phase and ambiguities and carrier to noise ratio | 
|---|
| 23 | 1013  Modified julian date, leep second, configured message types and intervall | 
|---|
| 24 | 1014-1017 Network RTK (MAK) messages | 
|---|
| 25 | 1019  GPS Ephemeris | 
|---|
| 26 | 1020  GLONASS Ephemeris | 
|---|
| 27 | 1045-1046 Galileo Ephemeris | 
|---|
| 28 | 1071-1077 GPS-MSM data | 
|---|
| 29 | 1081-1087 GLONASS-MSM data | 
|---|
| 30 | 1091-1097 Galileo-MSM data | 
|---|
| 31 | 1101-1107 SBAS-MSM data | 
|---|
| 32 | 1111-1117 QZSS-MSM data | 
|---|
| 33 | 1121-1127 BeiDou-MSM data | 
|---|
| 34 | 4088-4095 Proprietary messages (under development) | 
|---|
| 35 |  | 
|---|
| 36 | Note that this version of rtcm3torinex only handles RTCM3 message types 1001, | 
|---|
| 37 | 1002, 1003, 1004, 1009, 1010, 1011, 1012, 1013, 1019, 1020, 1045, 1046, | 
|---|
| 38 | 1071-1077, 1081-1087, 1091-1097, 1101-1107, 1111-1117 and 1121-1127. | 
|---|
| 39 |  | 
|---|
| 40 | The generated RINEX is somewhat limited due to the streaming character of the | 
|---|
| 41 | conversion: | 
|---|
| 42 |  | 
|---|
| 43 | - Header records can only represent data, which is known after receiving the | 
|---|
| 44 | very first epoch. Data rate, position, number of observations and any such | 
|---|
| 45 | additional fields cannot be provided. | 
|---|
| 46 | - The number of observables cannot change during the program runtime. Only | 
|---|
| 47 | the observables, which exist in the first epoch are output. If there | 
|---|
| 48 | are new observables later on, these are ignored. | 
|---|
| 49 | The Option --changeobs removes that limitation, but not many tools can use | 
|---|
| 50 | the resulting files which include header change records. | 
|---|
| 51 | - Only known message types are interpreted. Send me new RTCM3 data files and | 
|---|
| 52 | data support can be improved. See contact address at the end of this document. | 
|---|
| 53 | - If the ambiguity field in the RTCM3 data is not set, the output will be no | 
|---|
| 54 | valid RINEX. All values will be stored modulo 299792.458. A COMMENT line | 
|---|
| 55 | will tell you, when this happens. It would be necessary to approximately | 
|---|
| 56 | calculate the range to fix the ambiguity (needing ephemeris/alamanac and | 
|---|
| 57 | easy positioning algorithm). | 
|---|
| 58 |  | 
|---|
| 59 | Usage: ./rtcm3torinex -s server -u user ... | 
|---|
| 60 | -d --data             the requested data set | 
|---|
| 61 | -f --headerfile       file for RINEX header information | 
|---|
| 62 | -s --server           the server name or address | 
|---|
| 63 | -p --password         the login password | 
|---|
| 64 | -r --port             the server port number (default 2101) | 
|---|
| 65 | -t --timeout          timeout in seconds (default 60) | 
|---|
| 66 | -u --user             the user name | 
|---|
| 67 | -E --gpsephemeris     output file for GPS ephemeris data | 
|---|
| 68 | -G --glonassephemeris output file for GLONASS ephemeris data | 
|---|
| 69 | -3 --rinex3           output RINEX type 3 data | 
|---|
| 70 | -S --proxyhost        proxy name or address | 
|---|
| 71 | -R --proxyport        proxy port, optional (default 2101) | 
|---|
| 72 | -n --nmea             NMEA string for sending to server | 
|---|
| 73 | -O --changeobs        Add observation type change header lines | 
|---|
| 74 | -M --mode             mode for data request | 
|---|
| 75 | Valid modes are: | 
|---|
| 76 | 1, h, http     NTRIP Version 2.0 Caster in TCP/IP mode | 
|---|
| 77 | 2, r, rtsp     NTRIP Version 2.0 Caster in RTSP/RTP mode | 
|---|
| 78 | 3, n, ntrip1   NTRIP Version 1.0 Caster | 
|---|
| 79 | 4, a, auto     automatic detection (default) | 
|---|
| 80 |  | 
|---|
| 81 | The fields --user and --password are used to specify the access data for the | 
|---|
| 82 | NTRIP server. The arguments --server and --port are used to specify the NTRIP | 
|---|
| 83 | server itself (defaults to "euref-ip.net" port 2101). The Argument --data | 
|---|
| 84 | must be used to specify the RTCM3 input data stream. If it is not given, you | 
|---|
| 85 | will be shown the source table of the selected NTRIP caster. | 
|---|
| 86 |  | 
|---|
| 87 | Alternatively a single text of the form | 
|---|
| 88 | "ntrip:data[/user[:password]][@[server][:port][@proxyhost[:proxyport]]][;nmea]" | 
|---|
| 89 | can be used. Everything in brackets is optional. | 
|---|
| 90 |  | 
|---|
| 91 | Additionally the argument --headerfile can be used to provide additional header | 
|---|
| 92 | information. The file must contain normal RINEX observation file header lines. | 
|---|
| 93 | The given lines overwrite the automatical generated lines. Overwriting the | 
|---|
| 94 | lines "# / TYPES OF OBSERV" and "TIME OF FIRST OBS" usually is a bad idea and | 
|---|
| 95 | you will get warned if you do so. The line "END OF HEADER" is ignored. | 
|---|
| 96 | Unknown lines or COMMENT lines will be appended before the "END OF HEADER". | 
|---|
| 97 |  | 
|---|
| 98 | NOTE: The tool does not check the input lines for validity. So be sure to | 
|---|
| 99 | use correct RINEX specifiers as well as correct alignment. | 
|---|
| 100 |  | 
|---|
| 101 | To stop RINEX output send the program a killing signal. Following signal | 
|---|
| 102 | sources are supported: | 
|---|
| 103 |  | 
|---|
| 104 | signal    number  usual source of the signal | 
|---|
| 105 | --------------------------------------------------------------------------- | 
|---|
| 106 | SIGINT       2    pressing CTRL+C in the shell running the tool | 
|---|
| 107 | SIGQUIT      3    pressing CTRL-\ or sending QUIT signal | 
|---|
| 108 | SIGTERM     15    called kill <num> with the process number of rtcm3torinex | 
|---|
| 109 | SIGPIPE     13    the output or input of rtcm3torinex has been closed | 
|---|
| 110 |  | 
|---|
| 111 | The programm will be terminated after the current epoch has been finished. | 
|---|
| 112 | You will not get corrupted RINEX files. | 
|---|
| 113 |  | 
|---|
| 114 | When compiling the program with older gcc versions running the `make' | 
|---|
| 115 | command, you may receive an informative error message saying | 
|---|
| 116 |  | 
|---|
| 117 | rtcm3torinex.c: In function `signalhandler_alarm': | 
|---|
| 118 | rtcm3torinex.c:1240: warning: `noreturn' function does return | 
|---|
| 119 |  | 
|---|
| 120 | This is most likely a compiler problem which only concerns the optimization | 
|---|
| 121 | and is thus not critical. New compilers will not show this problem. | 
|---|
| 122 |  | 
|---|
| 123 | Program written by | 
|---|
| 124 |  | 
|---|
| 125 | Dirk Stoecker | 
|---|
| 126 | Alberding GmbH | 
|---|
| 127 | http://www.alberding.eu/ | 
|---|
| 128 |  | 
|---|
| 129 | for | 
|---|
| 130 |  | 
|---|
| 131 | Federal Agency for Cartography and Geodesy (BKG) | 
|---|
| 132 | Richard-Strauss-Allee 11 | 
|---|
| 133 | D-60598 Frankfurt | 
|---|
| 134 | http://igs.bkg.bund.de/index_ntrip.htm | 
|---|
| 135 |  | 
|---|
| 136 | Contact Dirk Stoecker [stoecker@alberding.eu] or [euref-ip@bkg.bund.de] | 
|---|
| 137 | with your comments, suggestions, improvements, patches, ... | 
|---|