Changeset 8048 in ntrip


Ignore:
Timestamp:
Sep 27, 2016, 4:14:14 PM (7 years ago)
Author:
stuerze
Message:

documentation file is uptated

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/bnchelp.html

    r8031 r8048  
    1 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
    2 <p><img src="IMG/screenshot43.png"/></p>
    3 
    4 <h3>BKG Ntrip Client (BNC)<br>
    5 Version 2.12.0</h3>
    6 
    7 <p>
    8 Georg Weber<sup>(1)</sup>, Leo&scaron; Mervart<sup>(2)</sup>, Andrea St&uuml;rze<sup>(1)</sup>, Axel R&uuml;lke<sup>(1)</sup>, Dirk St&ouml;cker<sup>(3)</sup>
    9 <p>
    10 <sup>(1) Federal Agency for Cartography and Geodesy (BKG), Frankfurt, Germany</sup><br>
    11 <sup>(2) Czech Technical University (CTU), Department of Geomatics, Prague, Czech Republic</sup><br>
    12 <sup>(3) Alberding GmbH, Wildau, Germany</sup>
    13 <br><br>
    14 <b>Copyright</b><br>
    15 &copy;<sup>&nbsp;</sup> 2005-2016 Federal Agency for Cartography and Geodesy (BKG), Frankfurt, Germany
    16 <br><br>
    17 ISSN 1436-3445<br>
    18 ISBN 978-3-86482-083-0<br><br>
    19 <b>Citation<sup>&nbsp;</sup></b><br>
    20 To help justify funding the development of BNC,<sup>&nbsp;</sup>we kindly ask users to include a citation when applying the software results in a publication. We suggest:
    21 <br><br>
    22 Weber, G., L. Mervart, A. St&uuml;rze, A. R&uuml;lke and D. St&ouml;cker (2016):<br>
    23 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; BKG Ntrip Client, Version 2.12. Mitteilungen des Bundesamtes<br>
    24 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; f&uuml;r Kartographie und Geod&auml;sie, Vol. 49, Frankfurt am Main, 2016.
    25 <br><br>
    26 
    27 <b>Table of <a name="contents">Contents</b><br><br>
    28 <b>1.</b> <a href=#genInstruction><b>General Information</b></a><br><br>
    29 &nbsp; &nbsp; &nbsp; 1.1 <a href=#introPurpose>Purpose</a><br>
    30 &nbsp; &nbsp; &nbsp; 1.2 <a href=#introSystem>Supported GNSS</a><br>
    31 &nbsp; &nbsp; &nbsp; 1.3 <a href=#introFlow>Data Flow</a><br>
    32 &nbsp; &nbsp; &nbsp; 1.4 <a href=#introHandling>Handling</a><br>
    33 &nbsp; &nbsp; &nbsp; 1.5 <a href=#introInst>Installation</a><br>
    34 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1.5.1 <a href=#introCompile>Compilation</a><br>
    35 &nbsp; &nbsp; &nbsp; 1.6 <a href=#introConf>Configuration</a><br>
    36 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1.6.1 <a href=#introExamples>Examples</a><br>
    37 &nbsp; &nbsp; &nbsp; 1.7 <a href=#introLimit>Limitations</a><br>
    38 &nbsp; &nbsp; &nbsp; 1.8 <a href=#introLBack>Looking Back</a><br><br>
    39 <b>2.</b> <a href=#optsettings><b>Settings Details</b></a><br><br>
    40 &nbsp; &nbsp; &nbsp; 2.1 <a href=#topmenu><b>Top Menu Bar</b></a><br>
    41 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.1.1 <a href=#file>File</a><br>
    42 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.1.2 <a href=#help>Help</a><br>
    43 &nbsp; &nbsp; &nbsp; 2.2 <a href=#network><b>Network</b></a><br>
    44 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.2.1 <a href=#proxy>Proxy</a><br>
    45 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.2.2 <a href=#ssl>SSL</a><br>
    46 &nbsp; &nbsp; &nbsp; 2.3 <a href=#general><b>General</b></a><br>
    47 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.3.1 <a href=#genlog>Logfile</a><br>
    48 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.3.2 <a href=#genapp>Append Files</a><br>
    49 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.3.3 <a href=#genconf>Reread Configuration</a><br>
    50 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.3.4 <a href=#genstart>Auto Start</a><br>
    51 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.3.5 <a href=#rawout>Raw Output File</a><br>
    52 &nbsp; &nbsp; &nbsp; 2.4 <a href=#rinex><b>RINEX Observations</b></a><br>
    53 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.1 <a href=#rnxname>Filenames</a><br>
    54 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.2 <a href=#rnxdir>Directory</a><br>
    55 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.3 <a href=#rnxinterval>File Interval</a><br>
    56 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.4 <a href=#rnxsample>Sampling</a><br>
    57 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.5 <a href=#rnxskl>Skeleton Extension</a><br>
    58 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.6 <a href=#sklMandat>Skeleton Mandatory</a><br>
    59 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.7 <a href=#rnxscript>Script</a><br>
    60 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.8 <a href=#rnxvers2>Version 2</a><br>
    61 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.9 <a href=#rnxvers3>Version 3</a><br>
    62 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.10 <a href=#rnxvers3File>Version 3 Filenames</a><br>
    63 &nbsp; &nbsp; &nbsp; 2.5 <a href=#ephemeris><b>RINEX Ephemeris</b></a><br>
    64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.5.1 <a href=#ephdir>Directory</a><br>
    65 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.5.2 <a href=#ephint>Interval</a><br>
    66 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.5.3 <a href=#ephport>Port</a><br>
    67 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.5.4 <a href=#ephvers>Version</a><br>
    68 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.5.5 <a href=#ephversFile>Version 3 Filenames</a><br>
    69 &nbsp; &nbsp; &nbsp; 2.6 <a href=#reqc><b>RINEX Editing & QC</b></a><br>
    70 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.1 <a href=#reqcact>Action</a><br>
    71 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.2 <a href=#reqcinp>Input Files</a><br>
    72 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.3 <a href=#reqcout>Output Files</a><br>
    73 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.4 <a href=#reqclog>Logfiles</a><br>
    74 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.5 <a href=#reqcplots>Plots for Signals</a><br>
    75 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.6 <a href=#reqcdir>Directory for Plots</a><br>
    76 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.7 <a href=#reqcedit>Set Edit Options</a><br>
    77 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.6.8 <a href=#reqccommand>Command Line, No Window</a><br>
    78 &nbsp; &nbsp; &nbsp; 2.7 <a href=#sp3comp><b>SP3 Comparison</b></a><br>
    79 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.7.1 <a href=#sp3input>Input SP3 Files</a><br>
    80 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.7.2 <a href=#sp3exclude>Exclude Satellites</a><br>
    81 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.7.3 <a href=#sp3log>Logfile</a><br>
    82 &nbsp; &nbsp; &nbsp; 2.8 <a href=#correct><b>Broadcast Corrections</b></a><br>
    83 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.8.1 <a href=#corrdir>Directory, ASCII</a><br>
    84 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.8.2 <a href=#corrint>Interval</a><br>
    85 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.8.3 <a href=#corrport>Port</a><br>
    86 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.8.4 <a href=#corrwait>Wait for Full Corr Epoch</a><br>
    87 &nbsp; &nbsp; &nbsp; 2.9 <a href=#syncout><b>Feed Engine</b></a><br>
    88 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.9.1 <a href=#syncport>Port</a><br>
    89 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.9.2 <a href=#syncwait>Wait for Full Obs Epoch</a><br>
    90 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.9.3 <a href=#syncsample>Sampling</a><br>
    91 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.9.4 <a href=#syncfile>File</a><br>
    92 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.9.5 <a href=#syncuport>Port (unsynchronized)</a><br>
    93 &nbsp; &nbsp; &nbsp; 2.10 <a href=#serial><b>Serial Output</b></a><br>
    94 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.1 <a href=#sermount>Mountpoint</a><br>
    95 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.2 <a href=#serport>Port Name</a><br>
    96 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.3 <a href=#serbaud>Baud Rate</a><br>
    97 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.4 <a href=#serflow>Flow Control</a><br>
    98 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.5 <a href=#serparity>Parity</a><br>
    99 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.6 <a href=#serdata>Data Bits</a><br>
    100 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.7 <a href=#serstop>Stop Bits</a><br>
    101 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.8 <a href=#serauto>NMEA</a><br>
    102 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.9 <a href=#serfile>File</a><br>
    103 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.10 <a href=#serheight>Height</a><br>
    104 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.10.11 <a href=#sersampl>Sampling</a><br>
    105 &nbsp; &nbsp; &nbsp; 2.11 <a href=#advnote><b>Outages</b></a><br>
    106 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.11.1. <a href=#obsrate>Observation Rate</a><br>
    107 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.11.2. <a href=#advfail>Failure Threshold</a><br>
    108 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.11.3. <a href=#advreco>Recovery Threshold</a><br>
    109 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.11.4. <a href=#advscript>Script</a><br>
    110 &nbsp; &nbsp; &nbsp; 2.12 <a href=#misc><b>Miscellaneous</b></a><br>
    111 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.12.1. <a href=#miscmount>Mountpoint</a><br>
    112 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.12.2. <a href=#miscperf>Log Latency</a><br>
    113 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.12.3. <a href=#miscscan>Scan RTCM</a><br>
    114 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.12.4. <a href=#miscport>Port</a><br>
    115 &nbsp; &nbsp; &nbsp; 2.13 <a href=#pppclient><b>PPP Client</b></a><br>
    116 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1 <a href=#pppInp><b>PPP (1): Input and Output</b></a><br>
    117 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.1 <a href=#pppdatasource>Data Source</a><br>
    118 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.2 <a href=#ppprnxobs>RINEX Observation File</a><br>
    119 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.3 <a href=#ppprnxnav>RINEX Navigation File</a><br>
    120 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.4 <a href=#pppcorrstream>Corrections Stream</a><br>
    121 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.5 <a href=#pppcorrfile>Corrections File</a><br>
    122 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.6 <a href=#pppantexfile>ANTEX File</a><br>
    123 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.7 <a href=#pppmarkcoor>Coordinates File</a><br>
    124 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.8 <a href=#pppv3filename>Version 3 Filenames</a><br>
    125 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.9 <a href=#ppplogfile>Logfile Directory</a><br>
    126 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.10 <a href=#pppnmeafile>NMEA Directory</a><br>
    127 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.11 <a href=#pppsnxtrofile>SNX TRO Directory</a><br>
    128 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.11.1 <a href=#pppsnxtrointr>Interval</a><br>
    129 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.11.2 <a href=#pppsnxtrosampl>Sampling</a><br>
    130 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.11.3 <a href=#pppsnxAc>Analysis Center</a><br>
    131 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.1.11.4 <a href=#pppsnxSol>Solution ID</a><br>
    132 
    133 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2 <a href=#pppStation><b>PPP (2): Processed Stations</b></a><br>
    134 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.1 <a href=#pppsite>Station</a><br>
    135 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.2 <a href=#pppnehsigma>Sigma North/East/Up</a><br>
    136 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.3 <a href=#pppnehnoise>Noise North/East/Up</a><br>
    137 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.4 <a href=#ppptropsigma>Tropo Sigma</a><br>
    138 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.5 <a href=#ppptropnoise>Tropo Noise</a><br>
    139 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.6 <a href=#pppnmeaport>NMEA Port</a><br>
    140 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3 <a href=#pppOptions><b>PPP (3): Processing Options</b></a><br>
    141 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.1 <a href=#ppplinecombi>Linear Combinations</a><br>
    142 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.2 <a href=#pppcodeobs>Code Observations</a><br>
    143 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.3 <a href=#pppphaseobs>Phase Observations</a><br>
    144 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.4 <a href=#pppeleweight>Elevation Dependent Weighting</a><br>
    145 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.5 <a href=#pppminobs>Minimum Number of Observations</a><br>
    146 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.6 <a href=#pppmineleva>Minimum Elevation</a><br>
    147 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.7 <a href=#pppwaitclockcorr>Wait for Clock Corrections</a><br>
    148 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.8 <a href=#pppseeding>Seeding</a><br>
    149 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4 <a href=#pppPlots><b>PPP (4): Plots</b></a><br>
    150 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.1 <a href=#ppptimeseries>PPP Plot</a><br>
    151 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.2 <a href=#pppaudioresp>Audio Response</a><br>
    152 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.3 <a href=#ppptrackmap>Track Map</a><br>
    153 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.3.1 <a href=#pppmaptype>Google/OSM</a><br>
    154 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.4 <a href=#pppdotprop>Dot-properties</a><br>
    155 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.4.1 <a href=#pppdotsize>Size</a><br>
    156 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.4.2 <a href=#pppdotcolor>Color</a><br>
    157 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.4.5 <a href=#pppspeed>Post Processing Speed</a><br>
    158 &nbsp; &nbsp; &nbsp; 2.14 <a href=#combi><b>Combine Corrections</b></a><br>
    159 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1 <a href=#combimounttab>Combine Corrections Table</a><br>
    160 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1.1 <a href=#combiadd>Add Row, Delete</a><br>
    161 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1.2 <a href=#combimethod>Method</a><br>
    162 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1.3 <a href=#combimax>Maximal Residuum</a><br>
    163 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1.4 <a href=#combismpl>Sampling</a><br>
    164 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.14.1.5 <a href=#combiGLO>Use GLONASS</a><br>
    165 &nbsp; &nbsp; &nbsp; 2.15 <a href=#upclk><b>Upload Corrections</b></a><br>
    166 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.1 <a href=#upadd>Add, Delete Row</a><br>
    167 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.2 <a href=#uphost>Host, Port, Mountpoint, Password</a><br>
    168 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.3 <a href=#upsystem>System</a><br>
    169 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.4 <a href=#upcom>Center of Mass</a><br>
    170 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.5 <a href=#upsp3>SP3 File</a><br>
    171 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.6 <a href=#uprinex>RNX File</a><br>
    172 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.7 <a href=#pidsidiod>PID, SID, IOD</a><br>
    173 
    174 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.8 <a href=#upinter>Interval</a><br>
    175 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.9 <a href=#upclksmpl>Sampling</a><br>
    176 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.9.1 <a href=#upclkorb>Orbits</a><br>
    177 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.9.2 <a href=#upclksp3>SP3</a><br>
    178 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.9.3 <a href=#upclkrnx>RINEX</a><br>
    179 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.10 <a href=#upcustom>Custom Trafo</a><br>
    180 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.15.11 <a href=#upantex>ANTEX File</a><br>
    181 &nbsp; &nbsp; &nbsp; 2.16 <a href=#upeph><b>Upload Ephemeris</b></a><br>
    182 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.16.1 <a href=#brdcserver>Host &amp; Port</a><br>
    183 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.16.2 <a href=#brdcmount>Mountpoint &amp; Password</a><br>
    184 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.16.3 <a href=#brdcsmpl>Sampling</a><br>
    185 &nbsp; &nbsp; &nbsp; 2.17 <a href=#streams><b>Streams Canvas</b></a><br>
    186 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.1 <a href=#streamedit>Edit Streams</a><br>
    187 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.2 <a href=#streamdelete>Delete Stream</a><br>
    188 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.3 <a href=#streamconf>Reconfigure Stream Selection On-the-fly</a><br>
    189 &nbsp; &nbsp; &nbsp; 2.18 <a href=#logs><b>Logging Canvas</b></a><br>
    190 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.1 <a href=#logfile>Log</a><br>
    191 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.2 <a href=#throughput>Throughput</a><br>
    192 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.3 <a href=#latency>Latency</a><br>
    193 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.4 <a href=#ppptab>PPP Plot</a><br>
    194 &nbsp; &nbsp; &nbsp; 2.19 <a href=#bottom><b>Bottom Menu Bar</b></a><br>
    195 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1 <a href=#streamadd>Add Stream</a><br>
    196 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1 <a href=#streamcaster>Add Stream - Coming from Caster</a><br>
    197 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.1 <a href=#streamhost>Caster Host and Port</a><br>
    198 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.2 <a href=#streamtable>Casters Table</a><br>
    199 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.3 <a href=#streamuser>User and Password</a><br>
    200 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.4 <a href=#gettable>Get Table</a><br>
    201 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.5 <a href=#ntripv>Ntrip Version</a><br>
    202 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.6 <a href=#castermap>Map</a><br>
    203 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.2 <a href=#streamip>Add Stream - Coming from TCP/IP Port</a><br>
    204 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.3 <a href=#streamudp>Add Stream - Coming from UDP Port</a><br>
    205 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.4 <a href=#streamser>Add Stream - Coming from Serial Port</a><br>
    206 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.2 <a href=#streamsdelete>Delete Stream</a><br>
    207 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.3 <a href=#streamsmap>Map</a><br>
    208 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.4 <a href=#start>Start</a><br>
    209 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.5 <a href=#stop>Stop</a><br>
    210 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.6 <a href=#contexthelp>Help? = Shift+F1</a><br>
    211 &nbsp; &nbsp; &nbsp; 2.20 <a href=#cmd><b>Command Line Options</b></a><br>
    212 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1 <a href=#cmdVersion>Version</a><br>
    213 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.2 <a href=#cmdDisplay>Display</a><br>
    214 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.3 <a href=#nw>No Window Mode</a><br>
    215 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.4 <a href=#post>File Mode</a><br>
    216 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.5 <a href=#conffile>Configuration File</a><br>
    217 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.6 <a href=#confopt>Configuration Options</a><br><br>
    218 <b>3.</b> <a href=#annex><b>Annex</b></a><br><br>
    219 &nbsp; &nbsp; &nbsp; 3.1 <a href=#history>Revision History</a><br>
    220 &nbsp; &nbsp; &nbsp; 3.2 <a href=#rtcm>RTCM Standards</a><br>
    221 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.2.1 <a href=#ntrip1>Ntrip Version 1</a><br>
    222 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.2.2 <a href=#ntrip2>Ntrip Version 2</a><br>
    223 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.2.3 <a href=#rtcm2>RTCM Version 2</a><br>
    224 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3.2.4 <a href=#rtcm3>RTCM Version 3</a><br>
    225 &nbsp; &nbsp; &nbsp; 3.3 <a href=#confList>Command Line Help</a><br>
    226 &nbsp; &nbsp; &nbsp; 3.4 <a href=#links>Further Reading</a><br>
    227 &nbsp; &nbsp; &nbsp; 3.5 <a href=#abbrev>Abbreviations</a>
    228 </p>
    2291
    2302
    231 <p><b>List of Figures</b><br><br>
    232 <table>
    233 <tr><td><b>Fig.&nbsp;&nbsp;</b></td><td><b>Title</b></td><td><b>Chapter</b></td></tr>
    234 <tr><td>1</td><td>Flowchart, BNC connected to a GNSS rover for Precise Point Positioning</b></td><td>1.3</td></tr>
    235 <tr><td>2</td><td>Flowchart, BNC converting RTCM streams to RINEX batches</td><td>1.3</td></tr>
    236 <tr><td>3</td><td>Flowchart, BNC feeding a real-time GNSS engine and uploading encoded Broadcast Corrections</td><td>1.3</td></tr>
    237 <tr><td>4</td><td>Flowchart, BNC combining Broadcast Correction streams</td><td>1.3</td></tr>
    238 <tr><td>5</td><td>Sections on BNC's main window</td><td>1.4</td></tr>
    239 <tr><td>6</td><td>Management of configuration options in BNC</td><td>1.6</td></tr>
    240 <tr><td>7</td><td>BNC's 'Network' panel configured to ignore eventually occurring SSL error messages</td><td>2.2.2</td></tr>
    241 <tr><td>8</td><td>BNC translating incoming streams to 15 min RINEX Version 3 files</td><td>2.4</td></tr>
    242 <tr><td>9</td><td>BNC converting Broadcast Ephemeris stream to RINEX Version 3 Navigation files</td><td>2.5.5</td></tr>
    243 <tr><td>10</td><td>Example for BNC's 'RINEX Editing Options' window</td><td>2.6.7</td></tr>
    244 <tr><td>11</td><td>Example for RINEX file concatenation with BNC</td><td>2.6.7</td></tr>
    245 <tr><td>12</td><td>Example for creating RINEX quality check analysis graphics output with BNC</td><td>2.6.7</td></tr>
    246 <tr><td>13</td><td>Example for satellite availability, elevation and PDOP plots as a result of a RINEX quality check analysis with BNC</td><td>2.6.7</td></tr>
    247 <tr><td>14</td><td>Sky plot examples for multipath, part of RINEX quality check analysis with BNC</td><td>2.6.7</td></tr>
    248 <tr><td>15</td><td>Sky plot examples for signal-to-noise ratio, part of RINEX quality check analysis with BNC</td><td>2.6.7</td></tr>
    249 <tr><td>16</td><td>Example for comparing two SP3 files with satellite orbit and clock data using BNC</td><td>2.7.3</td></tr>
    250 <tr><td>17</td><td>Example for pulling, saving and output of Broadcast Corrections using BNC</td><td>2.8.3</td></tr>
    251 <tr><td>18</td><td>Synchronized BNC output via IP port to feed a GNSS real-time engine</td><td>2.9</td></tr>
    252 <tr><td>19</td><td>Flowcharts, BNC forwarding a stream to a serially connected receiver; sending NMEA sentences is mandatory for VRS streams</td><td>2.10</td></tr>
    253 <tr><td>20</td><td>BNC pulling a VRS stream to feed a serially connected RTK rover</td><td>2.10</td></tr>
    254 <tr><td>21</td><td>RTCM message numbers, latencies and observation types logged by BNC</td><td>2.12</td></tr>
    255 <tr><td>22</td><td>Real-time Precise Point Positioning with BNC, PPP Panel 1</td><td>2.13.1</td></tr>
    256 <tr><td>23</td><td>Precise Point Positioning with BNC, PPP Panel 2, using RTKPLOT for visualization</td><td>2.13.2</td></tr>
    257 <tr><td>24</td><td>Precise Point Positioning with BNC, PPP Panel 3</td><td>2.13.3</td></tr>
    258 <tr><td>25</td><td>Precise Point Positioning with BNC in 'Quick-Start' mode, PPP Panel 4</td><td>2.13.3.8</td></tr>
    259 <tr><td>26</td><td>Track of positions from BNC with Google Maps in background</td><td>2.13.4.3</td></tr>
    260 <tr><td>27</td><td>Example for background map from Google Maps and OpenStreetMap (OSM) resources</td><td>2.13.4.3.1</td></tr>
    261 <tr><td>28</td><td>BNC combining Broadcast Correction streams</td><td>2.14</td></tr>
    262 <tr><td>29</td><td>INTERNAL' PPP with BNC using a combination of Broadcast Corrections</td><td>2.14</td></tr>
    263 <tr><td>30</td><td>Setting BNC's Custom Transformation Parameters window, example for 'ITRF2008->GDA94'</td><td>2.15.3</td></tr>
    264 <tr><td>31</td><td>BNC producing Broadcast Corrections from incoming precise orbits and clocks and uploading them to an Ntrip Broadcaster</td><td>2.15.11</td></tr>
    265 <tr><td>32</td><td>BNC uploading a combined Broadcast Correction stream</td><td>2.15.11</td></tr>
    266 <tr><td>33</td><td>BNC producing Broadcast Ephemeris stream from globally distributed RTCM streams; upload in RTCM format to an Ntrip Broadcaster</td><td>2.16.3</td></tr>
    267 <tr><td>34</td><td>Bandwidth consumption of RTCM streams received by BNC</td><td>2.18.2</td></tr>
    268 <tr><td>35</td><td>Latency of RTCM streams received by BNC</td><td>2.18.3</td></tr>
    269 <tr><td>36</td><td>Example for time series plot of displacements produced by BNC</td><td>2.18.4</td></tr>
    270 <tr><td>37</td><td>Steam input communication links accepted by BNC</td><td>2.19</td></tr>
    271 <tr><td>38</td><td>BNC's 'Select Broadcaster' table</td><td>2.19.1.1.2</td></tr>
    272 <tr><td>39</td><td>Broadcaster source-table shown by BNC</td><td>2.19.1.1.4</td></tr>
    273 <tr><td>40</td><td>Stream distribution map shown by BNC as derived from Ntrip Broadcaster source-table</td><td>2.19.1.1.6</td></tr>
    274 <tr><td>41</td><td>BNC configuration for pulling a stream via serial port</td><td>2.19.1.4</td></tr>
     3<!doctype html>
     4
     5
     6<html xmlns="http://www.w3.org/1999/xhtml">
     7  <head>
     8    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     9   
     10    <title>BNC 2.13 documentation</title>
     11   
     12    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
     13    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
     14   
     15    <script type="text/javascript">
     16      var DOCUMENTATION_OPTIONS = {
     17        URL_ROOT:    './',
     18        VERSION:     '2.13',
     19        COLLAPSE_INDEX: false,
     20        FILE_SUFFIX: '.html',
     21        HAS_SOURCE:  true
     22      };
     23    </script>
     24    <script type="text/javascript" src="_static/jquery.js"></script>
     25    <script type="text/javascript" src="_static/underscore.js"></script>
     26    <script type="text/javascript" src="_static/doctools.js"></script>
     27    <script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
     28    <script type="text/javascript" src="_static/bizstyle.js"></script>
     29    <link rel="top" title="None" href="bnchelp.html#document-bnchelp" />
     30    <meta name="viewport" content="width=device-width,initial-scale=1.0">
     31    <!--[if lt IE 9]>
     32    <script type="text/javascript" src="_static/css3-mediaqueries.js"></script>
     33    <![endif]-->
     34  </head>
     35  <body role="document">
     36    <div class="related" role="navigation" aria-label="related navigation">
     37      <h3>Navigation</h3>
     38      <ul>
     39        <li class="nav-item nav-item-0"><a href="bnchelp.html#document-bnchelp">BNC 2.13 documentation</a> &#187;</li>
     40      </ul>
     41    </div>
     42      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
     43        <div class="sphinxsidebarwrapper">
     44            <p class="logo"><a href="bnchelp.html#document-bnchelp">
     45              <img class="logo" src="_static/bnc_logo.png" alt="Logo"/>
     46            </a></p>
     47  <h3><a href="bnchelp.html#document-bnchelp">Table Of Contents</a></h3>
     48  <p class="caption"><span class="caption-text">Table of Contents</span></p>
     49<ul>
     50<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-abbreviations">Abbreviations</a></li>
     51<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-chapter1">Introduction</a><ul>
     52<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#purpose">Purpose</a></li>
     53<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#authors">Authors</a></li>
     54<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#documentation">Documentation</a></li>
     55<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#contact">Contact</a></li>
     56<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#acknowledgements">Acknowledgements</a></li>
     57<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#looking-back">Looking Back</a></li>
     58</ul>
     59</li>
     60<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-chapter2">BNC Overview</a><ul>
     61<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#supported-gnss-and-applications">Supported GNSS and applications</a></li>
     62<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#data-flow">Data Flow</a></li>
     63<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#handling">Handling</a></li>
     64<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#limitations">Limitations</a></li>
     65</ul>
     66</li>
     67<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-chapter3">Installation</a><ul>
     68<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#pre-compiled-builds">Pre-compiled builds</a></li>
     69<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#compilation">Compilation</a></li>
     70</ul>
     71</li>
     72<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-chapter4">Configuration</a><ul>
     73<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#general-procedure">General procedure</a></li>
     74<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#examples-configuration-files">Examples configuration files</a></li>
     75<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#list-of-example-configuration-files">List of example configuration files</a></li>
     76<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#command-line-configuration-options">Command Line configuration options</a></li>
     77<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#command-line-configuration-options-overwriting-configuration-file-options">Command Line configuration options overwriting Configuration File options</a></li>
     78</ul>
     79</li>
     80<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-chapter5">BNC software settings</a><ul>
     81<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#top-menu-bar">Top Menu Bar</a></li>
     82<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#network">Network</a></li>
     83<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#general">General</a></li>
     84<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#rinex-observations">RINEX Observations</a></li>
     85<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#rinex-ephemeris">RINEX Ephemeris</a></li>
     86<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#rinex-editing-qc">RINEX Editing &amp; QC</a></li>
     87<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#sp3-comparison">SP3 Comparison</a></li>
     88<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#broadcast-corrections">Broadcast Corrections</a></li>
     89<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#feed-engine">Feed Engine</a></li>
     90<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#serial-output">Serial output</a></li>
     91<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#outages">Outages</a></li>
     92<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#miscellaneous">Miscellaneous</a></li>
     93<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#ppp-client">PPP Client</a></li>
     94<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#combine-corrections">Combine Corrections</a></li>
     95<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#upload-corrections">Upload Corrections</a></li>
     96<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#upload-ephemeris">Upload Ephemeris</a></li>
     97<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#streams-canvas">Streams Canvas</a></li>
     98<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#logging-canvas">Logging Canvas</a></li>
     99<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#bottom-menu-bar">Bottom Menu Bar</a></li>
     100<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#command-line-options">Command Line Options</a></li>
     101</ul>
     102</li>
     103<li class="toctree-l1"><a class="reference internal" href="bnchelp.html#document-annex">Annex</a><ul>
     104<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#revision-history">Revision History</a></li>
     105<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#rtcm-standards">RTCM Standards</a></li>
     106<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#command-line-help">Command Line Help</a></li>
     107<li class="toctree-l2"><a class="reference internal" href="bnchelp.html#further-reading">Further Reading</a></li>
     108</ul>
     109</li>
     110</ul>
     111
     112        </div>
     113      </div>
     114
     115    <div class="document">
     116      <div class="documentwrapper">
     117        <div class="bodywrapper">
     118          <div class="body" role="main">
     119           
     120  <div class="section" id="welcome-to-bnc-s-documentation">
     121<h1>Welcome to BNC&#8217;s documentation!<a class="headerlink" href="#welcome-to-bnc-s-documentation" title="Permalink to this headline">¶</a></h1>
     122<p>Contents:</p>
     123<div class="toctree-wrapper compound" id="mastertoc">
     124<span id="document-abbreviations"></span><span class="target" id="index-0"></span><span class="target" id="index-1"></span><span class="target" id="index-2"></span><span class="target" id="index-3"></span><span class="target" id="index-4"></span><span class="target" id="index-5"></span><span class="target" id="index-6"></span><span class="target" id="index-7"></span><span class="target" id="index-8"></span><span class="target" id="index-9"></span><span class="target" id="index-10"></span><span class="target" id="index-11"></span><span class="target" id="index-12"></span><span class="target" id="index-13"></span><span class="target" id="index-14"></span><span class="target" id="index-15"></span><span class="target" id="index-16"></span><span class="target" id="index-17"></span><span class="target" id="index-18"></span><span class="target" id="index-19"></span><span class="target" id="index-20"></span><span class="target" id="index-21"></span><span class="target" id="index-22"></span><span class="target" id="index-23"></span><span class="target" id="index-24"></span><span class="target" id="index-25"></span><span class="target" id="index-26"></span><span class="target" id="index-27"></span><span class="target" id="index-28"></span><span class="target" id="index-29"></span><span class="target" id="index-30"></span><span class="target" id="index-31"></span><span class="target" id="index-32"></span><span class="target" id="index-33"></span><span class="target" id="index-34"></span><span class="target" id="index-35"></span><span class="target" id="index-36"></span><span class="target" id="index-37"></span><span class="target" id="index-38"></span><span class="target" id="index-39"></span><span class="target" id="index-40"></span><span class="target" id="index-41"></span><span class="target" id="index-42"></span><span class="target" id="index-43"></span><span class="target" id="index-44"></span><span class="target" id="index-45"></span><span class="target" id="index-46"></span><span class="target" id="index-47"></span><span class="target" id="index-48"></span><span class="target" id="index-49"></span><span class="target" id="index-50"></span><span class="target" id="index-51"></span><span class="target" id="index-52"></span><span class="target" id="index-53"></span><span class="target" id="index-54"></span><span class="target" id="index-55"></span><span class="target" id="index-56"></span><span class="target" id="index-57"></span><span class="target" id="index-58"></span><span class="target" id="index-59"></span><span class="target" id="index-60"></span><span class="target" id="index-61"></span><span class="target" id="index-62"></span><span class="target" id="index-63"></span><span class="target" id="index-64"></span><span class="target" id="index-65"></span><span class="target" id="index-66"></span><span class="target" id="index-67"></span><span class="target" id="index-68"></span><span class="target" id="index-69"></span><span class="target" id="index-70"></span><span class="target" id="index-71"></span><span class="target" id="index-72"></span><span class="target" id="index-73"></span><span class="target" id="index-74"></span><span class="target" id="index-75"></span><span class="target" id="index-76"></span><span class="target" id="index-77"></span><span class="target" id="index-78"></span><span class="target" id="index-79"></span><span class="target" id="index-80"></span><span class="target" id="index-81"></span><span class="target" id="index-82"></span><span class="target" id="index-83"></span><span class="target" id="index-84"></span><span class="target" id="index-85"></span><span class="target" id="index-86"></span><span class="target" id="index-87"></span><span class="target" id="index-88"></span><div class="section" id="abbreviations">
     125<span id="index-89"></span><h2>Abbreviations<a class="headerlink" href="#abbreviations" title="Permalink to this headline">¶</a></h2>
     126<table border="1" class="docutils">
     127<colgroup>
     128<col width="13%" />
     129<col width="87%" />
     130</colgroup>
     131<tbody valign="top">
     132<tr class="row-odd"><td>AC</td>
     133<td>Analysis Center</td>
     134</tr>
     135<tr class="row-even"><td>AFREF</td>
     136<td>IAG Reference Frame Sub-Commission for Africa</td>
     137</tr>
     138<tr class="row-odd"><td>ANTEX</td>
     139<td>Antenna Exchange Format</td>
     140</tr>
     141<tr class="row-even"><td>APC</td>
     142<td>Antenna Phase Center</td>
     143</tr>
     144<tr class="row-odd"><td>APREF</td>
     145<td>IAG Reference Frame Sub-Commission for Asia and Pacific</td>
     146</tr>
     147<tr class="row-even"><td>ARP</td>
     148<td>Antenna Reference Point</td>
     149</tr>
     150<tr class="row-odd"><td>BKG</td>
     151<td>Bundesamt für Kartographie und Geodäsie</td>
     152</tr>
     153<tr class="row-even"><td>BNC</td>
     154<td>BNK Ntrip Client</td>
     155</tr>
     156<tr class="row-odd"><td>BSW</td>
     157<td>Bernese GNSS Software</td>
     158</tr>
     159<tr class="row-even"><td>CC</td>
     160<td>Combination Center</td>
     161</tr>
     162<tr class="row-odd"><td>CLI</td>
     163<td>Command Line Interface</td>
     164</tr>
     165<tr class="row-even"><td>CoM</td>
     166<td>Center Of Mass</td>
     167</tr>
     168<tr class="row-odd"><td>DGNSS</td>
     169<td>Differential GNSS</td>
     170</tr>
     171<tr class="row-even"><td>DGPS-IP</td>
     172<td>Differential GPS via Internet Protocol</td>
     173</tr>
     174<tr class="row-odd"><td>DMG</td>
     175<td>Disk Image, File</td>
     176</tr>
     177<tr class="row-even"><td>DREF91</td>
     178<td>Geodetic Datum for Germany 1991</td>
     179</tr>
     180<tr class="row-odd"><td>ECEF</td>
     181<td>Earth-Centred-Earth-Fixed</td>
     182</tr>
     183<tr class="row-even"><td>EDGE</td>
     184<td>Enhanced Data Rates for GSM Evolution</td>
     185</tr>
     186<tr class="row-odd"><td>ETRF2000</td>
     187<td>European Terrestrial Reference Frame 2000</td>
     188</tr>
     189<tr class="row-even"><td>EUREF</td>
     190<td>IAG Reference Frame Sub-Commission for Europe</td>
     191</tr>
     192<tr class="row-odd"><td>EoE</td>
     193<td>End of Epoch</td>
     194</tr>
     195<tr class="row-even"><td>FKP</td>
     196<td>Flächen-Korrektur-Parameter</td>
     197</tr>
     198<tr class="row-odd"><td>FTP</td>
     199<td>File Transfer Protocol</td>
     200</tr>
     201<tr class="row-even"><td>GDA94</td>
     202<td>Geodetic Datum Australia 1994</td>
     203</tr>
     204<tr class="row-odd"><td>GM</td>
     205<td>Google Maps</td>
     206</tr>
     207<tr class="row-even"><td>GNSS</td>
     208<td>Global Navigation Satellite System</td>
     209</tr>
     210<tr class="row-odd"><td>GNU</td>
     211<td>GNU&#8217;s Not Unix</td>
     212</tr>
     213<tr class="row-even"><td>GPL</td>
     214<td>General Public License</td>
     215</tr>
     216<tr class="row-odd"><td>GPRS</td>
     217<td>General Packet Radio Service</td>
     218</tr>
     219<tr class="row-even"><td>GPSWD</td>
     220<td>GPS Week and Day</td>
     221</tr>
     222<tr class="row-odd"><td>GSM</td>
     223<td>Global System for Mobile Communications</td>
     224</tr>
     225<tr class="row-even"><td>GUI</td>
     226<td>Graphical User Interface</td>
     227</tr>
     228<tr class="row-odd"><td>HP MSM</td>
     229<td>High Precision Multiple Signal Messages</td>
     230</tr>
     231<tr class="row-even"><td>HR URA</td>
     232<td>High Rate User Range Accuracy</td>
     233</tr>
     234<tr class="row-odd"><td>HTTP</td>
     235<td>Hypertext Transfer Protocol</td>
     236</tr>
     237<tr class="row-even"><td>HTTPS</td>
     238<td>Hypertext Transfer Protocol Secure</td>
     239</tr>
     240<tr class="row-odd"><td>IAG</td>
     241<td>International Association of Geodesy</td>
     242</tr>
     243<tr class="row-even"><td>ICECAST</td>
     244<td>Streaming Media Server</td>
     245</tr>
     246<tr class="row-odd"><td>IGS08</td>
     247<td>IGS Reference Frame 2008</td>
     248</tr>
     249<tr class="row-even"><td>IGS</td>
     250<td>International GNSS Service</td>
     251</tr>
     252<tr class="row-odd"><td>IOD</td>
     253<td>Issue of Data</td>
     254</tr>
     255<tr class="row-even"><td>IP</td>
     256<td>Internet Protocol</td>
     257</tr>
     258<tr class="row-odd"><td>ITRF2008</td>
     259<td>International Terrestrial Reference Frame 2008</td>
     260</tr>
     261<tr class="row-even"><td>L3</td>
     262<td>Ionosphere-Free Linear Combination Of Phase Observations</td>
     263</tr>
     264<tr class="row-odd"><td>LAN</td>
     265<td>Local Area Network</td>
     266</tr>
     267<tr class="row-even"><td>LC</td>
     268<td>Linea Combination</td>
     269</tr>
     270<tr class="row-odd"><td>M-GEX</td>
     271<td>Multi GNSS-Experiment</td>
     272</tr>
     273<tr class="row-even"><td>MAC</td>
     274<td>Master Auxiliary Concept</td>
     275</tr>
     276<tr class="row-odd"><td>MJD</td>
     277<td>Modified Julian Date</td>
     278</tr>
     279<tr class="row-even"><td>MSI</td>
     280<td>Microsoft Installer, File</td>
     281</tr>
     282<tr class="row-odd"><td>MSM</td>
     283<td>Multiple Signal Messages</td>
     284</tr>
     285<tr class="row-even"><td>MW</td>
     286<td>Melbourne W&#8221;ubbena Linear Combination</td>
     287</tr>
     288<tr class="row-odd"><td>NAD83</td>
     289<td>North American Datum 1983</td>
     290</tr>
     291<tr class="row-even"><td>NAREF</td>
     292<td>IAG Reference Frame Sub-Commission for North America</td>
     293</tr>
     294<tr class="row-odd"><td>NMEA</td>
     295<td>National Marine Electronics Association Format</td>
     296</tr>
     297<tr class="row-even"><td>Ntrip</td>
     298<td>Networked Transport of RTCM via Internet Protocol</td>
     299</tr>
     300<tr class="row-odd"><td>OSM</td>
     301<td>OpenStreetMap</td>
     302</tr>
     303<tr class="row-even"><td>OSR</td>
     304<td>Observation Space Representation</td>
     305</tr>
     306<tr class="row-odd"><td>P3</td>
     307<td>Ionosphere-Free Linear Combination Of Code Observations</td>
     308</tr>
     309<tr class="row-even"><td>PDOP</td>
     310<td>Positional Dilution Of Precision</td>
     311</tr>
     312<tr class="row-odd"><td>PNG</td>
     313<td>Portable Network Graphics</td>
     314</tr>
     315<tr class="row-even"><td>PPP</td>
     316<td>Precise Point Positioning</td>
     317</tr>
     318<tr class="row-odd"><td>Qt</td>
     319<td>Cross-Platform Application Framework</td>
     320</tr>
     321<tr class="row-even"><td>REQC</td>
     322<td>RINEX Editing and Quality Checking</td>
     323</tr>
     324<tr class="row-odd"><td>RINEX</td>
     325<td>Receiver Independent Exchange Format</td>
     326</tr>
     327<tr class="row-even"><td>RTCM SC-104</td>
     328<td>Radio Technical Commission for Maritime Services, Special Committee 104</td>
     329</tr>
     330<tr class="row-odd"><td>RTK</td>
     331<td>Real Time Kinematic</td>
     332</tr>
     333<tr class="row-even"><td>RTKPLOT</td>
     334<td>View and Plot Positioning Solutions Software, Part of RTKLIB</td>
     335</tr>
     336<tr class="row-odd"><td>RTNET</td>
     337<td>Real-Time Network Format</td>
     338</tr>
     339<tr class="row-even"><td>RTP</td>
     340<td>Real-Time Transport Protocol</td>
     341</tr>
     342<tr class="row-odd"><td>RTSP</td>
     343<td>Real-Time Streaming Protocol</td>
     344</tr>
     345<tr class="row-even"><td>SBAS</td>
     346<td>Space Based Augmentation System</td>
     347</tr>
     348<tr class="row-odd"><td>SINEX TRO</td>
     349<td>Troposphere Solution Independent Exchange Format</td>
     350</tr>
     351<tr class="row-even"><td>SINEX</td>
     352<td>Solution Independent Exchange Format</td>
     353</tr>
     354<tr class="row-odd"><td>SIRGAS2000</td>
     355<td>Geodetic Datum for Latin America and Caribbean 2000</td>
     356</tr>
     357<tr class="row-even"><td>SIRGAS95</td>
     358<td>Geodetic Datum for Latin America and Caribbean 1995</td>
     359</tr>
     360<tr class="row-odd"><td>SIRGAS</td>
     361<td>IAG Reference Frame Sub-Commission for Latin America and Caribbean</td>
     362</tr>
     363<tr class="row-even"><td>SP3</td>
     364<td>Standard Product # 3</td>
     365</tr>
     366<tr class="row-odd"><td>SPP</td>
     367<td>Single Point Positioning</td>
     368</tr>
     369<tr class="row-even"><td>SSL</td>
     370<td>Secure Sockets Layer</td>
     371</tr>
     372<tr class="row-odd"><td>SSR</td>
     373<td>State Space Representation</td>
     374</tr>
     375<tr class="row-even"><td>SVN</td>
     376<td>Subversion, Revision Control System</td>
     377</tr>
     378<tr class="row-odd"><td>TCP</td>
     379<td>Transmission Control Protocol</td>
     380</tr>
     381<tr class="row-even"><td>TEQC</td>
     382<td>Translation, Editing and Quality Checking</td>
     383</tr>
     384<tr class="row-odd"><td>TLS</td>
     385<td>Transport Layer Security</td>
     386</tr>
     387<tr class="row-even"><td>UDP</td>
     388<td>User Datagram Protocol</td>
     389</tr>
     390<tr class="row-odd"><td>UMTS</td>
     391<td>Universal Mobile Telecommunications System</td>
     392</tr>
     393<tr class="row-even"><td>URA</td>
     394<td>User Range Accuracy</td>
     395</tr>
     396<tr class="row-odd"><td>VRS</td>
     397<td>Virtual Reference Station</td>
     398</tr>
     399<tr class="row-even"><td>VTEC</td>
     400<td>Vertical Total Electron Content</td>
     401</tr>
     402</tbody>
    275403</table>
    276 </p>
    277 
    278 <p><b>List of Tables</b><br><br>
    279 <table>
    280 <tr><td><b>Tab.&nbsp;&nbsp;</b></td><td><b>Title</b></td><td><b>Chapter</b></td></tr>
    281 <tr><td>1</td><td>Status of RTCM Version 3 message implementations in BNC supporting various GNSS systems</td><td>1.2</td></tr>
    282 <tr><td>2</td><td>Contents and format of synchronized output of observations feeding a GNSS engine</td><td>2.9</td></tr>
    283 </table>
    284 </p>
    285 
    286 <p><h3>1. <a name="genInstruction">General Information</h3></p>
    287 <p>
    288 The BKG Ntrip Client (BNC) is a program for simultaneously retrieving, decoding, converting and processing or analyzing real-time GNSS data streams applying the 'Networked Transport of RTCM via Internet Protocol' (Ntrip) standard. It has been developed within the framework of the IAG sub-commission for Europe (EUREF) and the International GNSS Service (IGS). Although meant to be a real-time tool, it comes with some post processing functionality. It can be used for data coming from Ntrip Broadcasters like
    289 <ul>
    290 <li><u>http://www.euref-ip.net/home</u></li>
    291 <li><u>http://www.igs-ip.net/home</u></li>
    292 <li><u>http://products.igs-ip.net/home</u></li>
    293 <li><u>http://mgex.igs-ip.net/home</u> </li>
    294 </ul>
    295 or similar caster installation.
    296 </p>
    297 
    298 <p>
    299 BNC has been written under GNU General Public License (GPL). Source code is available from Subversion software archive <u>http://software.rtcm-ntrip.org/svn/trunk/BNC</u>. Precompiled binaries of BNC are available for MS Windows, Linux, and Mac OS X systems. They can be downloaded from <u>http://igs.bkg.bund.de/ntrip/download</u>.
    300 </p>
    301 <p>
    302 Feel free to send us comments, suggestions or bug reports. Any contribution would be appreciated.
    303 </p>
    304 
    305 <p>
    306 <b>Authors</b><br><br>
    307 The BKG Ntrip Client (BNC) with a Qt Graphical User Interface (GUI) and a Command Line Interface (CLI) has been developed for
    308 <pre>
    309    Federal Agency for Cartography and Geodesy (BKG)
    310    c/o Dr. Axel R&uuml;lke
    311    Department of Geodesy, Section Satellite Navigation
    312    Frankfurt, Germany
    313    [axel.ruelke@bkg.bund.de]
    314 </pre>
    315 
    316 The software has been written by
    317 
    318 <pre>
    319    Prof. Dr. Leo&scaron; Mervart
    320    Czech Technical University (CTU)
    321    Department of Geomatics
    322    Prague, Czech Republic
    323 </pre>
    324 </p>
    325 
    326 <p>
    327 Prof. Mervart started working on BNC in 2005. His sole responsibility for writing the program code ended February 2015. In March 2015, Dipl.-Ing. Andrea St&uuml;rze took over the responsibility for maintaining  and further developing BNC's source code.
    328 </p>
    329 
    330 <p>
    331 <b>Documentation</b><br><br>
    332 BNC provides context-sensitive help (<i>What's This</i>) related to specific objects. It furthermore comes with the here presented documentation, available as part of the software and as a PDF file. Responsible for offline documentation as well as online documentation at <u>http://software.rtcm-ntrip.org/export/HEAD/ntrip/trunk/BNC/src/bnchelp.html</u> and the example configurations is Dr. Georg Weber.
    333 </p>
    334 
    335 <p>
    336 Note that some figures presented in this documentation may show screenshots from earlier versions of BNC. If so, there is either no relevant change compared to the current appearance of the program or no change at all.
    337 </p>
    338 
    339 <p>
    340 <b>Contact</b><br><br>
    341 Feel free to send us comments, suggestions or bug reports. Any contribution would be appreciated.
    342 <pre>
    343    Federal Agency for Cartography and Geodesy (BKG)
    344    Department of Geodesy, Section Satellite Navigation
    345    Richard-Strauss-Allee 11
    346    60598 Frankfurt am Main, Germany
    347    email: igs-ip@bkg.bund.de
    348 </pre>
    349 </p>
    350 
    351 <p>
    352 <b>Acknowledgements</b><br>
    353 <ul>
    354 <li>
    355 Oliver Montenbruck, German Space Operations Center, DLR, Oberpfaffenhofen, Germany published a RTCM Version 2 decoder unter GNU GPL which has been integrated in BNC.
    356 </li>
    357 <li>
    358 Thomas Yan, Australian NSW Land and Property Information, proofread earlier versions of BNC's Help Contents. Up to Version 2.11 he also provides builds of BNC for Mac OS X systems.
    359 </li>
    360 Scott Glazier, OmniSTAR Australia, has been helpful in finding BNC bugs in version 1.5.
    361 </li>
    362 <li>
    363 James Perlt, BKG, helped fixing bugs and redesigned BNC's main window in version 1.5.
    364 </li>
    365 <li>
    366 Andre Hauschild, German Space Operations Center, DLR, revised the RTCM Version 2 decoder.
    367 </li>
    368 <li>
    369 Zdenek Lukes, Czech Technical University Prague, Department of Geodesy, extended the RTCM Version 2 decoder to handle message types 3, 20, 21, and 22 and added the loss of lock indicator.
    370 </li>
    371 <li>
    372 Jan Dousa, Geodetic Observatory Pecny, Czech Republic, helped with fixing bugs in version 2.5.
    373 </li>
    374 <li>
    375 Denis Laurichesse, Centre National d'Etudes Spatiales (CNES), suggested synchronizing observations and clock corrections to reduce high frequency noise in PPP solutions.
    376 </li>
    377 <li>
    378 Lennard Huisman, Kadaster Netherlands, and Rolf Dach, Astronomical Institute University of Bern, assisted in handling satellite clocks in transformations from ITRF to regional reference frames.
    379 </li>
    380 </ul>
    381 </p>
    382 
    383 <p><h4>1.1 <a name="introPurpose">Purpose</h4></p>
    384 
    385 <p>
    386 Promoting Open RTCM Standards for streaming GNSS data over the Internet has been a major aspect in developing BNC as Open Source real-time software. Basically, the tool enables the test, validation and further evolution of new RTCM messages for precise satellite navigation. With high-level source code at hand, it also allows university education to catch up with comprehensive state-of-the-art positioning and potentially contributes fresh ideas which are free from any licensing.
    387 </p>
    388 
    389 <p> BNC was designed to serve the following purposes:
    390 <ul>
     404</div>
     405<span id="document-chapter1"></span><div class="section" id="introduction">
     406<h2>Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline">¶</a></h2>
     407<div class="section" id="purpose">
     408<h3>Purpose<a class="headerlink" href="#purpose" title="Permalink to this headline">¶</a></h3>
     409<p>The BKG Ntrip Client (BNC) is a program for simultaneously retrieving, decoding, converting and processing or analyzing real-time GNSS data streams applying the &#8216;Networked Transport of RTCM via Internet Protocol&#8217; (Ntrip) standard. It has been developed within the framework of the IAG sub-commission for Europe (EUREF) and the International GNSS Service (IGS). Although meant to be a real-time tool, it comes with some post processing functionality. It can be used for data coming from Ntrip Broadcasters like</p>
     410<ul class="simple">
     411<li><a class="reference external" href="http://www.euref-ip.net/home">http://www.euref-ip.net/home</a></li>
     412<li><a class="reference external" href="http://www.igs-ip.net/home">http://www.igs-ip.net/home</a></li>
     413<li><a class="reference external" href="http://products.igs-ip.net/home">http://products.igs-ip.net/home</a></li>
     414<li><a class="reference external" href="http://mgex.igs-ip.net/home">http://mgex.igs-ip.net/home</a></li>
     415</ul>
     416<p>or similar caster installation.</p>
     417<p>BNC has been written under GNU General Public License (GPL). Source code is available from Subversion software archive <a class="reference external" href="http://software.rtcm-ntrip.org/svn/trunk/BNC">http://software.rtcm-ntrip.org/svn/trunk/BNC</a>. Precompiled binaries of BNC are available for MS Windows, Linux, and Mac OS X systems. They can be downloaded from <a class="reference external" href="http://igs.bkg.bund.de/ntrip/download">http://igs.bkg.bund.de/ntrip/download</a>.</p>
     418<p>Promoting Open RTCM Standards for streaming GNSS data over the Internet has been a major aspect in developing BNC as Open Source real-time software. Basically, the tool enables the test, validation and further evolution of new RTCM messages for precise satellite navigation. With high-level source code at hand, it also allows university education to catch up with comprehensive state-of-the-art positioning and potentially contributes fresh ideas which are free from any licensing.</p>
     419<p>BNC was designed to serve the following purposes</p>
     420<ul class="simple">
    391421<li>Retrieve real-time GNSS data streams available through Ntrip transport protocol;</li>
    392422<li>Retrieve real-time GNSS data streams via TCP directly from an IP address without using the Ntrip transport protocol;</li>
     
    397427<li>Convert RINEX Version 2 to RINEX Version 3 and vice versa;</li>
    398428<li>Compare SP3 files containing satellite orbit and clock data;</li>
    399 <li>Generate orbit and clock corrections to Broadcast Ephemeris through an IP port to</li>
    400 <ul>
     429<li>Generate orbit and clock corrections to Broadcast Ephemeris through an IP port to<ul>
    401430<li>support real-time Precise Point Positioning on GNSS rovers;</li>
    402431<li>support the (outside) combination of such streams as coming simultaneously from various correction providers;</li>
    403432</ul>
     433</li>
    404434<li>Generate ephemeris and synchronized or unsynchronized observations epoch by epoch through an IP port to support real-time GNSS network engines;</li>
    405435<li>Feed a stream into a GNSS receiver via serial communication link;</li>
     
    410440<li>Plot positions derived via PPP from RTCM streams or RINEX files on maps from Google Map or OpenStreetMap;</li>
    411441<li>Simultaneously process several Broadcast Correction streams to produce, encode and upload combined Broadcast Corrections;</li>
    412 
    413442<li>Estimate real-time tropospheric zenith path delays and save them in SINEX troposphere file format;</li>
    414 
    415 <li>Read GNSS orbits and clocks in a plain ASCII format from an IP port. They can be produced by a real-time GNSS engine such as RTNET and should be referenced to the IGS Earth-Centered-Earth-Fixed (ECEF) reference system. BNC will then</li>
    416 <ul>
     443<li>Read GNSS orbits and clocks in a plain ASCII format from an IP port. They can be produced by a real-time GNSS engine such as RTNET and should be referenced to the IGS Earth-Centered-Earth-Fixed (ECEF) reference system. BNC will then<ul>
    417444<li>Convert the IGS Earth-Centered-Earth-Fixed orbits and clocks into Broadcast Corrections with radial, along-track and out-of-plane components;</li>
    418445<li>Upload Broadcast Corrections as an RTCM Version 3 stream to an Ntrip Broadcaster;</li>
     
    420447<li>Log the Broadcast Corrections as Clock RINEX files for further processing using other tools than BNC;</li>
    421448<li>Log the Broadcast Corrections as SP3 files for further processing using other tools than BNC;</li>
    422 </ul>
    423449<li>Upload a Broadcast Ephemeris stream in RTCM Version 3 format;</li>
    424450</ul>
    425 </p>
    426 
    427 <p>
    428 BNC supports the following GNSS stream formats and message types:
    429 </p>
    430 <p>
    431 <ul>
    432 <li>RTCM Version 2 message types; </li>
    433 <li>RTCM Version 3 'conventional' message types;</li>
     451</li>
     452</ul>
     453<p>BNC supports the following GNSS stream formats and message types:</p>
     454<ul class="simple">
     455<li>RTCM Version 2 message types;</li>
     456<li>RTCM Version 3 &#8216;conventional&#8217; message types;</li>
    434457<li>RTCM Version 3 message types for Broadcast Ephemeris;</li>
    435 <li>RTCM Version 3 'State Space Representation' (SSR) messages;</li>
    436 <li>RTCM Version 3 'Multiple Signal Messages' (MSM) and 'High Precision Multiple Signal Messages' (HP MSM);</li>
    437 <li>RTNET, a plain ASCII format defined within BNC to receive orbits and clocks from a serving GNSS engine.
    438 </ul>
    439 </p>
    440 
    441 <p>
    442 BNC supports the following GNSS file formats:
    443 </p>
    444 <p>
    445 <ul>
    446 <li>RINEX Version 2.11 & 3.03, Receiver Independent Exchange format for observations, navigation and meteorological data;</li>
     458<li>RTCM Version 3 &#8216;State Space Representation&#8217; (SSR) messages;</li>
     459<li>RTCM Version 3 &#8216;Multiple Signal Messages&#8217; (MSM) and &#8216;High Precision Multiple Signal Messages&#8217; (HP MSM);</li>
     460<li>RTNET, a plain ASCII format defined within BNC to receive orbits and clocks from a serving GNSS engine.</li>
     461</ul>
     462<p>BNC supports the following GNSS file formats:</p>
     463<ul class="simple">
     464<li>RINEX Version 2.11 &amp; 3.03, Receiver Independent Exchange format for observations, navigation and meteorological data;</li>
    447465<li>SINEX Version 2.10, Solution Independent Exchange format for station position and velocity solutions;</li>
    448466<li>SINEX TRO Draft Version 2.00, Troposphere Solution Independent Exchange format for zenith path delay products;</li>
     
    452470<li>NMEA Version 0813, National Marine Electronics Association format for satellite navigation data;</li>
    453471</ul>
    454 </p>
    455 
    456 <p>
    457 Note that BNC allows to by-pass decoding and conversion algorithms for incoming streams, leaves whatever is received untouched to save it in files or output it through local TCP/IP port.
    458 </p>
    459 
    460 <p><h4>1.2 <a name="introSystem">Supported GNSS</h4></p>
    461 <p>
    462 BNC is permanently completed to finally support all existing GNSS systems throughout all features of the program. The table below shows in detail which GNSS systems are supported so far by particular applications when using the latest BNC version. Application areas named here are:
    463 <ul>
    464 <li>Decoding of RTCM or RTNET streams</li>
     472<p>Note that BNC allows to by-pass decoding and conversion algorithms for incoming streams, leaves whatever is received untouched to save it in files or output it through local TCP/IP port.</p>
     473</div>
     474<div class="section" id="authors">
     475<h3>Authors<a class="headerlink" href="#authors" title="Permalink to this headline">¶</a></h3>
     476<p>The BKG Ntrip Client (BNC) with a Qt Graphical User Interface (GUI) and a Command Line Interface (CLI) has been developed for</p>
     477<blockquote>
     478<div><div class="line-block">
     479<div class="line">Federal Agency for Cartography and Geodesy (BKG)</div>
     480<div class="line">Department of Geodesy, Section Satellite Navigation</div>
     481<div class="line">Frankfurt am Main, Germany</div>
     482</div>
     483</div></blockquote>
     484<p>The software has been written by</p>
     485<blockquote>
     486<div><div class="line-block">
     487<div class="line">Prof. Dr. Leos Mervart</div>
     488<div class="line">Czech Technical University (CTU)</div>
     489<div class="line">Department of Geomatics</div>
     490<div class="line">Prague, Czech Republic</div>
     491</div>
     492</div></blockquote>
     493<p>Prof. Mervart started working on BNC in 2005. His sole responsibility for writing the program code ended February 2015. In March 2015, Dipl.-Ing. Andrea Stürze took over the responsibility for maintaining and further developing BNC&#8217;s source code.</p>
     494</div>
     495<div class="section" id="documentation">
     496<h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">¶</a></h3>
     497<p>BNC provides context-sensitive help ( <em>What&#8217;s This</em> ) related to specific objects. It furthermore comes with the here presented documentation, available as part of the software and as a PDF file. Responsible for offline documentation as well as online documentation at <a class="reference external" href="http://software.rtcm-ntrip.org/export/HEAD/ntrip/trunk/BNC/src/bnchelp.html">http://software.rtcm-ntrip.org/export/HEAD/ntrip/trunk/BNC/src/bnchelp.html</a> and example configurations is Dr. Georg Weber.</p>
     498<p>Note that some figures presented in this documentation may show screen shots from earlier versions of BNC. If so, there is either no relevant change compared to the current appearance of the program or no change at all.</p>
     499</div>
     500<div class="section" id="contact">
     501<h3>Contact<a class="headerlink" href="#contact" title="Permalink to this headline">¶</a></h3>
     502<p>Feel free to send us comments, suggestions or bug reports. Any contribution would be appreciated.</p>
     503<div class="line-block">
     504<div class="line">Federal Agency for Cartography and Geodesy (BKG)</div>
     505<div class="line">Department of Geodesy, Section Satellite Navigation</div>
     506<div class="line">Richard-Strauss-Allee 11</div>
     507<div class="line">60598 Frankfurt am Main, Germany</div>
     508<div class="line">Email: <a class="reference external" href="mailto:igs-ip&#37;&#52;&#48;bkg&#46;bund&#46;de">igs-ip<span>&#64;</span>bkg<span>&#46;</span>bund<span>&#46;</span>de</a></div>
     509</div>
     510</div>
     511<div class="section" id="acknowledgements">
     512<h3>Acknowledgements<a class="headerlink" href="#acknowledgements" title="Permalink to this headline">¶</a></h3>
     513<ul class="simple">
     514<li>Oliver Montenbruck, German Space Operations Center, DLR, Oberpfaffenhofen, Germany published a RTCM Version 2 decoder unter GNU GPL which has been integrated in BNC.</li>
     515<li>Thomas Yan, Australian NSW Land and Property Information, proofread earlier versions of BNC&#8217;s Help Contents. Up to Version 2.11 he also provides builds of BNC for Mac OS X systems.</li>
     516<li>Scott Glazier, OmniSTAR Australia, has been helpful in finding BNC bugs in version 1.5.</li>
     517<li>James Perlt, BKG, helped fixing bugs and redesigned BNC&#8217;s main window in version 1.5.</li>
     518<li>André Hauschild, German Space Operations Center, DLR, revised the RTCM Version 2 decoder.</li>
     519<li>Zdenek Lukes, Czech Technical University Prague, Department of Geodesy, extended the RTCM Version 2 decoder to handle message types 3, 20, 21, and 22 and added the loss of lock indicator.</li>
     520<li>Jan Dousa, Geodetic Observatory Pecny, Czech Republic, helped with fixing bugs in version 2.5.</li>
     521<li>Denis Laurichesse, Centre National d&#8217;&#8216;Etudes Spatiales (CNES), suggested synchronizing observations and clock corrections to reduce high frequency noise in PPP solutions.</li>
     522<li>Lennard Huisman, Kadaster Netherlands, and Rolf Dach, Astronomical Institute University of Bern, assisted in handling satellite clocks in transformations from ITRF to regional reference frames.</li>
     523</ul>
     524</div>
     525<div class="section" id="looking-back">
     526<h3>Looking Back<a class="headerlink" href="#looking-back" title="Permalink to this headline">¶</a></h3>
     527<p>A basic function of BNC is streaming GNSS data over the open Internet using the Ntrip transport protocol. Employing IP streaming for satellite positioning goes back to the beginning of our century. Wolfgang Rupprecht has been the first person who developed TCP/IP server software under the acronym of DGPS-IP <a class="reference internal" href="bnchelp.html#rupprecht2000a" id="id1">[1]</a> and published it under GNU General Public License (GPL). While connecting marine beacon receivers to PCs with permanent access to the Internet he transmitted DGPS corrections in an RTCM format to support Differential GPS positioning over North America. With approximately 200 bits/sec the bandwidth requirement for disseminating beacon data was comparatively small. Each stream was transmitted over a unique combination of IP address and port. Websites informed about existing streams and corresponding receiver positions.</p>
     528<p>To cope with an increasing number of transmitting GNSS reference stations, the Federal Agency for Cartography and Geodesy (BKG) together with the Informatik Centrum Dortmund (ICD) in Germany developed a streaming protocol for satellite navigation data called &#8216;Networked Transport of RTCM via Internet Protocol&#8217; (Ntrip). The protocol was built on top of the HTTP standard and included the provision of meta data describing the stream content. Any stream could now be globally transmitted over just one IP port: HTTP port 80. Stream availability and content details became part of the transport protocol. The concept was first published in 2003 <a class="reference internal" href="bnchelp.html#weber2004a" id="id2">[2]</a>, <a class="reference internal" href="bnchelp.html#weber2005a" id="id3">[3]</a> and was based on three software components, namely an NtripServer pushing data from a reference station to an NtripCaster and an NtripClient pulling data from the stream splitting caster to support a rover receiver. (Note that from a socket-programmers perspective NtripServer and NtripClient both act as clients; only the NtripCaster operates as socket-server.) Ntrip could essentially benefit from Internet Radio developments. It was the ICECAST multimedia server, which provided the bases for BKG&#8217;s &#8216;Professional Ntrip Broadcaster&#8217; with software published first in 2003 and of course again as Open Source under GPL.</p>
     529<p>For BKG as a governmental agency, making Ntrip an Open Industry Standard has been an objective from the very beginning. The &#8216;Radio Technical Commission for Maritime Services&#8217; (RTCM) accepted &#8216;Ntrip Version 1&#8217; in 2004 as &#8216;RTCM Recommended Standard&#8217; <a class="reference internal" href="bnchelp.html#weber2005b" id="id4">[4]</a>. Nowadays there is almost no geodetic GNSS receiver which does not come with integrated NtripClient and NtripServer functionality as part of the firmware. Hundreds of NtripCaster implementations are operated world-wide for highly accurate satellite navigation through RTK networks. Thousands of reference stations upload observations via NtripServer to central computing facilities for any kind of NtripClient application. In 2011 &#8216;Ntrip Version 2&#8217; was released <a class="reference internal" href="bnchelp.html#rtcm-sc104-2011a" id="id5">[5]</a> which cleared and fixed some design problems and HTTP protocol violations. It also supports TCP/IP via SSL and adds optional communication over RTSP/RTP and UDP.</p>
     530<p>With the advent of Ntrip as an open streaming standard, BKG&#8217;s interest turned towards taking advantage from free real-time access to GNSS observations. International Associations such as the IAG Reference Frame Sub Commissions for Africa (AFREF), Asia &amp; Pacific (APREF), Europe (EUREF), North America (NAREF) Latin America &amp; Caribbean (SIRGAS), and the International GNSS Service (IGS) maintain continental or even global GNSS networks with the majority of modern receivers supporting Ntrip stream upload. Through operating BKG&#8217;s NtripCaster software, these networks became extremely valuable sources of real-time GNSS information. In 2005, this was the starting point for developing the &#8216;BKG Ntrip Client&#8217; (BNC) as a multi-stream Open Source NtripClient that allows pulling hundreds of streams simultaneously from any number of NtripCaster installations world-wide. Decoding incoming RTCM streams and output observations epoch by epoch via IP port to feed a real-time GNSS network engine became BNC&#8217;s first and foremost ability <a class="reference internal" href="bnchelp.html#weber2009a" id="id6">[6]</a>. Converting decoded streams to short high-rate RINEX files to assist near real-time applications became a welcome by-product right from the start of this development.</p>
     531<p>Adding real-time Precise Point Positioning (PPP) support to BNC began in 2010 as an important completion in view of developing an Open RTCM Standard for that. According to the State Space Representation (SSR) model, new Version 3 messages are proposed to provide e.g. satellite orbit and clock corrections and ionospheric corrections as well as biases for code and phase data. The ultimate goal for SSR standardization is to reach centimeter level accuracy within seconds as an alternative to Network RTK methods such as VRS, FKP, and MAC. Because of interoperability aspects, an Open Standard in this area is of particular interest for clients. Regarding stand-alone PPP in BNC, it is worth mentioning that the program is not and can never be in competition with a receiver manufacturer&#8217;s proprietary solution. Only software or services that are part of a receiver firmware could have the potential of becoming a thread for commercial interests. However, implementing or not implementing an Open PPP approach in a firmware is and will always remain a manufacturer&#8217;s decision.</p>
     532<p>Implementing some post processing capability is essential for debugging real-time software in case of problems. So certain real-time options in BNC were complemented to work offline through reading data from files. Moreover, beginning in 2012, the software was extended to support Galileo, BeiDou, and QZSS besides GPS and GLONASS. With that, the Open Source tool BNC could be used for RINEX Version 3 file editing, concatenation and quality checks, a post processing functionality demanded by the IGS Multi-GNSS Experiment and not really covered at that time by UNAVCO&#8217;s famous TEQC program with its limitation on GPS.</p>
     533<p>Over the years, the BNC Subversion (SVN) software archive received over seven thousand commits made by 11 contributors representing about one hundred thirty thousand lines of code. The well-established, mature codebase is mostly written in C++ language. Its publication under GNU GPL is thought to be well-suited for test, validation and demonstration of new approaches in precise real-time satellite navigation when IP streaming is involved. Commissioned by a German governmental agency, the overall intention has been to push the development of RTCM Recommended Standards to the benefit of IAG institutions and services such as IGS and the interested public in general.</p>
     534<p>In February 2014 the overall responsibility at BKG for the concept and realization of BNC was handed over from Georg Weber to Axel R{&#8220;u}lke. He is in charge now for guiding the application and further evolution of the software in view of appearing new satellite navigation systems and services.</p>
     535</div>
     536</div>
     537<span id="document-chapter2"></span><div class="section" id="bnc-overview">
     538<span id="index-0"></span><h2>BNC Overview<a class="headerlink" href="#bnc-overview" title="Permalink to this headline">¶</a></h2>
     539<div class="section" id="supported-gnss-and-applications">
     540<span id="index-1"></span><h3>Supported GNSS and applications<a class="headerlink" href="#supported-gnss-and-applications" title="Permalink to this headline">¶</a></h3>
     541<p>BNC is permanently completed to finally support all existing GNSS systems throughout all features of the program. <a class="reference internal" href="#tab-bnc-rtcm"><span class="std std-numref">Table 1</span></a> shows in detail which GNSS systems are supported so far by particular applications when using the latest BNC version. Application areas named here are:</p>
     542<ul class="simple">
     543<li>Decoding of RTCM or RTNET <a class="footnote-reference" href="#f-rtnet" id="id1">[1]</a> streams</li>
    465544<li>RINEX and SP3 file input and output</li>
    466545<li>Encoding of SSR and ephemeris messages</li>
     
    469548<li>Combining/merging SSR or ephemeris messages from various real-time sources</li>
    470549</ul>
    471 The table indicates if a message implementation in BNC could so far only be based on a 'RTCM Proposal'.
    472 </p>
    473 <p><u>Table 1:</u> Status of RTCM Version 3 message implementations in BNC supporting various GNSS systems</p>
    474 <p></p>
    475 <table border="1" rules="rows" frame="box" bgcolor="#FFF5EE" style="font-size:13">
    476 
    477 <tr align="center"><td><b>Message<br>Type #</b></td> <td><b>Description</b></td> <td><b>GNSS<br>System</b></td> <td><b>RTCM<br>Proposal&nbsp;</b></td> <td><b>Decoding&nbsp;</b></td> <td><b>&nbsp;RINEX/&nbsp;<br>&nbsp;SP3</b></td> <td><b>Encoding&nbsp;</b></td> <td><b>Upload&nbsp;</b></td> <td><b>&nbsp;PPP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></td> <td><b>Combin.&nbsp;</b></td> </tr>
    478 
    479 <tr align="center"> <td><b><br>General</b></td> <td></td>             <td></td>              <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    480 <tr align="center"> <td>1005,1006</td> <td>Station</td>               <td> </td>             <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    481 <tr align="center"> <td>1007,1008</td> <td>Antenna</td>               <td> </td>             <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    482 <tr align="center"> <td>1033</td>      <td>Receiver, Antenna</td>     <td> </td>             <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    483 <tr align="center"> <td>1013</td>      <td>System Parameters</td>     <td> </td>             <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    484 
    485 <tr align="center"> <td><b><br>Navigation</b></td> <td></td>          <td></td>              <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    486 <tr align="center"> <td>1019</td> <td>Ephemeris</td>                  <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    487 <tr align="center"> <td>1020</td> <td>Ephemeris</td>                  <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    488 <tr align="center"> <td>1045</td> <td>Ephemeris</td>                  <td>Galileo F/Nav</td> <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    489 <tr align="center"> <td>1046</td> <td>Ephemeris</td>                  <td>Galileo I/Nav</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    490 <tr align="center"> <td>1043</td> <td>Ephemeris</td>                  <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    491 <tr align="center"> <td>1044</td> <td>Ephemeris</td>                  <td>QZSS</td>          <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    492 <tr align="center"> <td>63</td>   <td>Ephemeris</td>                  <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    493 
    494 <tr align="center"> <td><b><br>Observation</b></td> <td></td>         <td></td>              <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    495 <tr align="center"> <td>1001-4</td>  <td>Conventional Messages</td>   <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    496 <tr align="center"> <td>1009-12</td> <td>Conventional Messages</td>   <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    497 
    498 <tr align="center"> <td><b><br>Observation</b></td> <td></td>         <td></td>              <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    499 <tr align="center"> <td>1071-77</td> <td>Multiple Signal Message</td> <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    500 <tr align="center"> <td>1081-87</td> <td>Multiple Signal Message</td> <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    501 <tr align="center"> <td>1091-97</td> <td>Multiple Signal Message</td> <td>Galileo</td>       <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    502 <tr align="center"> <td>1101-07</td> <td>Multiple Signal Message</td> <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    503 <tr align="center"> <td>1111-17</td> <td>Multiple Signal Message</td> <td>QZSS</td>          <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    504 <tr align="center"> <td>1121-27</td> <td>Multiple Signal Message</td> <td>BDS</td>           <td> </td> <td>x</td> <td>x</td> <td> </td> <td> </td> <td>x</td> <td> </td> </tr>
    505 
    506 <tr align="center"> <td><b><br>SSR I</b></td> <td></td>               <td></td>              <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    507 <tr align="center"> <td>1057</td> <td>Orbit Corrections</td>          <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    508 <tr align="center"> <td>1063</td> <td>Orbit Corrections</td>          <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    509 <tr align="center"> <td>1240</td> <td>Orbit Corrections</td>          <td>Galileo</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    510 <tr align="center"> <td>1246</td> <td>Orbit Corrections</td>          <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    511 <tr align="center"> <td>1252</td> <td>Orbit Corrections</td>          <td>QZSS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    512 <tr align="center"> <td>1258</td> <td>Orbit Corrections</td>          <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    513 
    514 <tr align="center"> <td>1058</td> <td>Clock Corrections</td>          <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    515 <tr align="center"> <td>1064</td> <td>Clock Corrections</td>          <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    516 <tr align="center"> <td>1241</td> <td>Clock Corrections</td>          <td>Galileo</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    517 <tr align="center"> <td>1247</td> <td>Clock Corrections</td>          <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    518 <tr align="center"> <td>1253</td> <td>Clock Corrections</td>          <td>QZSS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    519 <tr align="center"> <td>1259</td> <td>Clock Corrections</td>          <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    520 
    521 <tr align="center"> <td>1059</td> <td>Code Biases</td>                <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    522 <tr align="center"> <td>1065</td> <td>Code Biases</td>                <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    523 <tr align="center"> <td>1242</td> <td>Code Biases</td>                <td>Galileo</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    524 <tr align="center"> <td>1248</td> <td>Code Biases</td>                <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    525 <tr align="center"> <td>1254</td> <td>Code Biases</td>                <td>QZSS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    526 <tr align="center"> <td>1260</td> <td>Code Biases</td>                <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    527 
    528 <tr align="center"> <td>1061, 1062</td> <td>User Range Accuracy, HR&nbsp;</td> <td>GPS</td>        <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    529 <tr align="center"> <td>1067, 1068</td> <td>User Range Accuracy, HR&nbsp;</td> <td>GLONASS</td>    <td> </td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    530 <tr align="center"> <td>1244, 1245</td> <td>User Range Accuracy, HR&nbsp;</td> <td>Galileo</td>    <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    531 <tr align="center"> <td>1250, 1251</td> <td>User Range Accuracy, HR&nbsp;</td> <td>SBAS</td>       <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    532 <tr align="center"> <td>1256, 1257</td> <td>User Range Accuracy, HR&nbsp;</td> <td>QZSS</td>       <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    533 <tr align="center"> <td>1262, 1263</td> <td>User Range Accuracy, HR&nbsp;</td> <td>BDS</td>        <td>x</td> <td>x</td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    534 
    535 <tr align="center"> <td>1060</td> <td>Comb. Orbits & Clocks</td>      <td>GPS</td>           <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    536 <tr align="center"> <td>1066</td> <td>Comb. Orbits & Clocks</td>      <td>GLONASS</td>       <td> </td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> </tr>
    537 <tr align="center"> <td>1243</td> <td>Comb. Orbits & Clocks</td>      <td>Galileo</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    538 <tr align="center"> <td>1249</td> <td>Comb. Orbits & Clocks</td>      <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    539 <tr align="center"> <td>1255</td> <td>Comb. Orbits & Clocks</td>      <td>QZSS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    540 <tr align="center"> <td>1261</td> <td>Comb. Orbits & Clocks</td>      <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> </tr>
    541 
    542 <tr align="center"> <td><b><br>SSR II</b></td> <td></td>               <td></td>             <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr>
    543 <tr align="center"> <td>1264</td> <td>VTEC</td>                       <td>GNSS </td>         <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    544 <tr align="center"> <td>1265</td> <td>Phase Biases</td>               <td>GPS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    545 <tr align="center"> <td>1266</td> <td>Phase Biases</td>               <td>GLONASS</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    546 <tr align="center"> <td>1267</td> <td>Phase Biases</td>               <td>Galileo</td>       <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    547 <tr align="center"> <td>1268</td> <td>Phase Biases</td>               <td>SBAS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    548 <tr align="center"> <td>1269</td> <td>Phase Biases</td>               <td>QZSS</td>          <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    549 <tr align="center"> <td>1270</td> <td>Phase Biases</td>               <td>BDS</td>           <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td>x</td> <td> </td> <td> </td> </tr>
    550 
     550<p>It is indicated when a message implementation in BNC could so far only be based on a &#8216;RTCM Proposal&#8217;.</p>
     551<table border="1" class="docutils" id="id2">
     552<span id="tab-bnc-rtcm"></span><caption><span class="caption-number">Table 1 </span><span class="caption-text">Status of RTCM Version 3 message implementations in BNC supporting various GNSS systems.</span><a class="headerlink" href="#id2" title="Permalink to this table">¶</a></caption>
     553<colgroup>
     554<col width="11%" />
     555<col width="17%" />
     556<col width="10%" />
     557<col width="9%" />
     558<col width="9%" />
     559<col width="10%" />
     560<col width="9%" />
     561<col width="9%" />
     562<col width="9%" />
     563<col width="9%" />
     564</colgroup>
     565<thead valign="bottom">
     566<tr class="row-odd"><th class="head"><strong>Message #</strong></th>
     567<th class="head"><strong>Description</strong></th>
     568<th class="head"><strong>GNSS</strong></th>
     569<th class="head"><strong>RTCM</strong>
     570<strong>Proposal</strong></th>
     571<th class="head"><strong>Decoding</strong></th>
     572<th class="head"><strong>RINEX/SP3</strong></th>
     573<th class="head"><strong>Encoding</strong></th>
     574<th class="head"><strong>Upload</strong></th>
     575<th class="head"><strong>PPP</strong></th>
     576<th class="head"><strong>Combin.</strong></th>
     577</tr>
     578</thead>
     579<tbody valign="top">
     580<tr class="row-even"><td colspan="10"><strong>General</strong></td>
     581</tr>
     582<tr class="row-odd"><td>1005,1006</td>
     583<td>Station</td>
     584<td>&nbsp;</td>
     585<td>&nbsp;</td>
     586<td>x</td>
     587<td>&nbsp;</td>
     588<td>&nbsp;</td>
     589<td>&nbsp;</td>
     590<td>&nbsp;</td>
     591<td>&nbsp;</td>
     592</tr>
     593<tr class="row-even"><td>1007,1008</td>
     594<td>Antenna</td>
     595<td>&nbsp;</td>
     596<td>&nbsp;</td>
     597<td>x</td>
     598<td>&nbsp;</td>
     599<td>&nbsp;</td>
     600<td>&nbsp;</td>
     601<td>&nbsp;</td>
     602<td>&nbsp;</td>
     603</tr>
     604<tr class="row-odd"><td>1033</td>
     605<td>Receiver, Antenna</td>
     606<td>&nbsp;</td>
     607<td>&nbsp;</td>
     608<td>x</td>
     609<td>&nbsp;</td>
     610<td>&nbsp;</td>
     611<td>&nbsp;</td>
     612<td>&nbsp;</td>
     613<td>&nbsp;</td>
     614</tr>
     615<tr class="row-even"><td>1013</td>
     616<td>System Parameters</td>
     617<td>&nbsp;</td>
     618<td>&nbsp;</td>
     619<td>x</td>
     620<td>&nbsp;</td>
     621<td>&nbsp;</td>
     622<td>&nbsp;</td>
     623<td>&nbsp;</td>
     624<td>&nbsp;</td>
     625</tr>
     626<tr class="row-odd"><td colspan="10"><strong>Navigation</strong></td>
     627</tr>
     628<tr class="row-even"><td>1019</td>
     629<td>Ephemeris</td>
     630<td>GPS</td>
     631<td>&nbsp;</td>
     632<td>x</td>
     633<td>x</td>
     634<td>x</td>
     635<td>x</td>
     636<td>x</td>
     637<td>x</td>
     638</tr>
     639<tr class="row-odd"><td>1020</td>
     640<td>Ephemeris</td>
     641<td>GLONASS</td>
     642<td>&nbsp;</td>
     643<td>x</td>
     644<td>x</td>
     645<td>x</td>
     646<td>x</td>
     647<td>x</td>
     648<td>x</td>
     649</tr>
     650<tr class="row-even"><td>1045</td>
     651<td>Ephemeris</td>
     652<td>Galileo F/Nav</td>
     653<td>&nbsp;</td>
     654<td>x</td>
     655<td>x</td>
     656<td>x</td>
     657<td>x</td>
     658<td>&nbsp;</td>
     659<td>&nbsp;</td>
     660</tr>
     661<tr class="row-odd"><td>1046</td>
     662<td>Ephemeris</td>
     663<td>Galileo I/Nav</td>
     664<td>&nbsp;</td>
     665<td>x</td>
     666<td>x</td>
     667<td>x</td>
     668<td>x</td>
     669<td>x</td>
     670<td>&nbsp;</td>
     671</tr>
     672<tr class="row-even"><td>1043</td>
     673<td>Ephemeris</td>
     674<td>SBAS</td>
     675<td>x</td>
     676<td>x</td>
     677<td>x</td>
     678<td>x</td>
     679<td>x</td>
     680<td>&nbsp;</td>
     681<td>&nbsp;</td>
     682</tr>
     683<tr class="row-odd"><td>1044</td>
     684<td>Ephemeris</td>
     685<td>QZSS</td>
     686<td>&nbsp;</td>
     687<td>x</td>
     688<td>x</td>
     689<td>x</td>
     690<td>x</td>
     691<td>&nbsp;</td>
     692<td>&nbsp;</td>
     693</tr>
     694<tr class="row-even"><td>63</td>
     695<td>Ephemeris</td>
     696<td>BDS</td>
     697<td>x</td>
     698<td>x</td>
     699<td>x</td>
     700<td>x</td>
     701<td>x</td>
     702<td>x</td>
     703<td>&nbsp;</td>
     704</tr>
     705<tr class="row-odd"><td colspan="10"><strong>Observation</strong></td>
     706</tr>
     707<tr class="row-even"><td>1001-4</td>
     708<td>Conventional Messages</td>
     709<td>GPS</td>
     710<td>&nbsp;</td>
     711<td>x</td>
     712<td>x</td>
     713<td>&nbsp;</td>
     714<td>&nbsp;</td>
     715<td>x</td>
     716<td>&nbsp;</td>
     717</tr>
     718<tr class="row-odd"><td>1009-12</td>
     719<td>Conventional Messages</td>
     720<td>GLONASS</td>
     721<td>&nbsp;</td>
     722<td>x</td>
     723<td>x</td>
     724<td>&nbsp;</td>
     725<td>&nbsp;</td>
     726<td>x</td>
     727<td>&nbsp;</td>
     728</tr>
     729<tr class="row-even"><td colspan="10"><strong>Observation</strong></td>
     730</tr>
     731<tr class="row-odd"><td>1071-77</td>
     732<td>Multiple Signal Message</td>
     733<td>GPS</td>
     734<td>&nbsp;</td>
     735<td>x</td>
     736<td>x</td>
     737<td>&nbsp;</td>
     738<td>&nbsp;</td>
     739<td>x</td>
     740<td>&nbsp;</td>
     741</tr>
     742<tr class="row-even"><td>1081-87</td>
     743<td>Multiple Signal Message</td>
     744<td>GLONASS</td>
     745<td>&nbsp;</td>
     746<td>x</td>
     747<td>x</td>
     748<td>&nbsp;</td>
     749<td>&nbsp;</td>
     750<td>x</td>
     751<td>&nbsp;</td>
     752</tr>
     753<tr class="row-odd"><td>1091-97</td>
     754<td>Multiple Signal Message</td>
     755<td>Galileo</td>
     756<td>&nbsp;</td>
     757<td>x</td>
     758<td>x</td>
     759<td>&nbsp;</td>
     760<td>&nbsp;</td>
     761<td>x</td>
     762<td>&nbsp;</td>
     763</tr>
     764<tr class="row-even"><td>1101-07</td>
     765<td>Multiple Signal Message</td>
     766<td>SBAS</td>
     767<td>x</td>
     768<td>x</td>
     769<td>x</td>
     770<td>&nbsp;</td>
     771<td>&nbsp;</td>
     772<td>&nbsp;</td>
     773<td>&nbsp;</td>
     774</tr>
     775<tr class="row-odd"><td>1111-17</td>
     776<td>Multiple Signal Message</td>
     777<td>QZSS</td>
     778<td>&nbsp;</td>
     779<td>x</td>
     780<td>x</td>
     781<td>&nbsp;</td>
     782<td>&nbsp;</td>
     783<td>&nbsp;</td>
     784<td>&nbsp;</td>
     785</tr>
     786<tr class="row-even"><td>1121-27</td>
     787<td>Multiple Signal Message</td>
     788<td>BDS</td>
     789<td>&nbsp;</td>
     790<td>x</td>
     791<td>x</td>
     792<td>&nbsp;</td>
     793<td>&nbsp;</td>
     794<td>x</td>
     795<td>&nbsp;</td>
     796</tr>
     797<tr class="row-odd"><td colspan="10"><strong>SSR I</strong></td>
     798</tr>
     799<tr class="row-even"><td>1057</td>
     800<td>Orbit Corrections</td>
     801<td>GPS</td>
     802<td>&nbsp;</td>
     803<td>x</td>
     804<td>x</td>
     805<td>x</td>
     806<td>x</td>
     807<td>x</td>
     808<td>x</td>
     809</tr>
     810<tr class="row-odd"><td>1063</td>
     811<td>Orbit Corrections</td>
     812<td>GLONASS</td>
     813<td>&nbsp;</td>
     814<td>x</td>
     815<td>x</td>
     816<td>x</td>
     817<td>x</td>
     818<td>x</td>
     819<td>x</td>
     820</tr>
     821<tr class="row-even"><td>1240</td>
     822<td>Orbit Corrections</td>
     823<td>Galileo</td>
     824<td>x</td>
     825<td>x</td>
     826<td>x</td>
     827<td>x</td>
     828<td>x</td>
     829<td>x</td>
     830<td>&nbsp;</td>
     831</tr>
     832<tr class="row-odd"><td>1246</td>
     833<td>Orbit Corrections</td>
     834<td>SBAS</td>
     835<td>x</td>
     836<td>x</td>
     837<td>x</td>
     838<td>x</td>
     839<td>x</td>
     840<td>&nbsp;</td>
     841<td>&nbsp;</td>
     842</tr>
     843<tr class="row-even"><td>1252</td>
     844<td>Orbit Corrections</td>
     845<td>QZSS</td>
     846<td>x</td>
     847<td>x</td>
     848<td>x</td>
     849<td>x</td>
     850<td>x</td>
     851<td>&nbsp;</td>
     852<td>&nbsp;</td>
     853</tr>
     854<tr class="row-odd"><td>1258</td>
     855<td>Orbit Corrections</td>
     856<td>BDS</td>
     857<td>x</td>
     858<td>x</td>
     859<td>x</td>
     860<td>x</td>
     861<td>x</td>
     862<td>x</td>
     863<td>&nbsp;</td>
     864</tr>
     865<tr class="row-even"><td>1058</td>
     866<td>Clock Corrections</td>
     867<td>GPS</td>
     868<td>&nbsp;</td>
     869<td>x</td>
     870<td>x</td>
     871<td>x</td>
     872<td>x</td>
     873<td>x</td>
     874<td>x</td>
     875</tr>
     876<tr class="row-odd"><td>1064</td>
     877<td>Clock Corrections</td>
     878<td>GLONASS</td>
     879<td>&nbsp;</td>
     880<td>x</td>
     881<td>x</td>
     882<td>x</td>
     883<td>x</td>
     884<td>x</td>
     885<td>x</td>
     886</tr>
     887<tr class="row-even"><td>1241</td>
     888<td>Clock Corrections</td>
     889<td>Galileo</td>
     890<td>x</td>
     891<td>x</td>
     892<td>x</td>
     893<td>x</td>
     894<td>x</td>
     895<td>x</td>
     896<td>&nbsp;</td>
     897</tr>
     898<tr class="row-odd"><td>1247</td>
     899<td>Clock Corrections</td>
     900<td>SBAS</td>
     901<td>x</td>
     902<td>x</td>
     903<td>x</td>
     904<td>x</td>
     905<td>x</td>
     906<td>&nbsp;</td>
     907<td>&nbsp;</td>
     908</tr>
     909<tr class="row-even"><td>1253</td>
     910<td>Clock Corrections</td>
     911<td>QZSS</td>
     912<td>x</td>
     913<td>x</td>
     914<td>x</td>
     915<td>x</td>
     916<td>x</td>
     917<td>&nbsp;</td>
     918<td>&nbsp;</td>
     919</tr>
     920<tr class="row-odd"><td>1259</td>
     921<td>Clock Corrections</td>
     922<td>BDS</td>
     923<td>x</td>
     924<td>x</td>
     925<td>x</td>
     926<td>x</td>
     927<td>x</td>
     928<td>x</td>
     929<td>&nbsp;</td>
     930</tr>
     931<tr class="row-even"><td>1059</td>
     932<td>Code Biases</td>
     933<td>GPS</td>
     934<td>&nbsp;</td>
     935<td>x</td>
     936<td>x</td>
     937<td>x</td>
     938<td>x</td>
     939<td>x</td>
     940<td>&nbsp;</td>
     941</tr>
     942<tr class="row-odd"><td>1065</td>
     943<td>Code Biases</td>
     944<td>GLONASS</td>
     945<td>&nbsp;</td>
     946<td>x</td>
     947<td>x</td>
     948<td>x</td>
     949<td>x</td>
     950<td>x</td>
     951<td>&nbsp;</td>
     952</tr>
     953<tr class="row-even"><td>1242</td>
     954<td>Code Biases</td>
     955<td>Galileo</td>
     956<td>x</td>
     957<td>x</td>
     958<td>x</td>
     959<td>x</td>
     960<td>x</td>
     961<td>x</td>
     962<td>&nbsp;</td>
     963</tr>
     964<tr class="row-odd"><td>1248</td>
     965<td>Code Biases</td>
     966<td>SBAS</td>
     967<td>x</td>
     968<td>x</td>
     969<td>x</td>
     970<td>x</td>
     971<td>x</td>
     972<td>&nbsp;</td>
     973<td>&nbsp;</td>
     974</tr>
     975<tr class="row-even"><td>1254</td>
     976<td>Code Biases</td>
     977<td>QZSS</td>
     978<td>x</td>
     979<td>x</td>
     980<td>x</td>
     981<td>x</td>
     982<td>x</td>
     983<td>&nbsp;</td>
     984<td>&nbsp;</td>
     985</tr>
     986<tr class="row-odd"><td>1260</td>
     987<td>Code Biases</td>
     988<td>BDS</td>
     989<td>x</td>
     990<td>x</td>
     991<td>x</td>
     992<td>x</td>
     993<td>x</td>
     994<td>x</td>
     995<td>&nbsp;</td>
     996</tr>
     997<tr class="row-even"><td>1061, 1062</td>
     998<td>User Range Accuracy, HR</td>
     999<td>GPS</td>
     1000<td>&nbsp;</td>
     1001<td>x</td>
     1002<td>&nbsp;</td>
     1003<td>&nbsp;</td>
     1004<td>&nbsp;</td>
     1005<td>&nbsp;</td>
     1006<td>&nbsp;</td>
     1007</tr>
     1008<tr class="row-odd"><td>1067, 1068</td>
     1009<td>User Range Accuracy, HR</td>
     1010<td>GLONASS</td>
     1011<td>&nbsp;</td>
     1012<td>x</td>
     1013<td>&nbsp;</td>
     1014<td>&nbsp;</td>
     1015<td>&nbsp;</td>
     1016<td>&nbsp;</td>
     1017<td>&nbsp;</td>
     1018</tr>
     1019<tr class="row-even"><td>1244, 1245</td>
     1020<td>User Range Accuracy, HR</td>
     1021<td>Galileo</td>
     1022<td>x</td>
     1023<td>x</td>
     1024<td>&nbsp;</td>
     1025<td>&nbsp;</td>
     1026<td>&nbsp;</td>
     1027<td>&nbsp;</td>
     1028<td>&nbsp;</td>
     1029</tr>
     1030<tr class="row-odd"><td>1250, 1251</td>
     1031<td>User Range Accuracy, HR</td>
     1032<td>SBAS</td>
     1033<td>x</td>
     1034<td>x</td>
     1035<td>&nbsp;</td>
     1036<td>&nbsp;</td>
     1037<td>&nbsp;</td>
     1038<td>&nbsp;</td>
     1039<td>&nbsp;</td>
     1040</tr>
     1041<tr class="row-even"><td>1256, 1257</td>
     1042<td>User Range Accuracy, HR</td>
     1043<td>QZSS</td>
     1044<td>x</td>
     1045<td>x</td>
     1046<td>&nbsp;</td>
     1047<td>&nbsp;</td>
     1048<td>&nbsp;</td>
     1049<td>&nbsp;</td>
     1050<td>&nbsp;</td>
     1051</tr>
     1052<tr class="row-odd"><td>1262, 1263</td>
     1053<td>User Range Accuracy, HR</td>
     1054<td>BDS</td>
     1055<td>x</td>
     1056<td>x</td>
     1057<td>&nbsp;</td>
     1058<td>&nbsp;</td>
     1059<td>&nbsp;</td>
     1060<td>&nbsp;</td>
     1061<td>&nbsp;</td>
     1062</tr>
     1063<tr class="row-even"><td>1060</td>
     1064<td>Comb. Orbits &amp; Clocks</td>
     1065<td>GPS</td>
     1066<td>&nbsp;</td>
     1067<td>x</td>
     1068<td>x</td>
     1069<td>x</td>
     1070<td>x</td>
     1071<td>x</td>
     1072<td>x</td>
     1073</tr>
     1074<tr class="row-odd"><td>1066</td>
     1075<td>Comb. Orbits &amp; Clocks</td>
     1076<td>GLONASS</td>
     1077<td>&nbsp;</td>
     1078<td>x</td>
     1079<td>x</td>
     1080<td>x</td>
     1081<td>x</td>
     1082<td>x</td>
     1083<td>x</td>
     1084</tr>
     1085<tr class="row-even"><td>1243</td>
     1086<td>Comb. Orbits &amp; Clocks</td>
     1087<td>Galileo</td>
     1088<td>x</td>
     1089<td>x</td>
     1090<td>x</td>
     1091<td>x</td>
     1092<td>x</td>
     1093<td>x</td>
     1094<td>&nbsp;</td>
     1095</tr>
     1096<tr class="row-odd"><td>1249</td>
     1097<td>Comb. Orbits &amp; Clocks</td>
     1098<td>SBAS</td>
     1099<td>x</td>
     1100<td>x</td>
     1101<td>x</td>
     1102<td>x</td>
     1103<td>x</td>
     1104<td>&nbsp;</td>
     1105<td>&nbsp;</td>
     1106</tr>
     1107<tr class="row-even"><td>1255</td>
     1108<td>Comb. Orbits &amp; Clocks</td>
     1109<td>QZSS</td>
     1110<td>x</td>
     1111<td>x</td>
     1112<td>x</td>
     1113<td>x</td>
     1114<td>x</td>
     1115<td>&nbsp;</td>
     1116<td>&nbsp;</td>
     1117</tr>
     1118<tr class="row-odd"><td>1261</td>
     1119<td>Comb. Orbits &amp; Clocks</td>
     1120<td>BDS</td>
     1121<td>x</td>
     1122<td>x</td>
     1123<td>x</td>
     1124<td>x</td>
     1125<td>x</td>
     1126<td>x</td>
     1127<td>&nbsp;</td>
     1128</tr>
     1129<tr class="row-even"><td colspan="10"><strong>SSR II</strong></td>
     1130</tr>
     1131<tr class="row-odd"><td>1264</td>
     1132<td>VTEC</td>
     1133<td>GNSS</td>
     1134<td>x</td>
     1135<td>x</td>
     1136<td>x</td>
     1137<td>x</td>
     1138<td>x</td>
     1139<td>&nbsp;</td>
     1140<td>&nbsp;</td>
     1141</tr>
     1142<tr class="row-even"><td>1265</td>
     1143<td>Phase Biases</td>
     1144<td>GPS</td>
     1145<td>x</td>
     1146<td>x</td>
     1147<td>x</td>
     1148<td>x</td>
     1149<td>x</td>
     1150<td>&nbsp;</td>
     1151<td>&nbsp;</td>
     1152</tr>
     1153<tr class="row-odd"><td>1266</td>
     1154<td>Phase Biases</td>
     1155<td>GLONASS</td>
     1156<td>x</td>
     1157<td>x</td>
     1158<td>x</td>
     1159<td>x</td>
     1160<td>x</td>
     1161<td>&nbsp;</td>
     1162<td>&nbsp;</td>
     1163</tr>
     1164<tr class="row-even"><td>1267</td>
     1165<td>Phase Biases</td>
     1166<td>Galileo</td>
     1167<td>x</td>
     1168<td>x</td>
     1169<td>x</td>
     1170<td>x</td>
     1171<td>x</td>
     1172<td>&nbsp;</td>
     1173<td>&nbsp;</td>
     1174</tr>
     1175<tr class="row-odd"><td>1268</td>
     1176<td>Phase Biases</td>
     1177<td>SBAS</td>
     1178<td>x</td>
     1179<td>x</td>
     1180<td>x</td>
     1181<td>x</td>
     1182<td>x</td>
     1183<td>&nbsp;</td>
     1184<td>&nbsp;</td>
     1185</tr>
     1186<tr class="row-even"><td>1269</td>
     1187<td>Phase Biases</td>
     1188<td>QZSS</td>
     1189<td>x</td>
     1190<td>x</td>
     1191<td>x</td>
     1192<td>x</td>
     1193<td>x</td>
     1194<td>&nbsp;</td>
     1195<td>&nbsp;</td>
     1196</tr>
     1197<tr class="row-odd"><td>1270</td>
     1198<td>Phase Biases</td>
     1199<td>BDS</td>
     1200<td>x</td>
     1201<td>x</td>
     1202<td>x</td>
     1203<td>x</td>
     1204<td>x</td>
     1205<td>&nbsp;</td>
     1206<td>&nbsp;</td>
     1207</tr>
     1208</tbody>
    5511209</table>
    552 <br>
    553 
    554 <p><h4>1.3 <a name="introFlow">Data Flow</h4></p>
    555 
    556 <p>
    557 BNC can be used in different contexts with varying data flows. Typical real-time communication follows the Ntrip protocol over TCP/IP (probably via SSL), RTSP/RTP or UDP, plain TCP/IP protocol, or serial communication links. Stream content could be observations, ephemeris, satellite orbit/clock products or NMEA sentences.
    558 </p>
    559 <p>
    560 The first of the following figures shows a flow chart of BNC connected to a GNSS receiver providing observations via serial or TCP communication link for the purpose of Precise Point Positioning. The second figure shows the conversion of RTCM streams to RINEX files. The third figure shows a flow chart of BNC feeding a real-time GNSS engine which estimates precise orbits and clocks. BNC is used in this scenario to encode correctors to RTCM Version 3 and upload them to an Ntrip Broadcaster. The fourth figure shows BNC combining several Broadcast Correction streams to disseminate the combination product while saving results in SP3 and Clock RINEX files.
    561 </p>
    562 <p><img src="IMG/screenshot10.png"/></p>
    563 <p><u>Figure 1:</u> Flowchart, BNC connected to a GNSS rover for Precise Point Positioning</p>
    564 
    565 <p>
    566 </p>
    567 <p><img src="IMG/screenshot01.png"/></p>
    568 <p><u>Figure 2:</u> Flowchart, BNC converting RTCM streams to RINEX batches</p>
    569 
    570 <p>
    571 </p>
    572 <p><img src="IMG/screenshot02.png"/></p>
    573 <p><u>Figure 3:</u> Flowchart, BNC feeding a real-time GNSS engine and uploading encoded Broadcast Corrections</p>
    574 
    575 <p>
    576 </p>
    577 <p><img src="IMG/screenshot19.png"/></p>
    578 <p><u>Figure 4:</u> Flowchart, BNC combining Broadcast Correction streams</p>
    579 
    580 <p><h4>1.4 <a name="introHandling">Handling</h4></p>
    581 <p>
    582 Although BNC is mainly a real-time tool to be operated online, it can be run offline
    583 <ul>
     1210</div>
     1211<div class="section" id="data-flow">
     1212<span id="index-4"></span><h3>Data Flow<a class="headerlink" href="#data-flow" title="Permalink to this headline">¶</a></h3>
     1213<p>BNC can be used in different contexts with varying data flows. Typical real-time communication follows the Ntrip protocol over TCP/IP (probably via SSL), RTSP/RTP or UDP, plain TCP/IP protocol, or serial communication links. Stream content could be observations, ephemeris, satellite orbit/clock products or NMEA sentences.</p>
     1214<p><a class="reference internal" href="#fig-1"><span class="std std-numref">Fig. 1</span></a> shows a flow chart of BNC connected to a GNSS receiver providing observations via serial or TCP communication link for the purpose of Precise Point Positioning. <a class="reference internal" href="#fig-2"><span class="std std-numref">Fig. 2</span></a> shows the conversion of RTCM streams to RINEX files. <a class="reference internal" href="#fig-3"><span class="std std-numref">Fig. 3</span></a> shows a flow chart of BNC feeding a real-time GNSS engine which estimates precise orbits and clocks. BNC is used in this scenario to encode correctors to RTCM Version 3 and upload them to an Ntrip Broadcaster. <a class="reference internal" href="#fig-4"><span class="std std-numref">Fig. 4</span></a> shows BNC combining several Broadcast Correction streams to disseminate the combination product while saving results in SP3 and Clock RINEX files.</p>
     1215<div class="figure" id="id3">
     1216<span id="fig-1"></span><a class="reference internal image-reference" href="_images/fig_1.png"><img alt="_images/fig_1.png" src="_images/fig_1.png" style="width: 649.0px; height: 318.0px;" /></a>
     1217<p class="caption"><span class="caption-number">Fig. 1 </span><span class="caption-text">Flowchart, BNC connected to a GNSS rover for Precise Point Positioning.</span></p>
     1218</div>
     1219<div class="figure" id="id4">
     1220<span id="fig-2"></span><a class="reference internal image-reference" href="_images/fig_2.png"><img alt="_images/fig_2.png" src="_images/fig_2.png" style="width: 651.0px; height: 327.0px;" /></a>
     1221<p class="caption"><span class="caption-number">Fig. 2 </span><span class="caption-text">Flowchart, BNC converting RTCM streams to RINEX batches.</span></p>
     1222</div>
     1223<div class="figure" id="id5">
     1224<span id="fig-3"></span><a class="reference internal image-reference" href="_images/fig_3.png"><img alt="_images/fig_3.png" src="_images/fig_3.png" style="width: 648.0px; height: 345.0px;" /></a>
     1225<p class="caption"><span class="caption-number">Fig. 3 </span><span class="caption-text">Flowchart, BNC feeding a real-time GNSS engine and uploading encoded Broadcast Corrections</span></p>
     1226</div>
     1227<div class="figure" id="id6">
     1228<span id="fig-4"></span><a class="reference internal image-reference" href="_images/fig_4.png"><img alt="_images/fig_4.png" src="_images/fig_4.png" style="width: 650.0px; height: 318.0px;" /></a>
     1229<p class="caption"><span class="caption-number">Fig. 4 </span><span class="caption-text">Flowchart, BNC combining Broadcast Correction streams.</span></p>
     1230</div>
     1231</div>
     1232<div class="section" id="handling">
     1233<span id="index-5"></span><h3>Handling<a class="headerlink" href="#handling" title="Permalink to this headline">¶</a></h3>
     1234<p>Although BNC is mainly a real-time tool to be operated online, it can be run offline</p>
     1235<ul class="simple">
    5841236<li>To simulate real-time observation situations for debugging purposes;</li>
    5851237<li>For post processing purposes.</li>
    5861238</ul>
    587 Furthermore, apart from its regular window mode, BNC can be run as a batch/background job in a 'no window' mode, using processing options from a previously saved configuration or from command line.
    588 </p>
    589 <p>
    590 Unless it runs offline, BNC
    591 </p>
    592 <ul>
     1239<p>Furthermore, apart from its regular window mode, BNC can be run as a batch/background job in a &#8216;no window&#8217; mode, using processing options from a previously saved configuration or from command line.</p>
     1240<p>Unless it runs offline, BNC</p>
     1241<ul class="simple">
    5931242<li>Requires access to the Internet with a minimum of about 2 to 6 kbits/sec per stream depending on the stream format and the number of visible satellites. You need to make sure that the connection can sustain the required bandwidth;</li>
    5941243<li>Requires the clock of the host computer to be properly synchronized;</li>
    5951244<li>Has the capacity to retrieve hundreds of GNSS data streams simultaneously. Please be aware that such usage may incur a heavy load on the Ntrip Broadcaster side depending on the number of streams requested. We recommend limiting the number of streams where possible to avoid unnecessary workload.</li>
    5961245</ul>
    597 </p>
    598 
    599 <p>
    600 The main window of BNC shows a 'Top menu bar' section, a 'Settings' sections with panels to set processing options, a 'Streams' section, a section for 'Log' tabs, and a 'Bottom menu bar' section, see figure below.
    601 </p>
    602 <p><img src="IMG/screenshot09.png"/></p>
    603 <p><u>Figure 5:</u> Sections on BNC's main window</p>
    604 
    605 <p>
    606 Running BNC in interactive mode requires graphics support. This is also
    607 required in batch mode when producing plots. Windows and Mac OS X systems always
    608 support graphics. However, when using BNC in batch mode on Linux systems for
    609 producing plots, you need to make sure that at least a virtual X-Server like
    610 'Xvfb' is installed and the '-display' command line option is used.
    611 </p>
    612 
    613 <p>
    614 The usual handling of BNC is that you first select a number of streams ('Add Stream'). Any stream configured to BNC shows up on the 'Streams' canvas in the middle of BNC's main window. You then go through BNC's various configuration panels to set a combination of input, processing and output options before you start the program ('Start'). Most configuration panels are dedicated to a certain function of BNC. If the first option field on such a configuration panel is empty, the affected functionality is deactivated.
    615 </p>
    616 
    617 <p>
    618 Records of BNC's activities are shown in the 'Log' tab which is part of the 'Log' canvas. The bandwidth consumption per stream, the latency of incoming observations, and a PPP time series for coordinate displacements are also part of that canvas and shown in the 'Throughput', 'Latency' and 'PPP Plot' tabs.
    619 </p>
    620 
    621 <p>
    622 Configuration options are usually first set using BNC's Graphical User Interface (GUI), then saved in a configuration file. For routine operations in batch mode all of BNC's configuration options can be extracted from the configuration file and applied using the program's Command Line Interface (CLI).
    623 </p>
    624 
    625 <p><h4>1.5 <a name="introInst">Installation</h4></p>
    626 <p>
    627 Precompiled builds of BNC are available for MS Windows, Linux, and Mac OS X systems. They can be downloaded for installation from <u>http://igs.bkg.bund.de/ntrip/download</u>. Please ensure that you always use the latest released version of the program.
    628 </p>
    629 <p>
    630 <u>MS Windows Build:</u> A dynamically compiled shared library build for Mircrosoft Windows systems is provided as Microsoft Installer (MSI) file. MSI files are used for installation, storage, and removal of programs. The BNC files are contained in a MSI package, which is used with the program's client-side installer service, an .EXE file, to open and install the program. We used the MinGW Version 4.4.0 compiler to create BNC for Windows. After installation your 'bnc.exe' file shows up e.g. under 'All Programs'.
    631 </p>
    632 
    633 <p>
    634 <u>Linux Build:</u> Static library and shared library builds for BNC are provided for a selection of Linux distributions. Download the ZIP archive for a version which fits to your Linux system, unzip the archive and run the included BNC binary. A static build would be sufficient in case you <u>do not want</u> BNC to plot PPP results with Google Map (GM) or OpenStreetMap (OSM) maps in the background. GM/OSM usage requires BNC builds from shared libraries.
    635 </p>
    636 
    637 <p>
    638 <u>Mac OS X Build:</u>
    639 A shared library 'Disk iMaGe' (DMG) file is provided for BNC on OS X systems; it also comes in a ZIP archive. The DMG file format is used in the Mac for distributing software. Mac install packages appear as a virtual disk drive. After download, when the DMG file icon is double clicked, the virtual drive is 'mounted' on the desktop. Install BNC by dragging the 'bnc.app' icon to your '/Applications' folder. To start BNC, double click on '/Applications/bnc.app'. You could also start BNC via Command Line Interface (CLI) using command '/Applications/bnc.app/Contents/MacOS/bnc'.
    640 </p>
    641 
    642 <p><h4>1.5.1 <a name="introCompile">Compilation</h4></p>
    643 
    644 <p>
    645 BNC has been written as Open Source and published under GNU General Public License (GPL). The latest source code can be checked out from Subversion repository <u>http://software.rtcm-ntrip.org/svn/trunk/BNC</u>. A ZIP archive available from <u>http://igs.bkg.bund.de/ntrip/download</u> provides the source code for BNC Version 2.12.0, developed using Qt Version 4.8.5.
    646 </p>
    647 <p>The following describes how you can produce your own builds of BNC on MS Windows, Linux, and Mac systems. It is likely that BNC can also be compiled on other systems where a GNU compiler and Qt Version 4.8.5 or any later version is installed.
    648 </p>
    649 
    650 <p><b>Static versus Shared Libraries</b><br>
    651 You can produce static or shared library builds of BNC. <u>Static</u> builds are sufficient in case you do not want BNC to produce track maps on top of Google Map (GM) or OpenStreetMap (OSM). GM/OSM usage would require the QtWebKit library which can only be part of BNC builds from <u>shared</u> Qt libraries. Hence, having a shared library Qt installation available is a precondition for producing a shared library build of BNC.
    652 </p>
    653 
    654 <p><b>MS Windows Systems, Shared Library</b><br>
    655 This explains how to install a shared Qt 4.8.5 library on MS Windows systems to then create your own shared build of BNC.
    656 </p>
    657 
    658 <ol type=f>
    659 <li>Supposing that 'Secure Socket Layer (SSL)' is not available on you system, you should install OpenSSL libraries in C:\OpenSSL-Win32. They are available e.g. from <u>http://igs.bkg.bund.de/root_ftp/NTRIP/software/Win32OpenSSL-1_0_1e.exe</u>. See <u>http://slproweb.com/products/Win32OpenSSL.html</u> for other SSL resources. Ignore possibly occurring comments about missing components during installation.</li>
    660 
    661 <li>Download MinGW compiler Version 4.4.0 e.g. from <u>http://igs.bkg.bund.de/root_ftp/NTRIP/software/MinGW-gcc440_1.zip</u></li>
    662 
    663 <li>Unzip the ZIP archive and move its contents to a directory C:\MinGW. Now you can do either (4) or (5, 6, 8, 9, 10). Following (4) is suggested.</li>
    664 
    665 <li>Download file 'qt-win-opensource-4.8.5-mingw.exe' (317 MB) e.g. from <u>https://download.qt.io/archive/qt/4.8/4.8.5/</u>. Execute this file to install a pre-compiled shared Qt library.</li>
    666      
    667 <li>Download file 'qt-everywhere-opensource-src-4.8.5.zip' (269 MB) e.g. from <u>https://download.qt.io/archive/qt/4.8/4.8.5/</u></li>
    668 
    669 <li>Unzip the ZIP archive and move the contents of the contained directory into a directory C:\Qt\4.8.5.</li>
    670 
    671 <li>Create somewhere a file QtEnv.bat with the following content:
    672 <pre>
    673    set QTDIR=C:\Qt\4.8.5
    674    set PATH=%PATH%;C:\MinGW\bin;C:\Qt\4.8.5\bin
    675    set QMAKESPEC=C:\Qt\4.8.5\mkspecs\win32-g++
    676 </pre></li>
    677 
    678 <li>Open a command line window and execute file QtEnv.bat</li>
    679 
    680 <li>Go to directory C:\Qt\4.8.5 and configure Qt using command
    681 <pre>
    682    configure -fast -webkit -release -nomake examples -nomake tutorial
    683              -openssl -I C:\OpenSSL-Win32\include
    684 </pre></li>
    685 
    686 <li>Compile Qt using command
    687 <pre>
    688    mingw32-make
    689 </pre>
    690 This may take quite a long time. Don't worry if the compilation process runs into a problem after some time. It is likely that the libraries you require are already generated at that time.<br>
    691 Should you want to reconfiguring Qt following steps (8)-(10) you first need to clean the previous configuration using command 'mingw32-make confclean'. Run command 'mingw32-make clean' to delete previously compiled source code.</li>
    692 
    693 <li>Download latest BNC from SVN repository <u>http://software.rtcm-ntrip.org/svn/trunk/BNC.</u></li>
    694 
    695 <li>Open command line window and execute file QtEnv.bat, see (7)</li>
    696 
    697 <li>Go to directory BNC and enter command
    698 <pre>
    699    qmake bnc.pro
    700 </pre></li>
    701 
    702 <li>Enter command
    703 <pre>
    704    mingw32-make
    705 </pre></li>
    706 
    707 <li>Find binary file bnc.exe in directory named src.</li>
    708 
    709 <li>Extend the Windows environment variable PATH by C:\Qt\4.8.5\bin.</li>
     1246<p>The main window of BNC shows a &#8216;Top menu bar&#8217; section, a &#8216;Settings&#8217; sections with panels to set processing options, a &#8216;Streams&#8217; section, a section for &#8216;Log&#8217; tabs, and a &#8216;Bottom menu bar&#8217; section <a class="reference internal" href="#fig-5"><span class="std std-numref">(Fig. 5)</span></a>.</p>
     1247<div class="figure" id="id7">
     1248<span id="fig-5"></span><a class="reference internal image-reference" href="_images/fig_5.png"><img alt="_images/fig_5.png" src="_images/fig_5.png" style="width: 969.0px; height: 644.0px;" /></a>
     1249<p class="caption"><span class="caption-number">Fig. 5 </span><span class="caption-text">Sections on BNC&#8217;s main window.</span></p>
     1250</div>
     1251<p>Running BNC in interactive mode requires graphics support. This is also required in batch mode when producing plots. Windows and Mac OS X systems always support graphics. However, when using BNC in batch mode on Linux systems for producing plots, you need to make sure that at least a virtual X-Server like &#8216;Xvfb&#8217; is installed and the &#8216;-display&#8217; command line option is used.</p>
     1252<p>The usual handling of BNC is that you first select a number of streams (&#8216;Add Stream&#8217;). Any stream configured to BNC shows up on the &#8216;Streams&#8217; canvas in the middle of BNC&#8217;s main window. You then go through BNC&#8217;s various configuration panels to set a combination of input, processing and output options before you start the program (&#8216;Start&#8217;). Most configuration panels are dedicated to a certain function of BNC. If the first option field on such a configuration panel is empty, the affected functionality is deactivated.</p>
     1253<p>Records of BNC&#8217;s activities are shown in the &#8216;Log&#8217; tab which is part of the &#8216;Log&#8217; canvas. The bandwidth consumption per stream, the latency of incoming observations, and a PPP time series for coordinate displacements are also part of that canvas and shown in the &#8216;Throughput&#8217;, &#8216;Latency&#8217; and &#8216;PPP Plot&#8217; tabs.</p>
     1254<p>Configuration options are usually first set using BNC&#8217;s Graphical User Interface (GUI), then saved in a configuration file. For routine operations in batch mode all of BNC&#8217;s configuration options can be extracted from the configuration file and applied using the program&#8217;s Command Line Interface (CLI).</p>
     1255</div>
     1256<div class="section" id="limitations">
     1257<span id="index-6"></span><h3>Limitations<a class="headerlink" href="#limitations" title="Permalink to this headline">¶</a></h3>
     1258<ul class="simple">
     1259<li>In Qt-based desktop environments (like KDE) on Unix/Linux platforms it may happen that you experience a crash of BNC at startup even when running the program in the background using the &#8216;-nw&#8217; option. This is a known bug most likely resulting from an incompatibility of Qt libraries in the environment and in BNC. Entering the command <code class="docutils literal"><span class="pre">unset</span> <span class="pre">SESSION\MANAGER</span></code> before running BNC may help as a work-around.</li>
     1260<li>Using RTCM Version 3 to produce RINEX files, BNC will properly handle most message types. However, when handling message types 1001, 1003, 1009 and 1011 where the ambiguity field is not set, the output will be no valid RINEX. All values will be stored modulo 299792.458 (speed of light).</li>
     1261<li>Using RTCM Version 2, BNC will only handle message types 18 and 19 or 20 and 21 together with position and the antenna offset information carried in types 3 and 22. Note that processing carrier phase corrections and pseudo-range corrections contained in message types 20 and 21 needs access to Broadcast Ephemeris. Hence, whenever dealing with message types 20 and 21, make sure that Broadcast Ephemeris become available for BNC through also retrieving at least one RTCM Version 3 stream carrying message types 1019 (GPS ephemeris) and 1020 (GLONASS ephemeris).</li>
     1262<li>BNC&#8217;s &#8216;Get Table&#8217; function only shows the STR records of a source-table. You can use an Internet browser to download the full source-table content of any Ntrip Broadcaster by simply entering its URL in the form of <a class="reference external" href="http://host:port">http://host:port</a>. Data field number 8 in the NET records may provide information about where to register for an Ntrip Broadcaster account.</li>
     1263<li>EUREF as well as IGS adhere to an Open Data policy. Streams are made available through Ntrip Broadcasters at www.euref-ip.net, www.igs-ip.net, products.igs-ip.net, and mgex.igs-ip.net free of charge to anyone for any purpose. There is no indication up until now how many users will need to be supported simultaneously. The given situation may develop in such a way that it might become difficult to serve all registered users at the same times. In cases where limited resources on the Ntrip Broadcaster side (software restrictions, bandwidth limitation etc.) dictates, first priority in stream provision will be given to stream providers followed by re-broadcasting activities and real-time analysis centers while access to others might be temporarily denied.</li>
     1264<li>Once BNC has been started, many of its configuration options cannot be changed as long as it is stopped. See chapter &#8216;Reread Configuration&#8217; for on-the-fly configuration exceptions.</li>
     1265<li>Drag and drop of configuration files is currently not supported on Mac OS X. On such system you have to start BNC via command line.</li>
     1266</ul>
     1267<p class="rubric">Footnotes</p>
     1268<table class="docutils footnote" frame="void" id="f-rtnet" rules="none">
     1269<colgroup><col class="label" /><col /></colgroup>
     1270<tbody valign="top">
     1271<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>RTNet, GPS Solutions Inc., <a class="reference external" href="http://gps-solutions.com">http://gps-solutions.com</a></td></tr>
     1272</tbody>
     1273</table>
     1274</div>
     1275</div>
     1276<span id="document-chapter3"></span><div class="section" id="installation">
     1277<h2>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h2>
     1278<div class="section" id="pre-compiled-builds">
     1279<h3>Pre-compiled builds<a class="headerlink" href="#pre-compiled-builds" title="Permalink to this headline">¶</a></h3>
     1280<p>Precompiled builds of BNC are available for MS Windows, Linux, and Mac OS X systems. They can be downloaded for installation from <a class="reference external" href="http://igs.bkg.bund.de/ntrip/download">http://igs.bkg.bund.de/ntrip/download</a>. Please ensure that you always use the latest released version of the program.</p>
     1281<p class="rubric">MS Windows Build</p>
     1282<p>A dynamically compiled shared library build for Mircrosoft Windows systems is provided as Microsoft Installer (MSI) file. MSI files are used for installation, storage, and removal of programs. The BNC files are contained in a MSI package, which is used with the program&#8217;s client-side installer service, an .EXE file, to open and install the program. We used the MinGW Version 4.4.0 compiler to create BNC for Windows. After installation your <cite>bnc.exe</cite> file shows up e.g. under &#8216;All Programs&#8217;.</p>
     1283<p class="rubric">Linux Build</p>
     1284<p>Static library and shared library builds for BNC are provided for a selection of Linux distributions. Download the ZIP archive for a version which fits to your Linux system, unzip the archive and run the included BNC binary. A static build would be sufficient in case you do not want BNC to plot PPP results with Google Map (GM) or OpenStreetMap (OSM) maps in the background. GM/OSM usage requires BNC builds from shared libraries.</p>
     1285<p class="rubric">Mac OS X Build</p>
     1286<p>A shared library <code class="docutils literal"><span class="pre">Disk</span> <span class="pre">iMaGe</span></code> (DMG) file is provided for BNC on OS X systems; it also comes in a ZIP archive. The DMG file format is used in the Mac for distributing software. Mac install packages appear as a virtual disk drive. After download, when the DMG file icon is double clicked, the virtual drive is &#8216;mounted&#8217; on the desktop. Install BNC by dragging the <code class="docutils literal"><span class="pre">bnc.app</span></code> icon to your <code class="docutils literal"><span class="pre">Applications</span></code> folder. To start BNC, double click on <code class="docutils literal"><span class="pre">Applications/bnc.app</span></code>. You could also start BNC via Command Line Interface (CLI) using command <code class="docutils literal"><span class="pre">Applications/bnc.app/Contents/MacOS/bnc</span></code>.</p>
     1287</div>
     1288<div class="section" id="compilation">
     1289<span id="index-0"></span><h3>Compilation<a class="headerlink" href="#compilation" title="Permalink to this headline">¶</a></h3>
     1290<p>BNC has been written as Open Source and published under GNU General Public License (GPL). The latest source code can be checked out from Subversion repository <a class="reference external" href="http://software.rtcm-ntrip.org/svn/trunk/BNC">http://software.rtcm-ntrip.org/svn/trunk/BNC</a>. A ZIP archive available from <a class="reference external" href="http://igs.bkg.bund.de/ntrip/download">http://igs.bkg.bund.de/ntrip/download</a> provides the source code for BNC Version 2.12, developed using Qt Version 4.8.5.</p>
     1291<p>The following describes how you can produce your own builds of BNC on MS Windows, Linux, and Mac systems. It is likely that BNC can also be compiled on other systems where a GNU compiler and Qt Version 4.8.5 or any later version is installed.</p>
     1292<div class="section" id="static-versus-shared-libraries">
     1293<span id="index-1"></span><h4>Static versus Shared Libraries<a class="headerlink" href="#static-versus-shared-libraries" title="Permalink to this headline">¶</a></h4>
     1294<p>You can produce static or shared library builds of BNC. Static builds are sufficient in case you do not want BNC to produce track maps on top of Google Map (GM) or OpenStreetMap (OSM). GM/OSM usage would require the QtWebKit library which can only be part of BNC builds from shared Qt libraries. Hence, having a shared library Qt installation available is a precondition for producing a shared library build of BNC.</p>
     1295</div>
     1296<div class="section" id="ms-windows-systems-shared-library">
     1297<span id="index-2"></span><h4>MS Windows Systems, Shared Library<a class="headerlink" href="#ms-windows-systems-shared-library" title="Permalink to this headline">¶</a></h4>
     1298<p>This explains how to install a shared Qt 4.8.5 library on MS Windows systems to then create your own shared build of BNC.</p>
     1299<p>Supposing that &#8216;Secure Socket Layer (SSL)&#8217; is not available on you system, you should install OpenSSL libraries in <code class="docutils literal"><span class="pre">C:\OpenSSL-Win32</span></code>. They are available e.g. from <a class="reference external" href="http://igs.bkg.bund.de/root_ftp/NTRIP/software/Win32OpenSSL-1_0_1e.exe">http://igs.bkg.bund.de/root_ftp/NTRIP/software/Win32OpenSSL-1_0_1e.exe</a>. See <a class="reference external" href="http://slproweb.com/products/Win32OpenSSL.html">http://slproweb.com/products/Win32OpenSSL.html</a> for other SSL resources. Ignore possibly occurring comments about missing components during installation.</p>
     1300<ol class="arabic simple">
     1301<li>Download MinGW compiler Version 4.4.0 e.g. from <a class="reference external" href="http://igs.bkg.bund.de/root_ftp/NTRIP/software/MinGW-gcc440_1.zip">http://igs.bkg.bund.de/root_ftp/NTRIP/software/MinGW-gcc440_1.zip</a>.</li>
     1302<li>Unzip the ZIP archive and move its contents to a directory <code class="docutils literal"><span class="pre">C:\MinGW</span></code>. Now you can do either (4) or (5, 6, 8, 9, 10). Following (4) is suggested.</li>
     1303<li>Download file <code class="docutils literal"><span class="pre">qt-win-opensource-4.8.5-mingw.exe</span></code> (317 MB) e.g. from <a class="reference external" href="https://download.qt.io/archive/qt/4.8/4.8.5/">https://download.qt.io/archive/qt/4.8/4.8.5/</a>.</li>
     1304<li>Execute this file to install a pre-compiled shared Qt library.</li>
     1305<li>Download file <code class="docutils literal"><span class="pre">qt-everywhere-opensource-src-4.8.5.zip</span></code> (269 MB) e.g. from <a class="reference external" href="https://download.qt.io/archive/qt/4.8/4.8.5/">https://download.qt.io/archive/qt/4.8/4.8.5/</a>.</li>
     1306<li>Unzip the ZIP archive and move the contents of the contained directory into a directory <code class="docutils literal"><span class="pre">C:\Qt\4.8.5</span></code>.</li>
     1307<li>Create somewhere a file <code class="docutils literal"><span class="pre">QtEnv.bat</span></code> with the following content</li>
    7101308</ol>
    711 
    712 <p>
    713 Steps (11)-(15) can be repeated whenever a BNC update becomes available. Running bnc.exe on a windows system requires (1) when using the NTRIP Version 2s option for stream transfer over TLS/SSL.
    714 </p>
    715 
    716 <p>
    717 <b>Linux Systems</b><br>
    718 On Linux systems you may use the following procedure to install a shared Qt version 4.8.5 library:
    719 </p>
    720 
    721 <p>
    722 Download file 'qt-everywhere-opensource-src-4.8.5.tar.gz' (230 MB) available from <u>https://download.qt.io/archive/qt/4.8/4.8.5/</u>. Unzip file, extract tar archive and change to directory 'qt-everywhere-opensource-src-4.8.5'. Run commands
    723 <pre>
    724   ./configure -fast -webkit -nomake examples -nomake tutorial
    725               -prefix /usr/local/Trolltech/Qt-4.8.5
    726   gmake
    727   gmake install
    728 </pre>
    729 </p>
    730 
    731 <p>
    732 Qt will be installed into directory /usr/local/Trolltech/Qt-4.8.5. To reconfigure, run 'gmake confclean' and 'configure'. Note that the '-prefix' option allows you to specify a directory for saving the Qt libraries. This ensures that you do not run into conflicts with other
    733 Qt installations on your host. Note further that the following two lines<pre>
    734   export QTDIR="/usr/local/Trolltech/Qt-4.8.5"
    735   export PATH="$QTDIR/bin:$PATH"</pre>
    736 
    737 need to be added either to $HOME/.bash_profile or $HOME/.bashrc. Once that is done, logout/login and start using Qt 4.8.5.
    738 </p>
    739 <p>
    740 To compile the BNC program, you first download the source code from SVN repository <u>http://software.rtcm-ntrip.org/svn/trunk/BNC</u>. Go to directory BNC and run the following commands: <pre>
    741   qmake bnc.pro
    742   make
    743 </pre>
    744 You will find a build of BNC in directory BNC.
    745 </p>
    746 <p>
    747 <b>Mac OS X Systems</b><br>
    748 
    749 <u>Xcode and Qt Installation</u><br>
    750 Xcode and Qt are required to compile BNC on OS X. Both tools are freely available. Xcode can be downloaded from the App Store or the Apple Developer Connection website. Once installed, run Xcode, go to 'Preferences->Downloads' and install the Command Line Tools component. Qt can be downloaded from the Qt Project website. We suggest installing version 4.8.4 or higher. The Qt libraries for Mac can be downloaded from <u>http://www.qt.io/download</u>. Once downloaded, mount the disk image, run the Qt.mpkg package and follow instructions from the installation wizard.
    751 </p>
    752 
    753 <p>
    754 <u>Compiling BNC</u><br>
    755 The version of qmake supplied in the Qt binary package is configured to use the macx-xcode specification. This can be overridden with the '-spec macx-g++' option which makes it possible to use qmake to create a Makefile to be used by 'make'.
    756 </p>
    757 <p>
    758 From the directory where bnc.pro is located, run 'qmake' to create the Makefile and then 'make' to compile the binary.
    759 <pre>
    760    qmake -spec macx-g++ bnc.pro
    761    make
    762 </pre>
    763 Refer to the following webpage for further information: <u>http://doc.qt.io/qt-4.8/qmake-platform-notes.html</u>.
    764 </p>
    765 
    766 <p>
    767 <u>Bundle Deployment</u><br>
    768 When distributing BNC it is necessary to bundle in all related Qt resources in the package. The Mac Deployment Tool has been designed to automate the process of creating a deployable application bundle that contains the Qt libraries as private frameworks. To use it, issue the following commands where bnc.app is located.
    769 <pre>
    770    macdeployqt bnc.app -dmg
    771 </pre>
    772 Refer to the following webpage for further information: <u>http://doc.qt.io/qt-4.8/deployment-mac.html</u>.
    773 </p>
    774 <p>
    775 Once a DMG file for BNC is created, you can double click it and install BNC by dragging the 'bnc.app' icon to your 'Applications' folder. To start BNC, double click on '/Aplications/bnc.app'.
    776 </p>
    777 
    778 <p><h4>1.6 <a name="introConf">Configuration</h4></p>
    779 <p>
    780 As a default, configuration files for running BNC on Unix/Linux/Mac OS X systems are saved in directory '${HOME}/.config/BKG'. On Windows systems, they are typically saved in directory 'C:/Documents and Settings/Username/.config/BKG'. The default configuration filename is 'BNC.bnc'.</p>
    781 <p>
    782 The default filename 'BNC.bnc' can be changed and the file content can easily be edited. On graphical user interfaces it is possible to Drag &amp; Drop a configuration file icon to start BNC (not on Mac OS X systems). It is also possible to start and configure BNC via command line. Some configuration options can be changed on-the-fly. See annexed 'Command Line Help' for a complete set of configuration options.
    783 </p>
    784 
    785 <p>
    786 BNC maintains configuration options at three different levels:
    787 </p>
    788 
    789 <ol type=b>
     1309<div class="highlight-console"><div class="highlight"><pre><span class="go">set QTDIR=C:\Qt\4.8.5</span>
     1310<span class="go">set PATH=%PATH%;C:\MinGW\bin;C:\Qt\4.8.5\bin</span>
     1311<span class="go">set QMAKESPEC=C:\Qt\4.8.5\mkspecs\win32-g++</span>
     1312</pre></div>
     1313</div>
     1314<ol class="arabic simple" start="8">
     1315<li>Open a command line window and execute file <code class="docutils literal"><span class="pre">QtEnv.bat</span></code>.</li>
     1316<li>Go to directory Qt directory and configure Qt using command</li>
     1317</ol>
     1318<div class="highlight-console"><div class="highlight"><pre><span class="go">cd Qt\4.8.5</span>
     1319<span class="go">configure -fast -webkit -release -nomake examples -nomake tutorial</span>
     1320<span class="go">          -openssl -I C:\OpenSSL-Win32\include</span>
     1321</pre></div>
     1322</div>
     1323<ol class="arabic simple" start="10">
     1324<li>Compile Qt using command <code class="docutils literal"><span class="pre">mingw32-make</span></code>. This may take quite a long time. Don&#8217;t worry if the compilation process runs into a problem after some time. It is likely that the libraries you require are already generated at that time. Should you want to reconfiguring Qt following steps (8)-(10) you first need to clean the previous configuration using command <code class="docutils literal"><span class="pre">mingw32-make</span> <span class="pre">confclean</span></code>. Run command <code class="docutils literal"><span class="pre">mingw32-make</span> <span class="pre">clean</span></code> to delete previously compiled source code.</li>
     1325<li>Download latest BNC from SVN repository <a class="reference external" href="http://software.rtcm-ntrip.org/svn/trunk/BNC">http://software.rtcm-ntrip.org/svn/trunk/BNC</a>.</li>
     1326<li>Open command line window and execute file <code class="docutils literal"><span class="pre">QtEnv.bat</span></code>, see (7).</li>
     1327<li>Go to directory BNC and enter command <code class="docutils literal"><span class="pre">qmake</span> <span class="pre">bnc.pro</span></code>.</li>
     1328<li>Enter command <code class="docutils literal"><span class="pre">mingw32-make</span></code>.</li>
     1329<li>Find binary file <code class="docutils literal"><span class="pre">bnc.exe</span></code> in directory named <code class="docutils literal"><span class="pre">src</span></code>.</li>
     1330<li>Extend the Windows environment variable PATH by <code class="docutils literal"><span class="pre">C:\Qt\4.8.5\bin</span></code>.</li>
     1331</ol>
     1332<p>Steps (11)-(15) can be repeated whenever a BNC update becomes available. Running <code class="docutils literal"><span class="pre">bnc.exe</span></code> on a windows system requires (1) when using the NTRIP Version 2s option for stream transfer over TLS/SSL.</p>
     1333</div>
     1334<div class="section" id="linux-systems">
     1335<span id="index-3"></span><h4>Linux Systems<a class="headerlink" href="#linux-systems" title="Permalink to this headline">¶</a></h4>
     1336<p>On Linux systems you may use the following procedure to install a shared Qt version 4.8.5 library:</p>
     1337<p>Download file <code class="docutils literal"><span class="pre">qt-everywhere-opensource-src-4.8.5.tar.gz</span></code> (230 MB) available from <a class="reference external" href="https://download.qt.io/archive/qt/4.8/4.8.5/">https://download.qt.io/archive/qt/4.8/4.8.5/</a>. Unzip file, extract tar archive and change to directory <code class="docutils literal"><span class="pre">qt-everywhere-opensource-src-4.8.5</span></code>. Run commands</p>
     1338<div class="highlight-console"><div class="highlight"><pre><span class="go">./configure -fast -webkit -nomake examples -nomake tutorial</span>
     1339<span class="go">            -prefix /usr/local/Trolltech/Qt-4.8.5</span>
     1340<span class="go">gmake</span>
     1341<span class="go">gmake install</span>
     1342</pre></div>
     1343</div>
     1344<p>Qt will be installed into directory <code class="docutils literal"><span class="pre">/usr/local/Trolltech/Qt-4.8.5</span></code>. To reconfigure, run <code class="docutils literal"><span class="pre">gmake</span> <span class="pre">confclean</span></code> and <code class="docutils literal"><span class="pre">configure</span></code>. Note that the <code class="docutils literal"><span class="pre">-prefix</span></code> option allows you to specify a directory for saving the Qt libraries. This ensures that you do not run into conflicts with other Qt installations on your host. Note further that the following two lines</p>
     1345<div class="highlight-console"><div class="highlight"><pre><span class="go">export QTDIR=&quot;/usr/local/Trolltech/Qt-4.8.5&quot;</span>
     1346<span class="go">export PATH=&quot;$QTDIR/bin:$PATH&quot;</span>
     1347</pre></div>
     1348</div>
     1349<p>need to be added either to <code class="docutils literal"><span class="pre">$HOME/.bash/profile</span></code> or <code class="docutils literal"><span class="pre">$HOME/.bashrc</span></code>. Once that is done, logout/login and start using Qt 4.8.5.</p>
     1350<p>To compile the BNC program, you first download the source code from SVN repository <a class="reference external" href="http://software.rtcm-ntrip.org/svn/trunk/BNC">http://software.rtcm-ntrip.org/svn/trunk/BNC</a>. Go to directory BNC and run the following commands:</p>
     1351<div class="highlight-console"><div class="highlight"><pre><span class="go">qmake bnc.pro</span>
     1352<span class="go">make</span>
     1353</pre></div>
     1354</div>
     1355<p>You will find a build of BNC in directory BNC.</p>
     1356</div>
     1357<div class="section" id="mac-os-x-systems">
     1358<span id="index-4"></span><h4>Mac OS X Systems<a class="headerlink" href="#mac-os-x-systems" title="Permalink to this headline">¶</a></h4>
     1359<div class="section" id="xcode-and-qt-installation">
     1360<h5>Xcode and Qt installation<a class="headerlink" href="#xcode-and-qt-installation" title="Permalink to this headline">¶</a></h5>
     1361<p>Xcode and Qt are required to compile BNC on OS X. Both tools are freely available. Xcode can be downloaded from the App Store or the Apple Developer Connection website. Once installed, run Xcode, go to &#8216;Preferences-&gt;Downloads&#8217; and install the Command Line Tools component. Qt can be downloaded from the Qt Project website. We suggest installing version 4.8.4 or higher. The Qt libraries for Mac can be downloaded from <a class="reference external" href="http://www.qt.io/download">http://www.qt.io/download</a>. Once downloaded, mount the disk image, run the Qt.mpkg package and follow instructions from the installation wizard.</p>
     1362</div>
     1363<div class="section" id="compilation-of-bnc">
     1364<h5>Compilation of bnc<a class="headerlink" href="#compilation-of-bnc" title="Permalink to this headline">¶</a></h5>
     1365<p>The version of qmake supplied in the Qt binary package is configured to use the macx-xcode specification. This can be overridden with the <code class="docutils literal"><span class="pre">-spec</span> <span class="pre">macx-g++</span></code> option which makes it possible to use <code class="docutils literal"><span class="pre">qmake</span></code> to create a <code class="docutils literal"><span class="pre">Makefile</span></code> to be used by <code class="docutils literal"><span class="pre">make</span></code>.</p>
     1366<p>From the directory where bnc.pro is located, run <code class="docutils literal"><span class="pre">qmake</span></code> to create the <code class="docutils literal"><span class="pre">Makefile</span></code> and then <code class="docutils literal"><span class="pre">make</span></code> to compile the binary:</p>
     1367<div class="highlight-console"><div class="highlight"><pre><span class="go">qmake -spec macx-g++ bnc.pro</span>
     1368<span class="go">make</span>
     1369</pre></div>
     1370</div>
     1371<p>Refer to the following webpage for further information: <a class="reference external" href="http://doc.qt.io/qt-4.8/qmake-platform-notes.html">http://doc.qt.io/qt-4.8/qmake-platform-notes.html</a>.</p>
     1372</div>
     1373<div class="section" id="bundle-deployment">
     1374<h5>Bundle Deployment<a class="headerlink" href="#bundle-deployment" title="Permalink to this headline">¶</a></h5>
     1375<p>When distributing BNC it is necessary to bundle in all related Qt resources in the package. The Mac Deployment Tool has been designed to automate the process of creating a deployable application bundle that contains the Qt libraries as private frameworks. To use it, issue the following commands where <code class="docutils literal"><span class="pre">bnc.app</span></code> is located.</p>
     1376<div class="highlight-console"><div class="highlight"><pre><span class="go">macdeployqt bnc.app -dmg</span>
     1377</pre></div>
     1378</div>
     1379<p>Refer to the following webpage for further information: <a class="reference external" href="http://doc.qt.io/qt-4.8/deployment-mac.html">http://doc.qt.io/qt-4.8/deployment-mac.html</a>.</p>
     1380<p>Once a DMG file for BNC is created, you can double click it and install BNC by dragging the <code class="docutils literal"><span class="pre">bnc.app</span></code> icon to your <code class="docutils literal"><span class="pre">Applications</span></code> folder. To start BNC, double click on <code class="docutils literal"><span class="pre">Applications/bnc.app</span></code>.</p>
     1381</div>
     1382</div>
     1383</div>
     1384</div>
     1385<span id="document-chapter4"></span><div class="section" id="configuration">
     1386<h2>Configuration<a class="headerlink" href="#configuration" title="Permalink to this headline">¶</a></h2>
     1387<div class="section" id="general-procedure">
     1388<h3>General procedure<a class="headerlink" href="#general-procedure" title="Permalink to this headline">¶</a></h3>
     1389<p>As a default, configuration files for running BNC on Unix/Linux/Mac OS X systems are saved in directory <code class="docutils literal"><span class="pre">$HOME/.config/BKG</span></code>. On Windows systems, they are typically saved in directory <code class="docutils literal"><span class="pre">C:/Documents</span> <span class="pre">and</span> <span class="pre">Settings/Username/.config/BKG</span></code>. The default configuration filename is <code class="docutils literal"><span class="pre">BNC.bnc</span></code>.</p>
     1390<p>The default filename <code class="docutils literal"><span class="pre">BNC.bnc</span></code> can be changed and the file content can easily be edited. On Graphical User Interfaces (GUI) it is possible to Drag &amp; Drop a configuration file icon to start BNC (not on Mac OS X systems). It is also possible to start and configure BNC via command line. Some configuration options can be changed on-the-fly. See annexed Command Line Help for a complete set of configuration options.</p>
     1391<p>BNC maintains configuration options at three different levels:</p>
     1392<ol class="arabic simple">
    7901393<li>GUI, input fields level</li>
    7911394<li>Active configuration level</li>
    7921395<li>Configuration file, disk level</li>
    7931396</ol>
    794 
    795 <p><img src="IMG/screenshot31.png"/></p>
    796 <p><u>Figure 6:</u> Management of configuration options in BNC:<br>
    797 <table>
    798 <tr><td>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </td><td>Left:</td><td>BNC in graphics mode; active configuration options are introduced through GUI input fields and finally saved on disk</td></tr>
    799 <tr><td>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </td><td>Middle:</td><td>BNC in 'no window' mode; active configuration options are read from disk</td></tr>
    800 <tr><td>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </td><td>Right:</td><td>BNC in 'no window' mode without configuration file; default configuration options can be overwritten via command line options</td></tr>
     1397<div class="figure" id="fig-6">
     1398<a class="reference internal image-reference" href="_images/fig_6.png"><img alt="_images/fig_6.png" src="_images/fig_6.png" style="width: 859.0px; height: 313.0px;" /></a>
     1399</div>
     1400<table border="1" class="docutils">
     1401<colgroup>
     1402<col width="5%" />
     1403<col width="95%" />
     1404</colgroup>
     1405<tbody valign="top">
     1406<tr class="row-odd"><td>Left</td>
     1407<td>BNC in graphics mode; active configuration options are introduced through GUI input fields and finally saved on disk</td>
     1408</tr>
     1409<tr class="row-even"><td>Middle</td>
     1410<td>BNC in &#8216;no window&#8217; mode; active configuration options are read from disk</td>
     1411</tr>
     1412<tr class="row-odd"><td>Right</td>
     1413<td>BNC in &#8216;no window&#8217; mode without configuration file; default configuration options can be overwritten via command line options</td>
     1414</tr>
     1415</tbody>
    8011416</table>
    802 
    803 <p>
    804 Configuration options are usually specified using GUI input fields (1) after launching BNC. When hitting the 'Start' button, configuration options are transferred one level down to become BNC's active configuration (2), allowing the program to begin its operation. Pushing the 'Stop' button ends data processing so that the user can finally terminate BNC through 'File'->'Quit'->'Save Options' which saves processing options in a configuration file to disk (3). It is important to understand that:
    805 <ul>
     1417<blockquote>
     1418<div>Management of configuration options in BNC.</div></blockquote>
     1419<p>Configuration options are usually specified using GUI input fields 1 after launching BNC. When hitting the &#8216;Start&#8217; button, configuration options are transferred one level down to become BNC&#8217;s active configuration 2, allowing the program to begin its operation. Pushing the &#8216;Stop&#8217; button ends data processing so that the user can finally terminate BNC through &#8216;File&#8217;-&gt;&#8217;Quit&#8217;-&gt;&#8217;Save Options&#8217; which saves processing options in a configuration file to disk 3. It is important to understand that:</p>
     1420<ul class="simple">
    8061421<li>Active configuration options (2) are independent from GUI input fields and configuration file content.</li>
    8071422<li>Hence changing configuration options at GUI level (1) while BNC is already processing data does not influence a running job.</li>
    808 <li>Editing configuration options at disk level (3) while BNC is already processing data does also not influence a running job. However, there are two exceptions which force BNC to update certain active options on-the-fly:</li>
     1423<li>Editing configuration options at disk level (3) while BNC is already processing data does also not influence a running job. However, there are two exceptions which force BNC to update certain active options on-the-fly:<ul>
     1424<li>Pushing the &#8216;Reread &amp; Save Configuration&#8217; button lets BNC immediately reread its configuration from GUI input fields to make them active configuration options. Then BNC saves them on disk.</li>
     1425<li>Specifying the &#8216;Reread configuration&#8217; option lets BNC reread its configuration from disk at pre-defined intervals.</li>
     1426</ul>
     1427</li>
     1428<li>A specific BNC configuration can be started in &#8216;no window&#8217; mode from scratch without a configuration file if options for the active configuration level (2) are provided via command line.</li>
     1429</ul>
     1430</div>
     1431<div class="section" id="examples-configuration-files">
     1432<h3>Examples configuration files<a class="headerlink" href="#examples-configuration-files" title="Permalink to this headline">¶</a></h3>
     1433<p>BNC comes with a number of configuration examples which can be used on all operating systems. Copy the complete directory <code class="docutils literal"><span class="pre">Example_Configs</span></code> which comes with the software to your disc. It includes sub-directories <code class="docutils literal"><span class="pre">Input</span></code> and <code class="docutils literal"><span class="pre">Output</span></code>. There are several ways to start BNC using one of the example configurations:</p>
     1434<ul class="simple">
     1435<li>On graphical systems (except for Mac systems), you may use the computer mouse to &#8216;drag&#8217; a configuration file icon and &#8216;drop&#8217; it on top of BNC&#8217;s program icon.</li>
     1436<li>You could also start BNC using a command line for naming a specific configuration file (suggested e.g. for Mac systems):  <code class="docutils literal"><span class="pre">/Applications/bnc.app/Contents/MacOS/bnc</span> <span class="pre">--conf</span> <span class="pre">&lt;configFileName&gt;</span></code></li>
     1437<li>On non-graphical systems or when running BNC in batch mode in the background you may start the program using a command line with a configuration file option in &#8216;no window&#8217; mode (example for Windows systems): <code class="docutils literal"><span class="pre">bnc.exe</span> <span class="pre">--conf</span> <span class="pre">&lt;configFileName&gt;</span> <span class="pre">--nw</span></code></li>
     1438</ul>
     1439<p>Although it&#8217;s not a must, we suggest that you always create BNC configuration files with filename extension <code class="docutils literal"><span class="pre">.bnc</span></code>.</p>
     1440<p>We furthermore suggest for convenience reasons that you configure your system to automatically start BNC when you double-click a file with the filename extension <code class="docutils literal"><span class="pre">.bnc</span></code>. The following describes what to do on MS Windows systems to associate the BNC program to such configuration files:</p>
     1441<ol class="arabic simple">
     1442<li>Right-click a file that has the extension <code class="docutils literal"><span class="pre">.bnc</span></code> and then click &#8216;Open&#8217;. If the &#8216;Open&#8217; command is not available, click &#8216;Open With&#8217; or double-click the file.</li>
     1443<li>Windows displays a dialog box that says that the system cannot open this file. The dialog box offers several options for selecting a program.</li>
     1444<li>Click &#8216;Select the program from a list&#8217;, and then click &#8216;OK&#8217;.</li>
     1445<li>The &#8216;Open With&#8217; dialog box is displayed. Click &#8216;Browse&#8217;, locate and then click the BNC program, and then click &#8216;Open&#8217;.</li>
     1446<li>Click to select the &#8216;Always use the selected program to open this kind of file&#8217; check box.</li>
     1447<li>Click &#8216;OK&#8217;.</li>
     1448</ol>
     1449<p>Some of the presented example configurations contain a user ID &#8216;Example&#8217; with a password &#8216;Configs&#8217; for accessing a few GNSS streams from public Ntrip Broadcasters. This free generic account is arranged for convenience reasons only. Please be so kind as to replace the generic account details as well as the place holder&#8217;s &#8216;User&#8217; and &#8216;Pass&#8217; by the personal user ID and password you receive following an online registration through <a class="reference external" href="http://register.rtcm-ntrip.org">http://register.rtcm-ntrip.org</a>.</p>
     1450<p>Note that the account for an Ntrip Broadcaster is usually limited to pulling a specified maximum number of streams at the same time. As running some of the example configurations requires pulling several streams, it is suggested to make sure that you do not exceed your account&#8217;s limits.</p>
     1451<p>Make also sure that sub-directories &#8216;Input&#8217; and &#8216;Output&#8217; which are part of the example configurations exist on your system or adjust the affected example configuration options according to your needs.</p>
     1452<p>Some BNC options require Antenna Phase Center variations as made available from IGS through so-called ANTEX files at <a class="reference external" href="ftp://igs.org/pub/station/general">ftp://igs.org/pub/station/general</a>. An example ANTEX file <code class="docutils literal"><span class="pre">igs08.atx</span></code> is part of the BNC package for convenience.</p>
     1453<p>The example configurations assume that no proxy protects your BNC host. Should a proxy be operated in front of BNC then you need to introduce its name or IP and port number in the &#8216;Network&#8217; panel.</p>
     1454</div>
     1455<div class="section" id="list-of-example-configuration-files">
     1456<h3>List of example configuration files<a class="headerlink" href="#list-of-example-configuration-files" title="Permalink to this headline">¶</a></h3>
     1457<p>You should be able to run all configuration file examples without changing contained options. However, configuration &#8216;Upload.bnc&#8217; is an exception because it requires an input stream from a connected network engine.</p>
     1458<ol class="arabic simple">
     1459<li>Configuration File <code class="docutils literal"><span class="pre">RinexObs.bnc</span></code></li>
     1460</ol>
     1461<blockquote>
     1462<div>Purpose: Convert RTCM streams to RINEX Observation files. The configuration pulls streams from Ntrip Broadcasters using Ntrip Version 1 to generate 15min 1Hz RINEX Version 3 Observation files. See <a class="reference external" href="http://igs.bkg.bund.de/ntrip/observations">http://igs.bkg.bund.de/ntrip/observations</a> for observation stream resources.</div></blockquote>
     1463<ol class="arabic simple" start="2">
     1464<li>Configuration File <code class="docutils literal"><span class="pre">RinexEph.bnc</span></code></li>
     1465</ol>
     1466<blockquote>
     1467<div>Purpose: Convert a RTCM stream with navigation messages to RINEX Navigation files. The configuration pulls a RTCM Version 3 stream with Broadcast Ephemeris coming from the real-time EUREF and IGS networks and saves hourly RINEX Version 3 Navigation files. See <a class="reference external" href="http://igs.bkg.bund.de/ntrip/ephemeris">http://igs.bkg.bund.de/ntrip/ephemeris</a> for further real-time Broadcast Ephemeris resources.</div></blockquote>
     1468<ol class="arabic simple" start="3">
     1469<li>Configuration File <code class="docutils literal"><span class="pre">BrdcCorr.bnc</span></code></li>
     1470</ol>
     1471<blockquote>
     1472<div>Purpose: Save Broadcast Corrections from RTCM SSR messages in hourly plain ASCII files. See <a class="reference external" href="http://igs.bkg.bund.de/ntrip/orbits">http://igs.bkg.bund.de/ntrip/orbits</a> for various real-time IGS or EUREF orbit/clock correction products.</div></blockquote>
     1473<ol class="arabic simple" start="4">
     1474<li>Configuration File <code class="docutils literal"><span class="pre">RinexConcat.bnc</span></code></li>
     1475</ol>
     1476<blockquote>
     1477<div>Purpose: Concatenate several RINEX Version 3 files to produce one compiled file and edit the marker name in the file header. The sampling interval is set to 30 seconds. See section &#8216;RINEX Editing &amp; QC&#8217; in the documentation for examples on how to call BNC from command line in &#8216;no window&#8217; mode for RINEX file editing, concatenation and quality check.</div></blockquote>
     1478<ol class="arabic simple" start="5">
     1479<li>Configuration File <code class="docutils literal"><span class="pre">RinexQC.bnc</span></code></li>
     1480</ol>
     1481<blockquote>
     1482<div>Purpose: Check the quality of a RINEX Version 3 file by means of a multipath analysis. Results are saved on disk in terms of a plot in PNG format. See section &#8216;RINEX Editing &amp; QC&#8217; in the documentation for examples on how to call BNC from command line in &#8216;no window&#8217; mode for RINEX file editing, concatenation and quality check.</div></blockquote>
     1483<ol class="arabic simple" start="6">
     1484<li>Configuration File <code class="docutils literal"><span class="pre">RTK.bnc</span></code></li>
     1485</ol>
     1486<blockquote>
     1487<div>Purpose: Feed a serially connected receiver with observations from a nearby reference station for conventional RTK. The stream is scanned for RTCM messages. Message type numbers and latencies of incoming observations are reported in BNC&#8217;s logfile.</div></blockquote>
     1488<ol class="arabic simple" start="7">
     1489<li>Configuration File <code class="docutils literal"><span class="pre">FeedEngine.bnc</span></code></li>
     1490</ol>
     1491<blockquote>
     1492<div>Purpose: Feed a real-time GNSS engine with observations from remote reference stations. The configuration pulls a single stream from an Ntrip Broadcaster. You could also pull several streams from different casters. Incoming observations are decoded, synchronized, output through a local IP port and also saved into a file. Failure and recovery thresholds are specified to inform about outages.</div></blockquote>
     1493<ol class="arabic simple" start="8">
     1494<li>Configuration File <code class="docutils literal"><span class="pre">PPP.bnc</span></code></li>
     1495</ol>
     1496<blockquote>
     1497<div>Purpose: Precise Point Positioning from observations of a rover receiver. The configuration reads RTCM Version 3 observations, a Broadcast Ephemeris stream and a stream with Broadcast Corrections. Positions are saved in the logfile.</div></blockquote>
     1498<ol class="arabic simple" start="9">
     1499<li>Configuration File <code class="docutils literal"><span class="pre">PPPNet.bnc</span></code></li>
     1500</ol>
     1501<blockquote>
     1502<div>Purpose: Precise Point Positioning for several rovers or receivers from an entire network of reference stations in one BNC job. The possible maximum number of PPP solutions per job depends on the processing power of the hosting computer. This example configuration reads two RTCM Version 3 observation streams, a Broadcast Ephemeris stream and a stream with Broadcast Corrections. PPP Results for the two stations are saved in PPP logfiles.</div></blockquote>
     1503<ol class="arabic simple" start="10">
     1504<li>Configuration File <code class="docutils literal"><span class="pre">PPPQuickStart.bnc</span></code></li>
     1505</ol>
     1506<blockquote>
     1507<div>Purpose: Precise Point Positioning in Quick-Start mode from observations of a static receiver with precisely known position. The configuration reads RTCM Version 3 observations, Broadcast Corrections and a Broadcast Ephemeris stream. Positions are saved in NMEA format on disc. They are also output through IP port for real-time visualization with tools like RTKPLOT. Positions are saved in the logfile.</div></blockquote>
     1508<ol class="arabic simple" start="11">
     1509<li>Configuration File <code class="docutils literal"><span class="pre">PPPPostProc.bnc</span></code></li>
     1510</ol>
     1511<blockquote>
     1512<div>Purpose: Precise Point Positioning in post processing mode. BNC reads RINEX Version 3 Observation and Navigation files and a Broadcast Correction file. PPP processing options are set to support the Quick-Start mode. The output is saved in a specific post processing logfile and contains coordinates derived over time following the implemented PPP filter algorithm.</div></blockquote>
     1513<ol class="arabic simple" start="12">
     1514<li>Configuration File <code class="docutils literal"><span class="pre">PPPGoogleMaps.bnc</span></code></li>
     1515</ol>
     1516<blockquote>
     1517<div>Purpose: Track BNC&#8217;s point positioning solutions using Google Maps or OpenStreetMap as background. BNC reads a RINEX Observation file and a RINEX Navigation file to carry out a &#8216;Standard Point Positioning&#8217; solution in post processing mode. Although this is not a real-time application, it requires the BNC host to be connected to the Internet. Specify a computation speed, then hit button &#8216;Open Map&#8217; to open the track map, then hit &#8216;Start&#8217; to visualize receiver positions on top of GM/OSM maps.</div></blockquote>
     1518<ol class="arabic simple" start="13">
     1519<li>Configuration File <code class="docutils literal"><span class="pre">SPPQuickStartGal.bnc</span></code></li>
     1520</ol>
     1521<blockquote>
     1522<div>Purpose: Single Point Positioning in Quick-Start mode from observations of a static receiver with quite precisely known position. The configuration uses GPS, GLONASS and Galileo observations and a Broadcast Ephemeris stream.</div></blockquote>
     1523<ol class="arabic simple" start="14">
     1524<li>Configuration File <code class="docutils literal"><span class="pre">SaveSp3.bnc</span></code></li>
     1525</ol>
     1526<blockquote>
     1527<div>Purpose: Produces SP3 files from a Broadcast Ephemeris stream and a Broadcast Correction stream. The Broadcast Correction stream is formally introduced in BNC&#8217;s &#8216;Combine Corrections&#8217; table. Note that producing SP3 requires an ANTEX file because SP3 file content should be referred to CoM.</div></blockquote>
     1528<ol class="arabic simple" start="15">
     1529<li>Configuration File <code class="docutils literal"><span class="pre">Sp3ETRF2000PPP.bnc</span></code></li>
     1530</ol>
     1531<blockquote>
     1532<div>Purpose: Produce SP3 files from a Broadcast Ephemeris stream and a stream carrying ETRF2000 Broadcast Corrections. The Broadcast Correction stream is formally introduced in BNC&#8217;s &#8216;Combine Corrections&#8217; table. The configuration leads to a SP3 file containing orbits also referred to ETRF2000. Pulling in addition observations from a reference station at precisely known ETRF2000 position allows comparing an &#8216;INTERNAL&#8217; PPP solution with a known ETRF2000 reference coordinate.</div></blockquote>
     1533<ol class="arabic simple" start="16">
     1534<li>Configuration File <code class="docutils literal"><span class="pre">Upload.bnc</span></code></li>
     1535</ol>
     1536<blockquote>
     1537<div>Purpose: Upload orbits and clocks from a real-time GNSS engine to an Ntrip Broadcaster. For that the configuration reads precise orbits and clocks in RTNET format. It also reads a stream carrying Broadcast Ephemeris. BNC converts the orbits and clocks into Broadcast Corrections and encodes them to RTCM Version 3 SSR messages to finally upload them to an Ntrip Broadcaster. The Broadcast Correction stream is referred to satellite Antenna Phase Center (APC) and reference system IGS08. Orbits are saved on disk in SP3 format and clocks are saved in Clock RINEX format.</div></blockquote>
     1538<ol class="arabic simple" start="17">
     1539<li>Configuration File <code class="docutils literal"><span class="pre">Combi.bnc</span></code></li>
     1540</ol>
     1541<blockquote>
     1542<div>Purpose: Pull several streams carrying Broadcast Corrections and a Broadcast Ephemeris stream from an Ntrip Broadcaster to produce a combined Broadcast Correction stream. BNC encodes the combination product in RTCM Version 3 SSR messages and uploads that to an Ntrip Broadcaster. The Broadcast Correction stream is referred to satellite Antenna Phase Center (APC) and not to satellite Center of Mass (CoM). Its reference system is IGS08. Orbits are saved in SP3 format (referred to CoM) and clocks in Clock RINEX format.</div></blockquote>
     1543<ol class="arabic simple" start="18">
     1544<li>Configuration File <code class="docutils literal"><span class="pre">CombiPPP.bnc</span></code></li>
     1545</ol>
     1546<blockquote>
     1547<div>Purpose: This configuration equals the &#8216;Combi.bnc&#8217; configuration. However, the combined Broadcast Corrections are in addition used for an &#8216;INTERNAL&#8217; PPP solution based on observations from a static reference station with known precise coordinates. This allows a continuous quality check of the combination product through observing coordinate displacements.</div></blockquote>
     1548<ol class="arabic simple" start="19">
     1549<li>Configuration File <code class="docutils literal"><span class="pre">UploadEph.bnc</span></code></li>
     1550</ol>
     1551<blockquote>
     1552<div>Purpose: Pull a number of streams from reference stations to get hold of contained Broadcast Ephemeris messages. They are encoded to RTCM Version 3 format and uploaded for the purpose of providing a Broadcast Ephemeris stream with an update rate of 5 seconds.</div></blockquote>
     1553<ol class="arabic simple" start="20">
     1554<li>Configuration File <code class="docutils literal"><span class="pre">CompareSp3.bnc</span></code></li>
     1555</ol>
     1556<blockquote>
     1557<div>Purpose: Compare two SP3 files to calculate RMS values for orbit and clock differences. GPS satellite G05 and GLONASS satellite R18 are excluded from this comparison. Comparison results are saved in a logfile.</div></blockquote>
     1558<ol class="arabic simple" start="21">
     1559<li>Configuration File <code class="docutils literal"><span class="pre">Empty.bnc</span></code></li>
     1560</ol>
     1561<blockquote>
     1562<div>Purpose: Provide an empty example configuration file for BNC which only contains default settings.</div></blockquote>
     1563</div>
     1564<div class="section" id="command-line-configuration-options">
     1565<h3>Command Line configuration options<a class="headerlink" href="#command-line-configuration-options" title="Permalink to this headline">¶</a></h3>
     1566<p>The following configuration examples make use of BNC&#8217;s &#8216;Command Line Interface&#8217; (CLI). Configuration options are exclusively specified via command line. No configuration file is used. Examples are provided as shell scripts for a Linux system. They call BNC in &#8216;no window&#8217; batch mode (command line option <code class="docutils literal"><span class="pre">-nw</span></code>). The scripts expect &#8216;Example_Configs&#8217; to be the current working directory.</p>
     1567<ol class="arabic simple">
     1568<li>Shell Script <code class="docutils literal"><span class="pre">RinexQC.sh</span></code></li>
     1569</ol>
     1570<blockquote>
     1571<div>Purpose: Equals configuration file example <code class="docutils literal"><span class="pre">RinexQC.bnc</span></code>, checks the quality of a RINEX Version 3 file by means of a multipath analysis. Virtual X-Server &#8216;Xvfb&#8217; is operated while producing plot files in PNG format. BNC is offline. All results are saved on disk.</div></blockquote>
     1572<ol class="arabic simple" start="2">
     1573<li>Shell Script <code class="docutils literal"><span class="pre">RinexConcat.sh</span></code></li>
     1574</ol>
     1575<blockquote>
     1576<div>Purpose: Equals configuration file example <code class="docutils literal"><span class="pre">RinexConcat.bnc</span></code>, concatenates several RINEX Version 3 files to produce one compiled file and edit the marker name in the file header. The sampling interval is set to 30 seconds.</div></blockquote>
     1577<ol class="arabic simple" start="3">
     1578<li>Shell Script <code class="docutils literal"><span class="pre">RinexEph.sh</span></code></li>
     1579</ol>
     1580<blockquote>
     1581<div>Purpose: Equals configuration file example <code class="docutils literal"><span class="pre">RinexEph.bnc</span></code>, converts a RTCM stream with navigation messages to RINEX Navigation files. The configuration pulls a RTCM Version 3 stream with Broadcast Ephemeris coming from the real-time EUREF and IGS networks and saves hourly RINEX Version 3 Navigation files. BNC runs online until it&#8217;s terminated after 10 seconds. See <a class="reference external" href="http://igs.bkg.bund.de/ntrip/ephemeris">http://igs.bkg.bund.de/ntrip/ephemeris</a> for further real-time Broadcast Ephemeris resources.</div></blockquote>
     1582<ol class="arabic simple" start="4">
     1583<li>Shell Script <code class="docutils literal"><span class="pre">ScanLate.sh</span></code></li>
     1584</ol>
     1585<blockquote>
     1586<div>Purpose: Scan an observation stream for contained RTCM message types, print observation latencies. The output is saved in a logfile. Latencies are reported every 10 seconds. BNC runs online until it&#8217;s terminated after 20 seconds.</div></blockquote>
     1587<ol class="arabic simple" start="5">
     1588<li>Shell Script <code class="docutils literal"><span class="pre">RinexObs.sh</span></code></li>
     1589</ol>
     1590<blockquote>
     1591<div>Purpose: Equals configuration file example <code class="docutils literal"><span class="pre">RinexObs.bnc</span></code>, converts RTCM streams to RINEX Observation files. The configuration pulls streams from two Ntrip Broadcasters using Ntrip Version 1 to generate 15min 1Hz RINEX Version 3 Observation files. See <a class="reference external" href="http://igs.bkg.bund.de/ntrip/observations">http://igs.bkg.bund.de/ntrip/observations</a> for observation stream resources. BNC runs online until it&#8217;s terminated after 30 seconds.</div></blockquote>
     1592</div>
     1593<div class="section" id="command-line-configuration-options-overwriting-configuration-file-options">
     1594<h3>Command Line configuration options overwriting Configuration File options<a class="headerlink" href="#command-line-configuration-options-overwriting-configuration-file-options" title="Permalink to this headline">¶</a></h3>
     1595<p>For specific applications you may like to use your own set of standard configuration options from a configuration file and update some of its content via command line. When using a configuration file together with command line configuration options in one BNC call, the command line configuration options will always overrule options contained in the configuration file:</p>
     1596<p>Shell script <code class="docutils literal"><span class="pre">CompareSp3.sh</span></code>.</p>
     1597<p>Purpose: Equals configuration file example <code class="docutils literal"><span class="pre">CompareSp3.bnc</span></code>, compares two SP3 files to calculate RMS values for orbit and clock differences. However, instead of excluding GPS satellite G05 and GLONASS satellite R18 from the comparison as specified in <code class="docutils literal"><span class="pre">CompareSp3.bnc</span></code>, GPS satellite G06 and all GLONASS satellites are excluded via command line option. BNC runs offline. Comparison results are saved in a logfile.</p>
     1598</div>
     1599</div>
     1600<span id="document-chapter5"></span><span class="target" id="index-0"></span><div class="section" id="bnc-software-settings">
     1601<h2>BNC software settings<a class="headerlink" href="#bnc-software-settings" title="Permalink to this headline">¶</a></h2>
     1602<p>The general documentation approach is to create a separate chapter for each processing option in a sequence which follows the layout of BNC&#8217;s Graphical User Interface (GUI). The advantage is that searching for help by means of the document&#8217;s Table of Contents (TOC) is quite convenient.</p>
     1603<p>The following chapters describe how to set BNC program options. They explain the &#8216;Top Menu Bar&#8217;, the &#8216;Settings Canvas&#8217; with the processing options, the content of the &#8216;Streams Canvas&#8217; and &#8216;Logging Canvas&#8217;, and the &#8216;Bottom Menu Bar&#8217;.</p>
     1604<div class="section" id="top-menu-bar">
     1605<span id="index-1"></span><h3>Top Menu Bar<a class="headerlink" href="#top-menu-bar" title="Permalink to this headline">¶</a></h3>
     1606<p>The top menu bar allows selecting a font for the BNC windows, save configured options, or quit the program execution. It also provides access to the program&#8217;s documentation.</p>
     1607<div class="section" id="file">
     1608<h4>File<a class="headerlink" href="#file" title="Permalink to this headline">¶</a></h4>
     1609<p>The &#8216;File&#8217; button lets you</p>
     1610<ul class="simple">
     1611<li>Select an appropriate font. Use smaller font size if the BNC main window exceeds the size of your screen.</li>
     1612<li>Reread and save selected options in configuration file. When using &#8216;Reread &amp; Save Configuration&#8217; while BNC is already processing data, some configuration options become immediately effective on-the-fly without interrupting uninvolved threads while all of them are saved on disk. See section &#8216;Reread Configuration&#8217; for a list of on-the-fly changeable configuration options.</li>
     1613<li>Quit the BNC program.</li>
     1614</ul>
     1615</div>
     1616<div class="section" id="help">
     1617<h4>Help<a class="headerlink" href="#help" title="Permalink to this headline">¶</a></h4>
     1618<p>The &#8216;Help&#8217; button provides access to</p>
     1619<ul class="simple">
     1620<li>Help contents. You may keep the &#8216;Help Contents&#8217; window open while configuring BNC.</li>
     1621<li>A &#8216;Flow Chart&#8217; showing BNC linked to a real-time GNSS network engine such as RTNET.</li>
     1622<li>General information about BNC. Close the &#8216;About BNC&#8217; window to continue working with BNC.</li>
     1623</ul>
     1624</div>
     1625</div>
     1626<div class="section" id="network">
     1627<span id="index-2"></span><h3>Network<a class="headerlink" href="#network" title="Permalink to this headline">¶</a></h3>
     1628<p>You may need to specify a proxy when running BNC in a protected network. You may also like to use the Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL) cryptographic protocols for secure Ntrip communication over the Internet.</p>
     1629<div class="section" id="proxy-usage-in-a-protected-lan">
     1630<span id="index-3"></span><h4>Proxy - Usage in a protected LAN<a class="headerlink" href="#proxy-usage-in-a-protected-lan" title="Permalink to this headline">¶</a></h4>
     1631<p>If you are running BNC within a protected Local Area Network (LAN), you might need to use a proxy server to access the Internet. Enter your proxy server IP and port number in case one is operated in front of BNC. If you do not know the IP and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.</p>
     1632<p>Note that IP streaming is often not allowed in a LAN. In this case you need to ask your network administrator for an appropriate modification of the local security policy or for the installation of a TCP relay to the Ntrip Broadcaster you need to access. If this is not possible, you might need to run BNC outside your LAN on a host that has unobstructed connection to the Internet.</p>
     1633</div>
     1634<div class="section" id="ssl-transport-layer-security">
     1635<span id="index-4"></span><h4>SSL - Transport Layer Security<a class="headerlink" href="#ssl-transport-layer-security" title="Permalink to this headline">¶</a></h4>
     1636<p>Communication with an Ntrip Broadcaster over Secure Sockets Layer (SSL) as well as the download of RINEX skeleton files when available from HTTPS websites requires the exchange of client and/or server certificates. Specify the path to a directory where you save certificates on your system. You may like to check out <a class="reference external" href="http://software.rtcm-ntrip.org/wiki/Certificates">http://software.rtcm-ntrip.org/wiki/Certificates</a> for a list of known Ntrip Server certificates. You may also just try communication via SSL to check out whether this is supported by the involved Ntrip Broadcaster.</p>
     1637<p>SSL communication may involve queries coming from the Ntrip Broadcaster or from a HTTPS website hosting RINEX skeletons. Such a query could show up under BNC&#8217;s &#8216;Log&#8217; tab especially when self-signed SSL certificates are used. Example:</p>
     1638<div class="highlight-default"><div class="highlight"><pre><span class="n">SSL</span> <span class="n">Error</span>
     1639<span class="n">Server</span> <span class="n">Certificate</span> <span class="n">Issued</span> <span class="n">by</span><span class="p">:</span>
     1640<span class="n">GNSS</span> <span class="n">Data</span> <span class="n">Center</span>
     1641<span class="n">BKG</span> <span class="p">(</span><span class="n">Bundesamt</span> <span class="n">für</span> <span class="n">Geodäsie</span> <span class="n">und</span> <span class="n">Kartographie</span><span class="p">)</span>
     1642<span class="n">Cannot</span> <span class="n">be</span> <span class="n">verified</span>
     1643
     1644<span class="n">The</span> <span class="n">issuer</span> <span class="n">certificate</span> <span class="n">of</span> <span class="n">a</span> <span class="n">locally</span> <span class="n">looked</span> <span class="n">up</span> <span class="n">certificate</span> <span class="n">could</span> <span class="ow">not</span> <span class="n">be</span> <span class="n">found</span>
     1645<span class="n">The</span> <span class="n">root</span> <span class="n">CA</span> <span class="n">certificate</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">trusted</span> <span class="k">for</span> <span class="n">this</span> <span class="n">purpose</span>
     1646<span class="n">No</span> <span class="n">certificates</span> <span class="n">could</span> <span class="n">be</span> <span class="n">verified</span>
     1647
     1648<span class="n">Queries</span> <span class="n">should</span> <span class="ow">not</span> <span class="n">be</span> <span class="n">received</span> <span class="n">by</span> <span class="n">a</span> <span class="n">client</span> <span class="n">when</span> <span class="n">a</span> <span class="n">server</span> <span class="n">uses</span> <span class="n">official</span> <span class="n">SSL</span> <span class="n">certificates</span><span class="o">.</span>
     1649</pre></div>
     1650</div>
     1651<p>Tick &#8216;Ignore SSL authorization errors&#8217; if you generally trust the server and do not want to be bothered with this. Note that SSL communication is usually done over port 443 <a class="reference internal" href="#fig-7"><span class="std std-numref">(Fig. 7)</span></a>.</p>
     1652<div class="figure" id="id22">
     1653<span id="fig-7"></span><a class="reference internal image-reference" href="_images/fig_7.png"><img alt="_images/fig_7.png" src="_images/fig_7.png" style="width: 768.0px; height: 287.0px;" /></a>
     1654<p class="caption"><span class="caption-number">Fig. 7 </span><span class="caption-text">BNC&#8217;s &#8216;Network&#8217; panel configured to ignore eventually occurring SSL error messages.</span></p>
     1655</div>
     1656</div>
     1657</div>
     1658<div class="section" id="general">
     1659<span id="index-5"></span><h3>General<a class="headerlink" href="#general" title="Permalink to this headline">¶</a></h3>
     1660<p>The following defines general settings for BNC&#8217;s logfile, file handling, reconfiguration on-the-fly, and auto-start <a class="reference internal" href="#fig-7b"><span class="std std-numref">(Fig. 8)</span></a>.</p>
     1661<div class="figure" id="id23">
     1662<span id="fig-7b"></span><a class="reference internal image-reference" href="_images/fig_7b.png"><img alt="_images/fig_7b.png" src="_images/fig_7b.png" style="width: 1018.0px; height: 745.0px;" /></a>
     1663<p class="caption"><span class="caption-number">Fig. 8 </span><span class="caption-text">General BNC options</span></p>
     1664</div>
     1665<div class="section" id="logfile-optional">
     1666<span id="index-6"></span><h4>Logfile - optional<a class="headerlink" href="#logfile-optional" title="Permalink to this headline">¶</a></h4>
     1667<p>Records of BNC&#8217;s activities are shown in the &#8216;Log&#8217; tab on the bottom of the main window. These logs can be saved into a file when a valid path is specified in the &#8216;Logfile (full path)&#8217; field. The logfile name will automatically be extended by a string &#8216;_YYMMDD&#8217; for the current date. This leads to series of daily logfiles when running BNC continuously. Message logs cover the communication status between BNC and the Ntrip Broadcaster as well as problems that may occur in the communication link, stream availability, stream delay, stream conversion etc. All times are given in UTC. The default value for &#8216;Logfile (full path)&#8217; is an empty option field, meaning that BNC logs will not be saved into a file.</p>
     1668<p>The following is an example for the content of a logfile written by BNC when operated in Single Point Positioning (SPP) mode:</p>
     1669<div class="highlight-console"><div class="highlight"><pre><span class="go">15-06-30 11:40:17 ========== Start BNC v2.12 (MAC) ==========</span>
     1670<span class="go">15-06-30 11:40:17 Panel &#39;PPP&#39; active</span>
     1671<span class="go">15-06-30 11:40:17 CUT07: Get data in RTCM 3.x format</span>
     1672<span class="go">15-06-30 11:40:17 RTCM3EPH: Get data in RTCM 3.x format</span>
     1673<span class="go">15-06-30 11:40:17 Configuration read: PPP.conf, 2 stream(s)</span>
     1674
     1675<span class="go">15-06-30 11:40:21 2015-06-30_11:40:19.000 CUT07 X = -2364337.6814 Y = 4870283.8110 Z = -3360808.3085 NEU:  -0.0000  -0.0000  -0.0000 TRP:  +2.4026  -0.0001</span>
     1676<span class="go">15-06-30 11:40:22 2015-06-30_11:40:20.000 CUT07 X = -2364337.6853 Y = 4870283.8130 Z = -3360808.3082 NEU:  +1.1639  +0.6988  -2.1178 TRP:  +2.4018  +0.0003</span>
     1677<span class="go">15-06-30 11:40:23 2015-06-30_11:40:21.000 CUT07 X = -2364337.6862 Y = 4870283.8155 Z = -3360808.3107 NEU:  +0.1317  -0.4655  -4.4614 TRP:  +2.4009  +0.0009</span>
     1678<span class="go">15-06-30 11:40:24 2015-06-30_11:40:22.000 CUT07 X = -2364337.6864 Y = 4870283.8106 Z = -3360808.3099 NEU:  +0.1543  +0.2121  -1.0190 TRP:  +2.4022  +0.0009</span>
     1679<span class="go">15-06-30 11:40:25 2015-06-30_11:40:23.000 CUT07 X = -2364337.6861 Y = 4870283.8111 Z = -3360808.3105 NEU:  -0.9782  +0.0916  -2.3544 TRP:  +2.4017  +0.0013</span>
     1680<span class="go">15-06-30 11:40:26 2015-06-30_11:40:24.000 CUT07 X = -2364337.6884 Y = 4870283.8123 Z = -3360808.3103 NEU:  -0.5606  -0.0938  -1.9498 TRP:  +2.4018  +0.0016</span>
     1681<span class="go">15-06-30 11:40:27 2015-06-30_11:40:25.000 CUT07 X = -2364337.6913 Y = 4870283.8133 Z = -3360808.3122 NEU:  -0.1799  -0.1525  -4.8142 TRP:  +2.4007  +0.0025</span>
     1682<span class="go">15-06-30 11:40:28 2015-06-30_11:40:26.000 CUT07 X = -2364337.6919 Y = 4870283.8171 Z = -3360808.3184 NEU:  +0.7497  +0.7994  -2.0363 TRP:  +2.4018  +0.0032</span>
     1683<span class="go">15-06-30 11:40:29 2015-06-30_11:40:27.000 CUT07 X = -2364337.6923 Y = 4870283.8196 Z = -3360808.3230 NEU:  +0.8099  +0.5592  -2.8552 TRP:  +2.4015  +0.0039</span>
     1684<span class="go">15-06-30 11:40:30 2015-06-30_11:40:28.000 CUT07 X = -2364337.6960 Y = 4870283.8219 Z = -3360808.3222 NEU:  -0.2952  +1.9737  -4.5565 TRP:  +2.4008  +0.0047</span>
     1685<span class="go">15-06-30 11:40:31 2015-06-30_11:40:29.000 CUT07 X = -2364337.6982 Y = 4870283.8209 Z = -3360808.3209 NEU:  +0.3563  +2.1067  -5.5327 TRP:  +2.4005  +0.0057</span>
     1686<span class="go">...</span>
     1687</pre></div>
     1688</div>
     1689</div>
     1690<div class="section" id="append-files-optional">
     1691<h4>Append Files - optional<a class="headerlink" href="#append-files-optional" title="Permalink to this headline">¶</a></h4>
     1692<p>When BNC is started, new files are created by default and existing files with the same name will be overwritten. However, users might want to append existing files following a restart of BNC, a system crash or a BNC crash. Tick &#8216;Append files&#8217; to continue with existing files and keep what has been recorded so far. Note that option &#8216;Append files&#8217; affects all types of files created by BNC.</p>
     1693</div>
     1694<div class="section" id="reread-configuration-optional">
     1695<h4>Reread Configuration - optional<a class="headerlink" href="#reread-configuration-optional" title="Permalink to this headline">¶</a></h4>
     1696<p>When operating BNC online in &#8216;no window&#8217; mode (command line option <code class="docutils literal"><span class="pre">-nw</span></code>), some configuration options can nevertheless be changed on-the-fly without interrupting the running process. For that, you force the program to reread parts of its configuration in pre-defined intervals from disk. Select &#8216;1 min&#8217;, &#8216;1 hour&#8217;, or &#8216;1 day&#8217; to let BNC reread on-the-fly changeable configuration options every full minute, hour, or day. This lets in-between edited options become effective without interrupting uninvolved threads.</p>
     1697<p>Note that following configuration options saved on disk can be changed/edited on-the-fly while BNC is already processing data:</p>
     1698<ul class="simple">
     1699<li>&#8216;mountPoints&#8217; to change the selection of streams to be processed, see section &#8216;Streams Canvas&#8217;;</li>
     1700<li>&#8216;outWait&#8217; to change the &#8216;Wait for full obs epoch&#8217; option, see section &#8216;Feed Engine&#8217;;</li>
     1701<li>&#8216;outSampl&#8217; to change the &#8216;Sampling&#8217; option, see section &#8216;Feed Engine&#8217;;</li>
     1702<li>&#8216;outFile&#8217; to change the &#8216;File&#8217; name where synchronized observations are saved in plain ASCII format, see section &#8216;Feed Engine&#8217;.</li>
     1703</ul>
     1704</div>
     1705<div class="section" id="auto-start-optional">
     1706<span id="index-7"></span><h4>Auto Start - optional<a class="headerlink" href="#auto-start-optional" title="Permalink to this headline">¶</a></h4>
     1707<p>You may like to auto-start BNC at startup time in window mode with pre-assigned configuration options. This may be required e.g. immediately after booting your system. Tick &#8216;Auto start&#8217; to supersede the usage of the &#8216;Start&#8217; button. Make sure that you maintain a link to BNC for that in your Autostart directory (Windows systems) or call BNC in a script below directory <code class="docutils literal"><span class="pre">/etc/init.d</span></code> (Unix/Linux/Mac OS X systems).</p>
     1708<p>See BNC&#8217;s command line option <code class="docutils literal"><span class="pre">-nw</span></code> for an auto-start of BNC in &#8216;no window&#8217; mode.</p>
     1709</div>
     1710<div class="section" id="raw-output-file-optional">
     1711<span id="index-8"></span><h4>Raw Output File - optional<a class="headerlink" href="#raw-output-file-optional" title="Permalink to this headline">¶</a></h4>
     1712<p>BNC can save all data coming in through various streams in one daily file. The information is recorded in the specified &#8216;Raw output file&#8217; in the received order and format. This feature allows a BNC user to run the PPP option offline with observations, Broadcast Corrections, and Broadcast Ephemeris being read from a previously saved file. It supports the offline repetition of a real-time situation for debugging purposes (Record &amp; Replay functionality) and is not meant for post processing.</p>
     1713<p>Data will be saved in blocks in the received format separated by ASCII time stamps like (example):</p>
     1714<div class="highlight-console"><div class="highlight"><pre><span class="go">2010-08-03T18:05:28 RTCM3EPH RTCM_3 67</span>
     1715</pre></div>
     1716</div>
     1717<p>This example block header tells you that 67 bytes were saved in the data block following this time stamp. The information in this block is encoded in RTCM Version 3 format, comes from mountpoint RTCM3EPH and was received at 18:05:28 UTC on 2010-08-03. BNC adds its own time stamps in order to allow the reconstruction of a recorded real-time situation.</p>
     1718<p>The default value for &#8216;Raw output file&#8217; is an empty option field, meaning that BNC will not save all raw data into one single daily file.</p>
     1719</div>
     1720</div>
     1721<div class="section" id="rinex-observations">
     1722<span id="index-9"></span><h3>RINEX Observations<a class="headerlink" href="#rinex-observations" title="Permalink to this headline">¶</a></h3>
     1723<p>Observations will be converted to RINEX if they come in either RTCM Version 2 or RTCM Version 3 format. Depending on the RINEX version and incoming RTCM message types, files generated by BNC may contain data from GPS, GLONASS, Galileo, SBAS, QZSS, and/or BDS (BeiDou). In case an observation type is listed in the RINEX header but the corresponding observation is unavailable, its value is set to zero &#8216;0.000&#8217; or left blank. Note that the &#8216;RINEX TYPE&#8217; field in the RINEX Version 3 Observation file header is always set to &#8216;M(MIXED)&#8217; or &#8216;Mixed&#8217; even if the file only contains data from one system.</p>
     1724<p>It is important to understand that converting RTCM streams to RINEX files requires a priori information on observation types for specifying a complete RINEX header. Regarding the RINEX Version 2 file header, BNC simply introduces all observation types defined in the Version 2 standard and later reports &#8216;0.000&#8217; for observations which are not received. However, following this approach is not possible for RINEX Version 3 files from RTCM Version 3 MSM streams because of the huge number of observation types, which might in principle show up. The solution implemented in BNC is to start with RINEX Version 3 observation type records from skeleton files (see section &#8216;Skeleton Extension&#8217; and &#8216;Skeleton Mandatory&#8217;) and switch to a default selection of observation types when such file is not available or does not contain the required information. The following is the default selection of observation types specified for a RINEX Version 3 file:</p>
     1725<div class="highlight-console"><div class="highlight"><pre><span class="go">C    9 C2I L2I S2I C6I L6I S6I C7I L7I S7I                  SYS / # / OBS TYPES</span>
     1726<span class="go">E   12 C1X L1X SX1 C5X L5X SX5 C7X L7X SX7 C8X L8X SX8      SYS / # / OBS TYPES</span>
     1727<span class="go">G   15 C1C L1C S1C C1W L1W S1W C2X L2X S2X C2W L2W S2W C5X  SYS / # / OBS TYPES</span>
     1728<span class="go">       L5X S5X                                              SYS / # / OBS TYPES</span>
     1729<span class="go">J   24 C1C L1C S1C C1S L1S S1S C1L L1L S1L C1X L1X S1X C2S  SYS / # / OBS TYPES</span>
     1730<span class="go">       L2S S2S C2L L2L S2L C2X L2X S2X C5X L5X S5X          SYS / # / OBS TYPES</span>
     1731<span class="go">R   12 C1C L1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P      SYS / # / OBS TYPES</span>
     1732<span class="go">S    9 C1C L1C S1C C5I L5I S5I C5Q L5Q S5Q                  SYS / # / OBS TYPES</span>
     1733</pre></div>
     1734</div>
     1735<p>Please note that RTCM Version 3 messages 1084 for GLONASS observations do not contain the GLONASS channel numbers. These observation messages can only be converted to RINEX when you add messages which include the channel numbers. This could be done by means of an additional stream carrying 1087 GLONASS observation messages or an additional stream carrying 1020 GLONASS ephemeris messages. You could also consider setting up a stream which contains both, the 1084 and the 1020 messages.</p>
     1736<p>The screenshot below shows an example setup of BNC when converting streams to RINEX. Streams are coming from various Ntrip Broadcasters as well as from a serial communication link. Specifying a decoder string &#8216;ZERO&#8217; would mean to not convert the affected stream but save its content as received. The &#8216;SSL Error&#8217; recorded in the &#8216;Log&#8217; tab is caused by the fact that observation stream downloads from IGS and MGEX Broadcasters initiate the download of RINEX skeleton files from a HTTPS (TLS/SSL) website and BNC has been configured in this example to ignore SSL errors as shown in the preceding &#8216;Network&#8217; panel screenshot <a class="reference internal" href="#fig-8"><span class="std std-numref">(Fig. 9)</span></a>.</p>
     1737<div class="figure" id="id24">
     1738<span id="fig-8"></span><a class="reference internal image-reference" href="_images/fig_8.png"><img alt="_images/fig_8.png" src="_images/fig_8.png" style="width: 900.0px; height: 729.0px;" /></a>
     1739<p class="caption"><span class="caption-number">Fig. 9 </span><span class="caption-text">BNC translating incoming observation streams to 15 min RINEX Version 3 Observation files.</span></p>
     1740</div>
     1741<div class="section" id="rinex-filenames">
     1742<span id="index-10"></span><h4>RINEX Filenames<a class="headerlink" href="#rinex-filenames" title="Permalink to this headline">¶</a></h4>
     1743<p>The default for RINEX filenames in BNC follows the convention of RINEX Version 2. However, the software provides options to alternatively follow the filename convention of RINEX Version 3. RINEX Version 2 filenames are derived by BNC from the first 4 characters of the corresponding stream&#8217;s mountpoint (4-character Station ID). For example, data from mountpoints FRANKFURT and WETTZELL will have hourly RINEX Observation files named:</p>
     1744<div class="highlight-default"><div class="highlight"><pre><span class="n">FRAN</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1745<span class="n">WETT</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1746</pre></div>
     1747</div>
     1748<p>where &#8216;ddd&#8217; is the day of year, &#8216;h&#8217; is a letter which corresponds to an hour long UTC time block and &#8216;yy&#8217; is the year.</p>
     1749<p>If there is more than one stream with identical 4-character Station ID (same first 4 characters for their mountpoints), the mountpoint strings are split into two sub-strings and both become part of the RINEX filename. For example, when simultaneously retrieving data from mountpoints FRANKFURT and FRANCE, their hourly RINEX Version 2 Observation files are named as:</p>
     1750<div class="highlight-default"><div class="highlight"><pre><span class="n">FRAN</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="n">_KFURT</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1751<span class="n">FRAN</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="n">_CE</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1752</pre></div>
     1753</div>
     1754<p>If several streams show up with exactly the same mountpoint name (example: BRUS0 from www.euref-ip.net and BRUS0 from www.igs-ip.net), BNC adds an integer number to the filename, leading e.g. to hourly RINEX Version 2 Observation files like:</p>
     1755<div class="highlight-default"><div class="highlight"><pre><span class="n">BRUS</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="n">_0</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1756<span class="n">BRUS</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}</span><span class="n">_1</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1757</pre></div>
     1758</div>
     1759<p>Note that RINEX Version 2 filenames for all intervals less than 1 hour follow the filename convention for 15 minutes RINEX Version 2 Observation files e.g.:</p>
     1760<div class="highlight-default"><div class="highlight"><pre><span class="n">FRAN</span><span class="p">{</span><span class="n">ddd</span><span class="p">}{</span><span class="n">h</span><span class="p">}{</span><span class="n">mm</span><span class="p">}</span><span class="o">.</span><span class="p">{</span><span class="n">yy</span><span class="p">}</span><span class="n">O</span>
     1761</pre></div>
     1762</div>
     1763<p>where &#8216;mm&#8217; is the starting minute within the hour.</p>
     1764<p>In case of RINEX Version 3 filenames, the conventions are summarized in <a class="reference internal" href="#tab-rinex-fn-conv"><span class="std std-numref">Table 2</span></a>.</p>
     1765<table border="1" class="docutils" id="id25">
     1766<span id="tab-rinex-fn-conv"></span><caption><span class="caption-number">Table 2 </span><span class="caption-text">Conventions of RINEX 3 file names.</span><a class="headerlink" href="#id25" title="Permalink to this table">¶</a></caption>
     1767<colgroup>
     1768<col width="32%" />
     1769<col width="23%" />
     1770<col width="45%" />
     1771</colgroup>
     1772<thead valign="bottom">
     1773<tr class="row-odd"><th class="head"><strong>Filename Parameter</strong></th>
     1774<th class="head"><strong># Characters</strong></th>
     1775<th class="head"><strong>Meaning</strong></th>
     1776</tr>
     1777</thead>
     1778<tbody valign="top">
     1779<tr class="row-even"><td>Name</td>
     1780<td>9</td>
     1781<td>Site, station and country code</td>
     1782</tr>
     1783<tr class="row-odd"><td>S</td>
     1784<td>1</td>
     1785<td>Data source</td>
     1786</tr>
     1787<tr class="row-even"><td>Start Time</td>
     1788<td>11</td>
     1789<td>YYYYDDDHHMM</td>
     1790</tr>
     1791<tr class="row-odd"><td>Period</td>
     1792<td>3</td>
     1793<td>File period</td>
     1794</tr>
     1795<tr class="row-even"><td>Obs. Freq.</td>
     1796<td>3</td>
     1797<td>Observation frequency</td>
     1798</tr>
     1799<tr class="row-odd"><td>Content</td>
     1800<td>2</td>
     1801<td>Content type</td>
     1802</tr>
     1803<tr class="row-even"><td>Format</td>
     1804<td>3</td>
     1805<td>File format</td>
     1806</tr>
     1807<tr class="row-odd"><td>Compression</td>
     1808<td>2-3</td>
     1809<td>Compression method (optional)</td>
     1810</tr>
     1811</tbody>
     1812</table>
     1813<p>Example for Mixed RINEX Version 3 GNSS observation filename, file containing 1 hour of data, one observation every second, &#8216;MO&#8217; standing for &#8216;Mixed Observations&#8217;:</p>
     1814<div class="highlight-default"><div class="highlight"><pre><span class="n">ALGO00CAN_R_20121601000_01H_01S_MO</span><span class="o">.</span><span class="n">rnx</span>
     1815</pre></div>
     1816</div>
     1817<p>Note that filename details are produced from the stream&#8217;s mountpoint as well as corresponding BNC settings and meta data from the Ntrip Broadcaster source-table.</p>
     1818</div>
     1819<div class="section" id="directory-optional">
     1820<span id="index-11"></span><h4>Directory - optional<a class="headerlink" href="#directory-optional" title="Permalink to this headline">¶</a></h4>
     1821<p>Here you can specify the path to where the RINEX Observation files will be stored. If the specified directory does not exist, BNC will not create RINEX Observation files. Default value for &#8216;Directory&#8217; is an empty option field, meaning that no RINEX Observation files will be written.</p>
     1822</div>
     1823<div class="section" id="file-interval-mandatory-if-directory-is-set">
     1824<span id="index-12"></span><h4>File Interval - mandatory if &#8216;Directory&#8217; is set<a class="headerlink" href="#file-interval-mandatory-if-directory-is-set" title="Permalink to this headline">¶</a></h4>
     1825<p>Select the length of the RINEX Observation file to be generated. The default value is 15 minutes.</p>
     1826</div>
     1827<div class="section" id="sampling-mandatory-if-directory-is-set">
     1828<span id="index-13"></span><h4>Sampling - mandatory if &#8216;Directory&#8217; is set<a class="headerlink" href="#sampling-mandatory-if-directory-is-set" title="Permalink to this headline">¶</a></h4>
     1829<p>Select the RINEX Observation sampling interval in seconds. A value of zero &#8216;0&#8217; tells BNC to store all received epochs into RINEX. This is the default value.</p>
     1830</div>
     1831<div class="section" id="skeleton-extension-optional">
     1832<span id="index-14"></span><h4>Skeleton Extension - optional<a class="headerlink" href="#skeleton-extension-optional" title="Permalink to this headline">¶</a></h4>
     1833<p>Whenever BNC starts to generate RINEX Observation files (and then once every day at midnight), it first tries to retrieve information needed for RINEX headers from so-called fully machine-readable public RINEX header skeleton files which are derived from sitelogs. An HTTP or HTTPS link to a directory containing these skeleton files may be available through data field number 7 of the affected NET record in the source-table. See <a class="reference external" href="http://www.epncb.oma.be:80/stations/log/skl/brus.skl">http://www.epncb.oma.be:80/stations/log/skl/brus.skl</a> for an example of a public RINEX header skeleton file for EPN station Brussels. Note that the download of RINEX skeleton files from HTTPS websites requires the exchange of client and/or server certificates. Clarify &#8216;SSL&#8217; options offered through panel &#8216;Network&#8217; for details.</p>
     1834<p>Sometimes public RINEX header skeleton files are not available, their content is not up to date, or you need to put additional/optional records in the RINEX header. For that, BNC allows using personal skeleton files that contain the header records you would like to include. You can derive a personal RINEX header skeleton file from the information given in an up to date sitelog. A file in the RINEX Observations &#8216;Directory&#8217; with a &#8216;Skeleton extension&#8217; suffix is interpreted by BNC as a personal RINEX header skeleton file for the corresponding stream.</p>
     1835<p>When producing RINEX Observation files from mountpoints (examples) &#8216;BRUS0&#8217;, &#8216;FRANKFURT&#8217;, and &#8216;WETTZELL&#8217;, the following skeleton filenames would be accepted:</p>
     1836<div class="highlight-console"><div class="highlight"><pre><span class="go">brus.skl</span>
     1837<span class="go">fran.skl</span>
     1838<span class="go">wett.skl</span>
     1839</pre></div>
     1840</div>
     1841<p>if &#8216;Skeleton extension&#8217; is set to &#8216;skl&#8217;.</p>
     1842<p>Note the following regulations regarding personal RINEX header skeleton files:</p>
     1843<ul class="simple">
     1844<li>If such a file exists in the &#8216;RINEX directory&#8217;, the corresponding public RINEX header skeleton file is ignored. The RINEX header is generated solely from the content of the personal skeleton.</li>
     1845<li>Personal skeletons should contain a complete first header record of type:</li>
     1846</ul>
     1847<div class="highlight-console"><div class="highlight"><pre><span class="go">RINEX VERSION / TYPE</span>
     1848</pre></div>
     1849</div>
     1850<p>They should then contain an empty header record of type:</p>
     1851<div class="highlight-console"><div class="highlight"><pre><span class="go">PGM / RUN BY / DATE</span>
     1852</pre></div>
     1853</div>
     1854<p>BNC will complete this line and include it in the RINEX file header.</p>
     1855<ul class="simple">
     1856<li>They should further contain complete header records of type:</li>
     1857</ul>
     1858<div class="highlight-console"><div class="highlight"><pre><span class="go">MARKER NAME</span>
     1859<span class="go">OBSERVER / AGENCY</span>
     1860<span class="go">REC # / TYPE / VERS</span>
     1861<span class="go">ANT # / TYPE</span>
     1862<span class="go">APPROX POSITION XYZ</span>
     1863<span class="go">ANTENNA: DELTA H/E/N</span>
     1864<span class="go">WAVELENGTH FACT L1/2 (RINEX Version 2)</span>
     1865<span class="go">SYS / # / OBS TYPES (for RINEX Version 3 files, will be ignored in Version 2 files)</span>
     1866</pre></div>
     1867</div>
    8091868<ul>
    810 <li>Pushing the 'Reread & Save Configuration' button lets BNC immediately reread its configuration from GUI input fields to make them active configuration options. Then BNC saves them on disk.</li>
    811 <li>Specifying the 'Reread configuration' option lets BNC reread its configuration from disk at pre-defined intervals.</li>
    812 </ul>
    813 <li>A specific BNC configuration can be started in 'no window' mode from scratch without a configuration file if options for the active configuration level (2) are provided via command line.</li>
    814 </ul>
    815 </p>
    816 
    817 <p><h4>1.6.1 <a name="introExamples">Examples</h4></p>
    818 
    819 <p>
    820 BNC comes with a number of configuration examples which can be used on all operating systems. Copy the complete directory 'Example_Configs' which comes with the software to your disc. It includes sub-directories 'Input' and 'Output'. There are several ways to start BNC using one of the example configurations:
    821 </p>
    822 <ul>
    823 <li>
    824 On graphical systems (except for Mac systems), you may use the computer mouse to 'drag' a configuration file icon and 'drop' it on top of BNC's program icon.
     1869<li><p class="first">They may contain any other optional complete header record as defined in the RINEX documentation.</p>
    8251870</li>
    826 <li>
    827 You could also start BNC using a command line for naming a specific configuration file (suggested e.g. for Mac systems):<br>
    828 /Applications/bnc.app/Contents/MacOS/bnc --conf &lt;configFileName&gt;
     1871<li><p class="first">They should also contain an empty header record of type:</p>
     1872<div class="highlight-none"><div class="highlight"><pre>#/ TYPES OF OBSERV (only RINEX Version 2, will be ignored when in Version 3 files)
     1873</pre></div>
     1874</div>
    8291875</li>
    830 <li>
    831 On non-graphical systems or when running BNC in batch mode in the background you may start the program using a command line with a configuration file option in '<u>n</u>o <u>w</u>indow' mode (example for Windows systems):<br>
    832 bnc.exe --conf &lt;configFileName&gt; --nw
     1876<li><p class="first">BNC will include these lines in the final RINEX file header together with an additional</p>
     1877<div class="highlight-console"><div class="highlight"><pre><span class="go">COMMENT</span>
     1878</pre></div>
     1879</div>
     1880<p>line describing the source of the stream.</p>
    8331881</li>
    834 </ul>
    835 <p>
    836 Although it's not a must, we suggest that you always create BNC configuration files with filename extension '.bnc'.
    837 </p>
    838 
    839 <p>
    840 We furthermore suggest for convenience reasons that you configure your system to automatically start BNC when you double-click a file with the filename extension '.bnc'. The following describes what to do on MS Windows systems to associate the BNC program to such configuration files:
    841 </p>
    842 
    843 <ol type=b>
    844 <li>Right-click a file that has the extension '.bnc' and then click 'Open'. If the 'Open' command is not available, click 'Open With' or double-click the file.</li>
    845 <li>Windows displays a dialog box that says that the system cannot open this file. The dialog box offers several options for selecting a program.</li>
    846 <li>Click 'Select the program from a list', and then click 'OK'.</li>
    847 <li>The 'Open With' dialog box is displayed. Click 'Browse', locate and then click the BNC program, and then click 'Open'.</li>
    848 <li>Click to select the 'Always use the selected program to open this kind of file' check box.</li>
    849 <li>Click 'OK'.</li>
     1882<li><p class="first">They should finally contain an empty last header record of type:</p>
     1883<div class="highlight-console"><div class="highlight"><pre><span class="go">END OF HEADER</span>
     1884</pre></div>
     1885</div>
     1886</li>
     1887<li><p class="first">They must not contain a header record of type:</p>
     1888<div class="highlight-console"><div class="highlight"><pre><span class="go">TIME OF FIRST OBS</span>
     1889</pre></div>
     1890</div>
     1891</li>
     1892</ul>
     1893<p>If neither a public nor a personal RINEX header skeleton file is available for BNC, a default header will be used. The following is a skeleton example for a RINEX file:</p>
     1894<div class="highlight-console"><div class="highlight"><pre><span class="go">                    OBSERVATION DATA    M (MIXED)           RINEX VERSION / TYPE</span>
     1895<span class="go">                                                            PGM / RUN BY / DATE</span>
     1896<span class="go">CUT0                                                        MARKER NAME</span>
     1897<span class="go">59945M001                                                   MARKER NUMBER</span>
     1898<span class="go">5023K67889          TRIMBLE NETR9       5.01                REC # / TYPE / VERS</span>
     1899<span class="go">4928353386          TRM59800.00     SCIS                    ANT # / TYPE</span>
     1900<span class="go"> -2364337.2699  4870285.5624 -3360809.8398                  APPROX POSITION XYZ</span>
     1901<span class="go">        0.0000        0.0000        0.0000                  ANTENNA: DELTA H/E/N</span>
     1902<span class="go">gnss@curtin.edu.au  CUT                                     OBSERVER / AGENCY</span>
     1903<span class="go">C   10 C1I L1I D1I S1I C6I L6I S6I C7I L7I S7I              SYS / # / OBS TYPES</span>
     1904<span class="go">E   13 C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X  SYS / # / OBS TYPES</span>
     1905<span class="go">G   13 C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X  SYS / # / OBS TYPES</span>
     1906<span class="go">J   19 C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X  SYS / # / OBS TYPES</span>
     1907<span class="go">       C5X L5X S5X C6L L6L S6L                              SYS / # / OBS TYPES</span>
     1908<span class="go">R   13 C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P  SYS / # / OBS TYPES</span>
     1909<span class="go">S    7 C1C L1C D1C S1C C5I L5I S5I                          SYS / # / OBS TYPES</span>
     1910<span class="go">PORTIONS OF THIS HEADER GENERATED BY THE IGS CB FROM        COMMENT</span>
     1911<span class="go">SITELOG cut0_20150507.log                                   COMMENT</span>
     1912<span class="go">                                                            END OF HEADER</span>
     1913</pre></div>
     1914</div>
     1915</div>
     1916<div class="section" id="skeleton-mandatory-optional">
     1917<span id="index-15"></span><h4>Skeleton Mandatory - optional<a class="headerlink" href="#skeleton-mandatory-optional" title="Permalink to this headline">¶</a></h4>
     1918<p>Tick check box &#8216;Skeleton mandatory&#8217; in case you want that RINEX files are only produced when skeleton files are available for BNC. If no skeleton file is available for a particular source, then no RINEX observation file will be produced from the affected stream.</p>
     1919<p>Note that a skeleton file contains RINEX header information such as receiver and antenna types. In case of stream conversion to RINEX Version 3, a skeleton file should also contain information on potentially available observation types. A missing skeleton file will force BNC to only save a default set of RINEX 3 observation types.</p>
     1920</div>
     1921<div class="section" id="script-optional">
     1922<h4>Script - optional<a class="headerlink" href="#script-optional" title="Permalink to this headline">¶</a></h4>
     1923<p>Whenever a RINEX Observation file is saved, you might want to compress, copy or upload it immediately via FTP. BNC allows you to execute a script/batch file to carry out these operations. To do that, specify the full path to such script/batch file. BNC will pass the RINEX Observation file path to the script as a command line parameter (%1 on Windows systems, $1 on Unix/Linux/Mac OS X systems).</p>
     1924<p>The triggering event for calling the script or batch file is the end of a RINEX Observation file &#8216;Interval&#8217;. If that is overridden by a stream outage, the triggering event is the stream reconnection.</p>
     1925<p>As an alternative to initiating file uploads through BNC, you may like to call an upload script or batch file through your crontable or Task Scheduler (independent from BNC) once every one or two minutes after the end of each RINEX file &#8216;Interval&#8217;.</p>
     1926</div>
     1927<div class="section" id="version-2-optional">
     1928<h4>Version 2 - optional<a class="headerlink" href="#version-2-optional" title="Permalink to this headline">¶</a></h4>
     1929<p>GNSS observation data are generally hold available within BNC according to attributes as defined in RINEX Version 3. These attributes describe the tracking mode or channel when generating the observation signals. Capital letters specifying signal generation attributes are A, B, C, D, I, L, M, N, P, Q, S, W, X, Y, and Z, see RINEX Version 3 documentation. Although RINEX Version 3 with its signal generation attributes is the internal default processing format for BNC, there are two applications where the program is explicitly required to produce data files in RINEX Version 2 format:</p>
     1930<ol class="arabic simple">
     1931<li>When saving the content of incoming observation streams in RINEX Version 2 files as described in this section.</li>
     1932<li>When editing or concatenating RINEX 3 files to save them in Version 2 format, see section on &#8216;RINEX Editing &amp; QC&#8217;.</li>
    8501933</ol>
    851 
    852 <p>
    853 Some of the presented example configurations contain a user ID 'Example' with a password 'Configs' for accessing a few GNSS streams from public Ntrip Broadcasters. This free generic account is arranged for convenience reasons only. Please be so kind as to replace the generic account details as well as the place holder's 'User' and 'Pass' by the personal user ID and password you receive following an online registration through <u>http://register.rtcm-ntrip.org</u>.
    854 </p>
    855 
    856 <p>
    857 Note that the account for an Ntrip Broadcaster is usually limited to pulling a specified maximum number of streams at the same time. As running some of the example configurations requires pulling several streams, it is suggested to make sure that you do not exceed your account's limits.
    858 </p>
    859 
    860 <p>
    861 Make also sure that sub-directories 'Input' and 'Output' which are part of the example configurations exist on your system or adjust the affected example configuration options according to your needs.
    862 </p>
    863 
    864 <p>
    865 Some BNC options require Antenna Phase Center variations as made available from IGS through so-called ANTEX files at <u>ftp://igs.org/pub/station/general</u>. An example ANTEX file 'igs08.atx' is part of the BNC package for convenience.
    866 </p>
    867 
    868 <p>
    869 The example configurations assume that no proxy protects your BNC host. Should a proxy be operated in front of BNC then you need to introduce its name or IP and port number in the 'Network' panel.
    870 </p>
    871 
    872 <p>
    873 <b>(A) Working with Configuration Files</b><br><br>
    874 You should be able to run all configuration file examples without changing contained options. However, configuration 'Upload.bnc' is an exception because it requires an input stream from a connected network engine.
    875 </p>
    876 <ol type=b>
    877 
    878 <li>Configuration File 'RinexObs.bnc'<br>
    879 Purpose: Convert RTCM streams to
    880 RINEX Observation files. The configuration pulls streams from Ntrip
    881 Broadcasters using Ntrip Version 1 to generate 15min 1Hz RINEX Version 3
    882 Observation files. See <u>http://igs.bkg.bund.de/ntrip/observations</u> for observation
    883 stream resources.
    884 </li><br>
    885 
    886 <li>Configuration File 'RinexEph.bnc'<br>
    887 Purpose: Convert a RTCM stream
    888 with navigation messages to RINEX Navigation files. The configuration
    889 pulls a RTCM Version 3 stream with Broadcast Ephemeris coming from the
    890 real-time EUREF and IGS networks and saves hourly RINEX Version 3 Navigation
    891 files. See <u>http://igs.bkg.bund.de/ntrip/ephemeris</u> for further real-time
    892 Broadcast Ephemeris resources.
    893 </li><br>
    894 
    895 <li>Configuration File 'BrdcCorr.bnc'<br>
    896 Purpose: Save Broadcast Corrections from RTCM
    897 SSR messages in hourly plain ASCII files. See
    898 <u>http://igs.bkg.bund.de/ntrip/orbits</u> for various real-time IGS or EUREF
    899 orbit/clock correction products.
    900 </li><br>
    901 
    902 <li>Configuration File 'RinexConcat.bnc'<br>
    903 Purpose: Concatenate several RINEX Version 3 files to
    904 produce one compiled file and edit the marker name in the file header. The
    905 sampling interval is set to 30 seconds. See section 'RINEX Editing & QC' in the
    906 documentation for examples on how to call BNC from command line in 'no window'
    907 mode for RINEX file editing, concatenation and quality check.
    908 </li><br>
    909 
    910 <li>Configuration File 'RinexQC.bnc'<br>
    911 Purpose: Check the quality of a RINEX Version 3
    912 file by means of a multipath analysis. Results are saved on disk in terms of a
    913 plot in PNG format. See section 'RINEX Editing & QC' in the documentation for
    914 examples on how to call BNC from command line in 'no window' mode for RINEX
    915 file editing, concatenation and quality check.
    916 </li><br>
    917 
    918 <li>Configuration File 'RTK.bnc'<br>
    919 Purpose: Feed a serially connected receiver with
    920 observations from a nearby reference station for conventional RTK. The stream is
    921 scanned for RTCM messages. Message type numbers and latencies of incoming
    922 observations are reported in BNC's logfile.
    923 </li><br>
    924 
    925 <li>Configuration File 'FeedEngine.bnc'<br>
    926 Purpose: Feed a real-time GNSS engine with
    927 observations from remote reference stations. The configuration pulls a single
    928 stream from an Ntrip Broadcaster. You could also pull
    929 several streams from different casters. Incoming observations are decoded,
    930 synchronized, output through a local IP port and also saved into a file. Failure
    931 and recovery thresholds are specified to inform about outages.
    932 </li><br>
    933 
    934 <li>Configuration File 'PPP.bnc'<br>
    935 Purpose: Precise Point Positioning from
    936 observations of a rover receiver. The configuration reads RTCM Version 3
    937 observations, a Broadcast Ephemeris stream and a stream with Broadcast
    938 Corrections. Positions are saved in the logfile.
    939 </li><br>
    940 
    941 <li>Configuration File 'PPPNet.bnc'<br>
    942 Purpose: Precise
    943 Point Positioning for several rovers or receivers from an entire network of
    944 reference stations in one BNC job. The possible maximum number of PPP solutions
    945 per job depends on the processing power of the hosting computer. This example
    946 configuration reads two RTCM Version 3 observation streams, a Broadcast
    947 Ephemeris stream and a stream with Broadcast Corrections. PPP Results for the
    948 two stations are saved in PPP logfiles.
    949 </li><br>
    950 
    951 <li>Configuration File 'PPPQuickStart.bnc'<br>
    952 Purpose: Precise Point Positioning in Quick-Start
    953 mode from observations of a static receiver with precisely known position. The
    954 configuration reads RTCM Version 3 observations, Broadcast Corrections and a
    955 Broadcast Ephemeris stream. Positions are saved in NMEA format on disc.
    956 They are also output through IP port for real-time visualization with tools
    957 like RTKPLOT. Positions are saved in the logfile.
    958 </li><br>
    959 
    960 <li>Configuration File 'PPPPostProc.bnc'<br>
    961 Purpose: Precise Point Positioning in post
    962 processing mode. BNC reads RINEX Version 3 Observation and Navigation files
    963 and a Broadcast Correction file. PPP processing options are set to support
    964 the Quick-Start mode. The output is saved in a specific post processing
    965 logfile and contains coordinates derived over time following the
    966 implemented PPP filter algorithm.
    967 </li><br>
    968 
    969 <li>Configuration File 'PPPGoogleMaps.bnc'<br>
    970 Purpose: Track BNC's point positioning
    971 solutions using Google Maps or OpenStreetMap as background. BNC reads a
    972 RINEX Observation file and a RINEX Navigation file to carry out a
    973 'Standard Point Positioning' solution in post processing mode. Although
    974 this is not a real-time application, it requires the BNC host to be connected
    975 to the Internet. Specify a computation speed, then hit button 'Open Map'
    976 to open the track map, then hit 'Start' to visualize receiver positions
    977 on top of GM/OSM maps.
    978 </li><br>
    979 
    980 <li>Configuration File 'SPPQuickStartGal.bnc'<br>
    981 Purpose: Single Point Positioning in Quick-Start mode from observations of a static
    982 receiver with quite precisely known position.
    983 The configuration uses GPS, GLONASS and Galileo observations and a Broadcast
    984 Ephemeris stream.
    985 </li><br>
    986 
    987 <li>Configuration File 'SaveSp3.bnc'<br>
    988 Purpose: Produces SP3 files from a Broadcast
    989 Ephemeris stream and a Broadcast Correction stream. The Broadcast Correction
    990 stream is formally introduced in BNC's 'Combine Corrections' table. Note that
    991 producing SP3 requires an ANTEX file because SP3 file content should be
    992 referred to CoM.
    993 </li><br>
    994 
    995 <li>Configuration File 'Sp3ETRF2000PPP.bnc'<br>
    996 Purpose: Produce SP3 files from a Broadcast
    997 Ephemeris stream and a stream carrying ETRF2000 Broadcast Corrections. The
    998 Broadcast Correction stream is formally introduced in BNC's 'Combine
    999 Corrections' table. The configuration leads to a SP3 file containing orbits also referred
    1000 to ETRF2000. Pulling in addition observations from a reference station at
    1001 precisely known ETRF2000 position allows comparing an 'INTERNAL' PPP solution
    1002 with a known ETRF2000 reference coordinate.
    1003 </li><br>
    1004 
    1005 <li>Configuration File 'Upload.bnc'<br>
    1006 Purpose: Upload orbits and clocks from a
    1007 real-time GNSS engine to an Ntrip Broadcaster. For that the configuration reads
    1008 precise orbits and clocks in RTNET format. It also reads a stream carrying
    1009 Broadcast Ephemeris. BNC converts the orbits and clocks into Broadcast
    1010 Corrections and encodes them to RTCM Version 3 SSR messages to finally upload them to
    1011 an Ntrip Broadcaster. The Broadcast Correction stream is referred to satellite
    1012 Antenna Phase Center (APC) and reference system IGS08. Orbits are saved on disk
    1013 in SP3 format and clocks are saved in Clock RINEX format.
    1014 </li><br>
    1015 
    1016 <li>Configuration File 'Combi.bnc'<br>
    1017 Purpose: Pull several streams carrying Broadcast
    1018 Corrections and a Broadcast Ephemeris stream from an Ntrip Broadcaster to
    1019 produce a combined Broadcast Correction stream. BNC encodes the combination
    1020 product in RTCM Version 3 SSR messages and uploads that to an Ntrip
    1021 Broadcaster. The Broadcast Correction stream is referred to satellite Antenna Phase Center (APC) and not to satellite
    1022 Center of Mass (CoM). Its reference system is IGS08. Orbits are saved in SP3
    1023 format (referred to CoM) and clocks in Clock RINEX format.
    1024 </li><br>
    1025 
    1026 <li>Configuration File 'CombiPPP.bnc'<br>
    1027 Purpose: This configuration equals the 'Combi.bnc' configuration. However, the combined
    1028 Broadcast Corrections are in addition used for an 'INTERNAL' PPP solution
    1029 based on observations from a static reference station with known precise
    1030 coordinates. This allows a continuous quality check of the combination product
    1031 through observing coordinate displacements.
    1032 </li><br>
    1033 
    1034 <li>Configuration File 'UploadEph.bnc'<br>
    1035 Purpose: Pull a number of streams from reference
    1036 stations to get hold of contained Broadcast Ephemeris messages. They are
    1037 encoded to RTCM Version 3 format and uploaded for the purpose of providing
    1038 a Broadcast Ephemeris stream with an update rate of 5 seconds.
    1039 </li><br>
    1040 
    1041 <li>Configuration File 'CompareSp3.bnc'<br>
    1042 Purpose: Compare two SP3 files to calculate
    1043 RMS values for orbit and clock differences. GPS satellite G05 and GLONASS
    1044 satellite R18 are excluded from this comparison. Comparison results are saved
    1045 in a logfile.
    1046 </li><br>
    1047 
    1048 <li>Configuration File 'Empty.bnc'<br>
    1049 Purpose: Provide an empty example configuration file for
    1050 BNC which only contains default settings.
    1051 </li>
    1052 
    1053 </ol>
    1054 <b>(B) Working with Command Line configuration options</b><br><br>
    1055 The following configuration examples make use of BNC's 'Command Line Interface' (CLI). Configuration options are exclusively specified via command line. No configuration file is used. Examples are provided as shell scripts for a Linux system. They call BNC in 'no window' batch mode (command line option -nw). The scripts expect 'Example_Configs' to be the current working directory.
    1056 
    1057 <ol start="22">
    1058 <li>Shell Script 'RinexQC.sh'<br>
    1059 Purpose: Equals configuration file example 'RinexQC.bnc', checks the quality of
    1060 a RINEX Version 3 file by means of a multipath analysis. Virtual X-Server
    1061 'Xvfb' is operated while producing plot files in PNG format. BNC is offline. All
    1062 results are saved on disk.
    1063 </li><br>
    1064 
    1065 <li>Shell Script 'RinexConcat.sh'<br>
    1066 Purpose: Equals configuration file example 'RinexConcat.bnc', concatenates
    1067 several RINEX Version 3 files to produce one compiled file and edit the marker
    1068 name in the file header. The sampling interval is set to 30 seconds.
    1069 </li><br>
    1070 
    1071 <li>Shell Script 'RinexEph.sh'<br>
    1072 Purpose: Equals configuration file example 'RinexEph.bnc', converts a RTCM
    1073 stream with navigation messages to RINEX Navigation files. The configuration
    1074 pulls a RTCM Version 3 stream with Broadcast Ephemeris coming from the
    1075 real-time EUREF and IGS networks and saves hourly RINEX Version 3 Navigation
    1076 files. BNC runs online until it's terminated after 10 seconds.  See
    1077 <u>http://igs.bkg.bund.de/ntrip/ephemeris</u> for further real-time Broadcast
    1078 Ephemeris resources.
    1079 </li><br>
    1080 
    1081 <li>Shell Script 'ScanLate.sh'<br>
    1082 Purpose: Scan an observation stream for contained RTCM message types, print
    1083 observation latencies. The output is saved in a logfile. Latencies are
    1084 reported every 10 seconds. BNC runs online until it's terminated after 20
    1085 seconds.
    1086 </li><br>
    1087 
    1088 <li>Shell Script 'RinexObs.sh'<br>
    1089 Purpose: Equals configuration file example 'RinexObs.bnc', converts RTCM
    1090 streams to RINEX Observation files. The configuration pulls streams from two
    1091 Ntrip Broadcasters using Ntrip Version 1 to generate 15min 1Hz RINEX Version 3
    1092 Observation files. See <u>http://igs.bkg.bund.de/ntrip/observations</u> for
    1093 observation stream resources. BNC runs online until it's terminated after 30
    1094 seconds.
    1095 </li>
    1096 </ol>
    1097 
    1098 <b>(C) Command Line configuration options overwriting Configuration File options</b><br><br>
    1099 For specific applications you may like to use your own set of standard configuration options from a configuration file and update some of its content via command line. When using a configuration file together with command line configuration options in one BNC call, the command line configuration options will always overrule options contained in the configuration file.
    1100 
    1101 <ol start="27">
    1102 <li>Shell Script 'CompareSp3.sh'<br>
    1103 Purpose: Equals configuration file example 'CompareSp3.bnc', compares two SP3 files to calculate RMS values for orbit and clock differences. However, instead of excluding GPS satellite G05 and GLONASS satellite R18 from the comparison as specified in 'CompareSp3.bnc', GPS satellite G06 and all GLONASS satellites are excluded via command line option. BNC runs offline. Comparison results are saved in a logfile.
    1104 </li>
    1105 </ol>
    1106 
    1107 </p>
    1108 
    1109 <p><h4>1.7 <a name="introLimit">Limitations</h4></p>
    1110 <ul>
    1111 <li>
    1112 In Qt-based desktop environments (like KDE) on Unix/Linux platforms it may happen that you experience a crash of BNC at startup even when running the program in the background using the '-nw' option. This is a known bug most likely resulting from an incompatibility of Qt libraries in the environment and in BNC. Entering the command 'unset SESSION_MANAGER' before running BNC may help as a work-around.
    1113 </li>
    1114 
    1115 <li>
    1116 Using RTCM Version 3 to produce RINEX files, BNC will properly handle most message types. However, when handling message types 1001, 1003, 1009 and 1011 where the ambiguity field is not set, the output will be no valid RINEX. All values will be stored modulo 299792.458 (speed of light).
    1117 </li>
    1118 <li>
    1119 Using RTCM Version 2, BNC will only handle message types 18 and 19 or 20 and 21 together with position and the antenna offset information carried in types 3 and 22. Note that processing carrier phase corrections and pseudo-range corrections contained in message types 20 and 21 needs access to Broadcast Ephemeris. Hence, whenever dealing with message types 20 and 21, make sure that Broadcast Ephemeris become available for BNC through also retrieving at least one RTCM Version 3 stream carrying message types 1019 (GPS ephemeris) and 1020 (GLONASS ephemeris).
    1120 </li>
    1121 <li>
    1122 BNC's 'Get Table' function only shows the STR records of a source-table. You can use an Internet browser to download the full source-table content of any Ntrip Broadcaster by simply entering its URL in the form of <u>http://host:port</u>. Data field number 8 in the NET records may provide information about where to register for an Ntrip Broadcaster account.
    1123 </li>
    1124 <li>
    1125 EUREF as well as IGS adhere to an open data policy. Streams are made available through Ntrip Broadcasters at <u>www.euref-ip.net</u>, <u>www.igs-ip.net</u>, <u>products.igs-ip.net</u>, and <u>mgex.igs-ip.net</u> free of charge to anyone for any purpose. There is no indication up until now how many users will need to be supported simultaneously. The given situation may develop in such a way that it might become difficult to serve all registered users at the same times. In cases where limited resources on the Ntrip Broadcaster side (software restrictions, bandwidth limitation etc.) dictates, first priority in stream provision will be given to stream providers followed by re-broadcasting activities and real-time analysis centers while access to others might be temporarily denied.
    1126 </li>
    1127 <li>
    1128 Once BNC has been started, many of its configuration options cannot be changed as long as it is stopped. See chapter 'Reread Configuration' for on-the-fly configuration exceptions.
    1129 </li>
    1130 <li>
    1131 Drag and drop of configuration files is currently not supported on Mac OS X. On such system you have to start BNC via command line.
    1132 </li>
    1133 </ul>
    1134 
    1135 <p><h4>1.8 <a name="introLBack">Looking Back</h4></p>
    1136 <p>
    1137 A basic function of BNC is streaming GNSS data over the open Internet using the Ntrip transport protocol. Employing IP streaming for satellite positioning goes back to the beginning of our century. Wolfgang Rupprecht has been the first person who developed TCP/IP server software under the acronym of DGPS-IP (Rupprecht 2000) and published it under GNU General Public License (GPL). While connecting marine beacon receivers to PCs with permanent access to the Internet he transmitted DGPS corrections in an RTCM format to support Differential GPS positioning over North America. With approximately 200 bits/sec the bandwidth requirement for disseminating beacon data was comparatively small. Each stream was transmitted over a unique combination of IP address and port. Websites informed about existing streams and corresponding receiver positions.
    1138 </p>
    1139 <p>
    1140 To cope with an increasing number of transmitting GNSS reference stations, the Federal Agency for Cartography and Geodesy (BKG) together with the Informatik Centrum Dortmund (ICD) in Germany developed a streaming protocol for satellite navigation data called 'Networked Transport of RTCM via Internet Protocol' (Ntrip). The protocol was built on top of the HTTP standard and included the provision of meta data describing the stream content. Any stream could now be globally transmitted over just one IP port: HTTP port 80. Stream availability and content details became part of the transport protocol. The concept was first published in 2003 (Weber and Honkala 2004, Weber et al. 2005a) and was based on three software components, namely an NtripServer pushing data from a reference station to an NtripCaster and an NtripClient pulling data from the stream splitting caster to support a rover receiver. (Note that from a socket-programmers perspective NtripServer and NtripClient both act as clients; only the NtripCaster operates as socket-server.) Ntrip could essentially benefit from Internet Radio developments. It was the ICECAST multimedia server, which provided the bases for BKG's 'Professional Ntrip Broadcaster' with software published first in 2003 and of course again as Open Source under GPL.
    1141 </p>
    1142 <p>
    1143 For BKG as a governmental agency, making Ntrip an Open Industry Standard has been an objective from the very beginning. The 'Radio Technical Commission for Maritime Services' (RTCM) accepted 'Ntrip Version 1' in 2004 as 'RTCM Recommended Standard' (Weber et al. 2005b). Nowadays there is almost no geodetic GNSS receiver which does not come with integrated NtripClient and NtripServer functionality as part of the firmware. Hundreds of NtripCaster implementations are operated world-wide for highly accurate satellite navigation through RTK networks. Thousands of reference stations upload observations via NtripServer to central computing facilities for any kind of NtripClient application. In 2011 'Ntrip Version 2' was released (RTCM SC-104 2011) which cleared and fixed some design problems and HTTP protocol violations. It also supports TCP/IP via SSL and adds optional communication over RTSP/RTP and UDP.
    1144 </p>
    1145 <p>
    1146 With the advent of Ntrip as an open streaming standard, BKG's interest turned towards taking advantage from free real-time access to GNSS observations. International Associations such as the IAG Reference Frame Sub Commissions for Africa (AFREF), Asia & Pacific (APREF), Europe (EUREF), North America (NAREF) Latin America & Caribbean (SIRGAS), and the International GNSS Service (IGS) maintain continental or even global GNSS networks with the majority of modern receivers supporting Ntrip stream upload. Through operating BKG's NtripCaster software, these networks became extremely valuable sources of real-time GNSS information.  In 2005, this was the starting point for developing the 'BKG Ntrip Client' (BNC) as a multi-stream Open Source NtripClient that allows pulling hundreds of streams simultaneously from any number of NtripCaster installations world-wide. Decoding incoming RTCM streams and output observations epoch by epoch via IP port to feed a real-time GNSS network engine became BNC's first and foremost ability (Weber and Mervart 2009). Converting decoded streams to short high-rate RINEX files to assist near real-time applications became a welcome by-product right from the start of this development.
    1147 </p>
    1148 <p>
    1149 Adding real-time Precise Point Positioning (PPP) support to BNC began in 2010 as an important completion in view of developing an Open RTCM Standard for that. According to the State Space Representation (SSR) model, new Version 3 messages are proposed to provide e.g. satellite orbit and clock corrections and ionospheric corrections as well as biases for code and phase data. The ultimate goal for SSR standardization is to reach centimeter level accuracy within seconds as an alternative to Network RTK methods such as VRS, FKP, and MAC. Because of interoperability aspects, an Open Standard in this area is of particular interest for clients. Regarding stand-alone PPP in BNC, it is worth mentioning that the program is not and can never be in competition with a receiver manufacturer's proprietary solution. Only software or services that are part of a receiver firmware could have the potential of becoming a thread for commercial interests. However, implementing or not implementing an Open PPP approach in a firmware is and will always remain a manufacturer's decision.
    1150 </p>
    1151 <p>
    1152 Implementing some post processing capability is essential for debugging real-time software in case of problems. So certain real-time options in BNC were complemented to work offline through reading data from files. Moreover, beginning in 2012, the software was extended to support Galileo, BeiDou, and QZSS besides GPS and GLONASS. With that, the Open Source tool BNC could be used for RINEX Version 3 file editing, concatenation and quality checks, a post processing functionality demanded by the IGS Multi-GNSS Experiment and not really covered at that time by UNAVCO's famous TEQC program with its limitation on GPS.
    1153 </p>
    1154 
    1155 <p>
    1156 Over the years, the BNC Subversion (SVN) software archive received over seven thousand commits made by 11 contributors representing about one hundred thirty thousand lines of code. The well-established, mature codebase is mostly written in C++ language. Its publication under GNU GPL is thought to be well-suited for test, validation and demonstration of new approaches in precise real-time satellite navigation when IP streaming is involved. Commissioned by a German governmental agency, the overall intention has been to push the development of RTCM Recommended Standards to the benefit of IAG institutions and services such as IGS and the interested public in general.
    1157 </p>
    1158 <p>
    1159 In February 2014 the overall responsibility at BKG for the concept and realization of BNC was handed over from Georg Weber to Axel Rülke. He is in charge now for guiding the application and further evolution of the software in view of appearing new satellite navigation systems and services.
    1160 </p>
    1161 
    1162 <p><h3>2. <a name="optsettings">Settings Details</h3></p>
    1163 <p>
    1164 The general documentation approach is to create a separate chapter for each processing option in a sequence which follows the layout of BNC's Graphical User Interface (GUI). The advantage is that searching for help by means of the document's Table of Contents (TOC) is quite convenient. A rather comprehensive number of TOC entries is the accepted downside of this approach.
    1165 </p>
    1166 <p>
    1167 The following chapters describe how to set BNC program options. They explain the 'Top Menu Bar', the 'Settings Canvas' with the processing options, the content of the 'Streams Canvas' and 'Logging Canvas', and the 'Bottom Menu Bar'.
    1168 </p>
    1169 
    1170 <p><h4>2.1 <a name="topmenu">Top Menu Bar</h4></p>
    1171 <p>
    1172 The top menu bar allows selecting a font for the BNC windows, save configured options, or quit the program execution. It also provides access to the program's documentation.
    1173 </p>
    1174 
    1175 <p><h4>2.1.1 <a name="file">File</h4></p>
    1176 
    1177 <p>
    1178 The 'File' button lets you
    1179 <ul>
    1180 <li> Select an appropriate font.<br>
    1181 Use smaller font size if the BNC main window exceeds the size of your screen.
    1182 </li>
    1183 <li> Reread and save selected options in configuration file.<br>
    1184 When using 'Reread &amp; Save Configuration' while BNC is already processing data, some configuration options become immediately effective on-the-fly without interrupting uninvolved threads while all of them are saved on disk. See section 'Reread Configuration' for a list of on-the-fly changeable configuration options.
    1185 </li>
    1186 <li> Quit the BNC program.
    1187 </li>
    1188 </ul>
    1189 </p>
    1190 
    1191 <p><h4>2.1.2 <a name="help">Help</h4></p>
    1192 
    1193 <p>
    1194 The 'Help' button provides access to
    1195 <ul>
    1196 <li>
    1197 Help contents.<br>
    1198 You may keep the 'Help Contents' window open while configuring BNC.
    1199 </li>
    1200 <li>
    1201 A 'Flow Chart' showing BNC linked to a real-time GNSS network engine such as RTNET.
    1202 </li>
    1203 <li>
    1204 General information about BNC.<br>
    1205 Close the 'About BNC' window to continue working with BNC.
    1206 </li>
    1207 </ul>
    1208 </p>
    1209 
    1210 <p><h4>2.2 <a name="network">Network</h4></p>
    1211 <p>
    1212 You may need to specify a proxy when running BNC in a protected network. You may also like to use the Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL) cryptographic protocols for secure Ntrip communication over the Internet.
    1213 </p>
    1214 <p><h4>2.2.1 <a name="proxy">Proxy - Usage in a protected LAN</h4></p>
    1215 <p>
    1216 If you are running BNC within a protected Local Area Network (LAN), you might need to use a proxy server to access the Internet. Enter your proxy server IP and port number in case one is operated in front of BNC. If you do not know the IP and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.</p>
    1217 <p>
    1218 Note that IP streaming is often not allowed in a LAN. In this case you need to ask your network administrator for an appropriate modification of the local security policy or for the installation of a TCP relay to the Ntrip Broadcaster you need to access. If this is not possible, you might need to run BNC outside your LAN on a host that has unobstructed connection to the Internet.
    1219 </p>
    1220 
    1221 <p><h4>2.2.2 <a name="ssl">SSL - Transport Layer Security</h4></p>
    1222 <p>Communication with an Ntrip Broadcaster over Secure Sockets Layer (SSL) as well as the download of RINEX skeleton files when available from HTTPS websites requires the exchange of client and/or server certificates. Specify the path to a directory where you save certificates on your system. You may like to check out <u>http://software.rtcm-ntrip.org/wiki/Certificates</u> for a list of known Ntrip Server certificates. You may also just try communication via SSL to check out whether this is supported by the involved Ntrip Broadcaster. </p>
    1223 <p>SSL communication may involve queries coming from the Ntrip Broadcaster or from a HTTPS website hosting RINEX skeletons. Such a query could show up under BNC's 'Log' tab especially when self-signed SSL certificates are used. Example:
    1224 <pre>
    1225    SSL Error
    1226    Server Certificate Issued by:
    1227    GNSS Data Center
    1228    BKG (Bundesamt f&uuml;r Geod&auml;sie und Kartographie)
    1229    Cannot be verified
    1230 
    1231    The issuer certificate of a locally looked up certificate could not be found
    1232    The root CA certificate is not trusted for this purpose
    1233    No certificates could be verified
    1234 </pre>
    1235 Queries should not be received by a client when a server uses official SSL certificates.
    1236 </p>
    1237 <p>
    1238 Tick 'Ignore SSL authorization errors' if you generally trust the server and do not want to be bothered with this. Note that SSL communication is usually done over port 443.
    1239 </p>
    1240 
    1241 <p><img src="IMG/screenshot40.png"/></p>
    1242 <p><u>Figure 7:</u> BNC's 'Network' panel configured to ignore eventually occurring SSL error messages</p>
    1243 
    1244 <p><h4>2.3 <a name="general">General</h4></p>
    1245 <p>
    1246 The following defines general settings for BNC's logfile, file handling, reconfiguration on-the-fly, and auto-start.
    1247 </p>
    1248 
    1249 <p><h4>2.3.1 <a name="genlog">Logfile - optional</h4></p>
    1250 <p>
    1251 Records of BNC's activities are shown in the 'Log' tab on the bottom of the main window. These logs can be saved into a file when a valid path is specified in the 'Logfile (full path)' field. The logfile name will automatically be extended by a string '_YYMMDD' for the current date. This leads to series of daily logfiles when running BNC continuously. Message logs cover the communication status between BNC and the Ntrip Broadcaster as well as problems that may occur in the communication link, stream availability, stream delay, stream conversion etc. All times are given in UTC. The default value for 'Logfile (full path)' is an empty option field, meaning that BNC logs will not be saved into a file.
    1252 </p>
    1253 <p>
    1254 The following is an example for the content of a logfile written by BNC when operated in Single Point Positioning (SPP) mode:
    1255 </p>
    1256 <pre>
    1257 15-06-30 11:40:17 ========== Start BNC v2.12 (MAC) ==========
    1258 15-06-30 11:40:17 Panel 'PPP' active
    1259 15-06-30 11:40:17 CUT07: Get data in RTCM 3.x format
    1260 15-06-30 11:40:17 RTCM3EPH: Get data in RTCM 3.x format
    1261 15-06-30 11:40:17 Configuration read: PPP.conf, 2 stream(s)
    1262 
    1263 15-06-30 11:40:21 2015-06-30_11:40:19.000 CUT07 X = -2364337.6814 Y = 4870283.8110 Z = -3360808.3085 NEU:  -0.0000  -0.0000  -0.0000 TRP:  +2.4026  -0.0001
    1264 15-06-30 11:40:22 2015-06-30_11:40:20.000 CUT07 X = -2364337.6853 Y = 4870283.8130 Z = -3360808.3082 NEU:  +1.1639  +0.6988  -2.1178 TRP:  +2.4018  +0.0003
    1265 15-06-30 11:40:23 2015-06-30_11:40:21.000 CUT07 X = -2364337.6862 Y = 4870283.8155 Z = -3360808.3107 NEU:  +0.1317  -0.4655  -4.4614 TRP:  +2.4009  +0.0009
    1266 15-06-30 11:40:24 2015-06-30_11:40:22.000 CUT07 X = -2364337.6864 Y = 4870283.8106 Z = -3360808.3099 NEU:  +0.1543  +0.2121  -1.0190 TRP:  +2.4022  +0.0009
    1267 15-06-30 11:40:25 2015-06-30_11:40:23.000 CUT07 X = -2364337.6861 Y = 4870283.8111 Z = -3360808.3105 NEU:  -0.9782  +0.0916  -2.3544 TRP:  +2.4017  +0.0013
    1268 15-06-30 11:40:26 2015-06-30_11:40:24.000 CUT07 X = -2364337.6884 Y = 4870283.8123 Z = -3360808.3103 NEU:  -0.5606  -0.0938  -1.9498 TRP:  +2.4018  +0.0016
    1269 15-06-30 11:40:27 2015-06-30_11:40:25.000 CUT07 X = -2364337.6913 Y = 4870283.8133 Z = -3360808.3122 NEU:  -0.1799  -0.1525  -4.8142 TRP:  +2.4007  +0.0025
    1270 15-06-30 11:40:28 2015-06-30_11:40:26.000 CUT07 X = -2364337.6919 Y = 4870283.8171 Z = -3360808.3184 NEU:  +0.7497  +0.7994  -2.0363 TRP:  +2.4018  +0.0032
    1271 15-06-30 11:40:29 2015-06-30_11:40:27.000 CUT07 X = -2364337.6923 Y = 4870283.8196 Z = -3360808.3230 NEU:  +0.8099  +0.5592  -2.8552 TRP:  +2.4015  +0.0039
    1272 15-06-30 11:40:30 2015-06-30_11:40:28.000 CUT07 X = -2364337.6960 Y = 4870283.8219 Z = -3360808.3222 NEU:  -0.2952  +1.9737  -4.5565 TRP:  +2.4008  +0.0047
    1273 15-06-30 11:40:31 2015-06-30_11:40:29.000 CUT07 X = -2364337.6982 Y = 4870283.8209 Z = -3360808.3209 NEU:  +0.3563  +2.1067  -5.5327 TRP:  +2.4005  +0.0057
    1274 ...
    1275 </pre>
    1276 
    1277 <p><h4>2.3.2 <a name="genapp">Append Files - optional</h4></p>
    1278 <p>
    1279 When BNC is started, new files are created by default and existing files with the same name will be overwritten. However, users might want to append existing files following a restart of BNC, a system crash or a BNC crash. Tick 'Append files' to continue with existing files and keep what has been recorded so far. Note that option 'Append files' affects all types of files created by BNC.
    1280 </p>
    1281 
    1282 <p><h4>2.3.3 <a name="genconf">Reread Configuration - optional</h4></p>
    1283 <p>
    1284 When operating BNC online in 'no window' mode (command line option -nw), some configuration options can nevertheless be changed on-the-fly without interrupting the running process. For that, you force the program to reread parts of its configuration in pre-defined intervals from disk. Select '1 min', '1 hour', or '1 day' to let BNC reread on-the-fly changeable configuration options every full minute, hour, or day. This lets in-between edited options become effective without interrupting uninvolved threads.
    1285 </p>
    1286 
    1287 <p>
    1288 Note that following configuration options saved on disk can be changed/edited on-the-fly while BNC is already processing data:
    1289 </p>
    1290 <p>
    1291 <ul>
    1292 <li>'mountPoints' to change the selection of streams to be processed, see section 'Streams';</li>
    1293 <li>'outWait' to change the 'Wait for full obs epoch' option, see section 'Feed Engine';</li>
    1294 <li>'outSampl' to change the 'Sampling' option, see section 'Feed Engine';</li>
    1295 <li>'outFile' to change the 'File' name where synchronized observations are saved in plain ASCII format.</li>
    1296 </ul>
    1297 </p>
    1298 <p>
    1299 </p>
    1300 
    1301 <p><h4>2.3.4 <a name="genstart">Auto Start - optional</h4></p>
    1302 <p>
    1303 You may like to auto-start BNC at startup time in window mode with pre-assigned configuration options. This may be required e.g. immediately after booting your system. Tick 'Auto start' to supersede the usage of the 'Start' button. Make sure that you maintain a link to BNC for that in your Autostart directory (Windows systems) or call BNC in a script below directory /etc/init.d (Unix/Linux/Mac OS X systems).
    1304 </p>
    1305 <p>
    1306 See BNC's command line option '-nw' for an auto-start of BNC in 'no window' mode.
    1307 </p>
    1308 
    1309 <p><h4>2.3.5 <a name="rawout">Raw Output File - optional</h4></p>
    1310 <p>
    1311 BNC can save all data coming in through various streams in one daily file. The information is recorded in the specified 'Raw output file' in the received order and format. This feature allows a BNC user to run the PPP option offline with observations, Broadcast Corrections, and Broadcast Ephemeris being read from a previously saved file. It supports the offline repetition of a real-time situation for debugging purposes (Record &amp; Replay functionality) and is not meant for post processing.
    1312 </p>
    1313 <p>
    1314 Data will be saved in blocks in the received format separated by ASCII time stamps like (example):
    1315 <pre>
    1316    2010-08-03T18:05:28 RTCM3EPH RTCM_3 67
    1317 </pre>
    1318 </p>
    1319 <p>
    1320 This example block header tells you that 67 bytes were saved in the data block following this time stamp. The information in this block is encoded in RTCM Version 3 format, comes from mountpoint RTCM3EPH and was received at 18:05:28 UTC on 2010-08-03. BNC adds its own time stamps in order to allow the reconstruction of a recorded real-time situation.
    1321 </p>
    1322 <p>
    1323 The default value for 'Raw output file' is an empty option field, meaning that BNC will not save all raw data into one single daily file.
    1324 </p>
    1325 
    1326 <p><h4>2.4 <a name="rinex">RINEX Observations</h4></p>
    1327 <p>
    1328 Observations will be converted to RINEX if they come in either RTCM Version 2 or RTCM Version 3 format. Depending on the RINEX version and incoming RTCM message types, files generated by BNC may contain data from GPS, GLONASS, Galileo, SBAS, QZSS, and/or BDS (BeiDou). In case an observation type is listed in the RINEX header but the corresponding observation is unavailable, its value is set to zero '0.000' or left blank. Note that the 'RINEX TYPE' field in the RINEX Version 3 Observation file header is always set to 'M(MIXED)' or 'Mixed' even if the file only contains data from one system.
    1329 </p>
    1330 <p>
    1331 It is important to understand that converting RTCM streams to RINEX files requires a priori information on observation types for specifying a complete RINEX header. Regarding the RINEX Version 2 file header, BNC simply introduces all observation types defined in the Version 2 standard and later reports "0.000" for observations which are not received. However, following this approach is not possible for RINEX Version 3 files from RTCM Version 3 MSM streams because of the huge number of observation types, which might in principle show up. The solution implemented in BNC is to start with RINEX Version 3 observation type records from skeleton files (see section 'Skeleton Extension' and 'Skeleton Mandatory') and switch to a default selection of observation types when such file is not available or does not contain the required information. The following is the default selection of observation types specified for a RINEX Version 3 file:
    1332 </p>
    1333 <pre>
    1334 C    9 C2I L2I S2I C6I L6I S6I C7I L7I S7I                  SYS / # / OBS TYPES
    1335 E   12 C1X L1X SX1 C5X L5X SX5 C7X L7X SX7 C8X L8X SX8      SYS / # / OBS TYPES
    1336 G   15 C1C L1C S1C C1W L1W S1W C2X L2X S2X C2W L2W S2W C5X  SYS / # / OBS TYPES
    1337        L5X S5X                                              SYS / # / OBS TYPES
    1338 J   24 C1C L1C S1C C1S L1S S1S C1L L1L S1L C1X L1X S1X C2S  SYS / # / OBS TYPES
    1339        L2S S2S C2L L2L S2L C2X L2X S2X C5X L5X S5X          SYS / # / OBS TYPES
    1340 R   12 C1C L1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P      SYS / # / OBS TYPES
    1341 S    9 C1C L1C S1C C5I L5I S5I C5Q L5Q S5Q                  SYS / # / OBS TYPES
    1342 </pre>
    1343 
    1344 <p>
    1345 Please note that RTCM Version 3 messages 1084 for GLONASS observations do not contain the GLONASS channel numbers. These observation messages can only be converted to RINEX when you add messages which include the channel numbers. This could be done by means of an additional stream carrying 1087 GLONASS observation messages or an additional stream carrying 1020 GLONASS ephemeris messages. You could also consider setting up a stream which contains both, the 1084 and the 1020 messages.
    1346 </p>
    1347 <p>
    1348 The screenshot below shows an example setup of BNC when converting streams to RINEX. Streams are coming from various Ntrip Broadcasters as well as from a serial communication link. Specifying a decoder string 'ZERO' would mean to not convert the affected stream but save its content as received. The 'SSL Error' recorded in the 'Log' tab is caused by the fact that observation stream downloads from IGS and MGEX Broadcasters initiate the download of RINEX skeleton files from a HTTPS (TLS/SSL) website and BNC has been configured in this example to ignore SSL errors as shown in the preceding 'Network' panel screenshot.
    1349 </p>
    1350 
    1351 <p><img src="IMG/screenshot16.png"/></p>
    1352 <p><u>Figure 8:</u> BNC translating incoming observation streams to 15 min RINEX Version 3 Observation files</p>
    1353 
    1354 <p><h4>2.4.1 <a name="rnxname">RINEX Filenames</h4></p>
    1355 <p>
    1356 The default for RINEX filenames in BNC follows the convention of RINEX Version 2. However, the software provides options to alternatively follow the filename convention of RINEX Version 3. RINEX Version 2 filenames are derived by BNC from the first 4 characters of the corresponding stream's mountpoint (4-Char Station ID). For example, data from mountpoints FRANKFURT and WETTZELL will have hourly RINEX Observation files named</p>
    1357 
    1358 <pre>
    1359    FRAN{ddd}{h}.{yy}O
    1360    WETT{ddd}{h}.{yy}O
    1361 </pre>
    1362 <p>
    1363 where 'ddd' is the day of year, 'h' is a letter which corresponds to an hour long UTC time block and 'yy' is the year.
    1364 </p>
    1365 <p>
    1366 If there is more than one stream with identical 4-Char Station ID (same first 4 characters for their mountpoints), the mountpoint strings are split into two sub-strings and both become part of the RINEX filename. For example, when simultaneously retrieving data from mountpoints FRANKFURT and FRANCE, their hourly RINEX Version 2 Observation files are named as</p>
    1367 <pre>
    1368    FRAN{ddd}{h}_KFURT.{yy}O
    1369    FRAN{ddd}{h}_CE.{yy}O
    1370 </pre>
    1371 <p>
    1372 If several streams show up with exactly the same mountpoint name (example: BRUS0 from <u>www.euref-ip.net</u> and BRUS0 from <u>www.igs-ip.net</u>), BNC adds an integer number to the filename, leading e.g. to hourly RINEX Version 2 Observation files like</p>
    1373 <pre>
    1374    BRUS{ddd}{h}_0.{yy}O
    1375    BRUS{ddd}{h}_1.{yy}O
    1376 </pre>
    1377 <p>
    1378 Note that RINEX Version 2 filenames for all intervals less than 1 hour follow the filename convention for 15 minutes RINEX Version 2 Observation files e.g.</p>
    1379 <pre>
    1380    FRAN{ddd}{h}{mm}.{yy}O
    1381 </pre>
    1382 <p>
    1383 where 'mm' is the starting minute within the hour.
    1384 </p>
    1385 
    1386 <p>
    1387 In case of RINEX Version 3 filenames, the following convention holds:
    1388 
    1389 <p>
    1390 <table>
    1391 <tr><td><b>Filename Parameter&nbsp; &nbsp;</b></td><td><b>&nbsp;# Char.</b></td><td><b>&nbsp; Meaning</b></td></tr>
    1392 <tr><td>Name</td><td>&nbsp; 9</td><td>&nbsp; Site, station and country code</td></tr>
    1393 <tr><td>S</td><td>&nbsp; 1</td><td>&nbsp; Data source</td></tr>
    1394 <tr><td>Start Time</td><td>&nbsp; 11</td><td>&nbsp; YYYYDDDHHMM</td></tr>
    1395 <tr><td>Period</td><td>&nbsp; 3</td><td>&nbsp; File period</td></tr>
    1396 <tr><td>Obs. Freq.</td><td>&nbsp; 3</td><td>&nbsp; Observation frequency</td></tr>
    1397 <tr><td>Content</td><td>&nbsp; 2</td><td>&nbsp; Content type</td></tr>
    1398 <tr><td>Format</td><td>&nbsp; 3</td><td>&nbsp; File format</td></tr>
    1399 <tr><td>Compression</td><td>&nbsp; 2-3</td><td>&nbsp; Compression method (optional)</td></tr>
    1400 </table>
    1401 </p>
    1402 <p>
    1403 Example for Mixed RINEX Version 3 GNSS observation filename, file containing 1 hour of data, one observation every second, 'MO' standing for 'Mixed Observations':
    1404 <pre>
    1405    ALGO00CAN_R_20121601000_01H_01S_MO.rnx
    1406 </pre>
    1407 </p>
    1408 <p>
    1409 Note that filename details are produced from the stream's mountpoint as well as corresponding BNC settings and meta data from the Ntrip Broadcaster source-table.
    1410 </p>
    1411 
    1412 <p><h4>2.4.2 <a name="rnxdir">Directory - optional</h4></p>
    1413 <p>
    1414 Here you can specify the path to where the RINEX Observation files will be stored. If the specified directory does not exist, BNC will not create RINEX Observation files. Default value for 'Directory' is an empty option field, meaning that no RINEX Observation files will be written.
    1415 </p>
    1416 
    1417 <p><h4>2.4.3 <a name="rnxinterval">File Interval - mandatory if 'Directory' is set</h4></p>
    1418 <p>
    1419 Select the length of the RINEX Observation file to be generated. The default value is 15 minutes.
    1420 </p>
    1421 
    1422 <p><h4>2.4.4 <a name="rnxsample">Sampling - mandatory if 'Directory' is set </h4></p>
    1423 <p>
    1424 Select the RINEX Observation sampling interval in seconds. A value of zero '0' tells BNC to store all received epochs into RINEX. This is the default value.
    1425 </p>
    1426 
    1427 <p><h4>2.4.5 <a name="rnxskl">Skeleton Extension - optional</h4></p>
    1428 <p>
    1429 Whenever BNC starts to generate RINEX Observation files (and then once every day at midnight), it first tries to retrieve information needed for RINEX headers from so-called public RINEX header skeleton files which are derived from sitelogs. An HTTP or HTTPS link to a directory containing these skeleton files may be available through data field number 7 of the affected NET record in the source-table. See <u>http://www.epncb.oma.be:80/stations/log/skl/brus.skl</u> for an example of a public RINEX header skeleton file for EPN station Brussels. Note that the download of RINEX skeleton files from HTTPS websites requires the exchange of client and/or server certificates. Clarify 'SSL' options offered through panel 'Network' for details.
    1430 </p>
    1431 <p>
    1432 Sometimes public RINEX header skeleton files are not available, their content is not up to date, or you need to put additional/optional records in the RINEX header. For that, BNC allows using personal skeleton files that contain the header records you would like to include. You can derive a personal RINEX header skeleton file from the information given in an up to date sitelog. A file in the RINEX Observations 'Directory' with a 'Skeleton extension' suffix is interpreted by BNC as a personal RINEX header skeleton file for the corresponding stream.
    1433 </p>
    1434 <p>
    1435 When producing RINEX Observation files from mountpoints (examples) 'BRUS0', 'FRANKFURT', and 'WETTZELL', the following skeleton filenames would be accepted
    1436 </p>
    1437 <pre>
    1438    BRUS.skl
    1439    FRAN.skl
    1440    WETT.skl
    1441 </pre>
    1442 <p>
    1443 if 'Skeleton extension' is set to 'skl'.
    1444 </p>
    1445 <p>
    1446 Note the following regulations regarding personal RINEX header skeleton files:
    1447 <ul>
    1448 <li>If such a file exists in the 'RINEX directory', the corresponding public RINEX header skeleton file is ignored. The RINEX header is generated solely from the content of the personal skeleton.</li>
    1449 <li>Personal skeletons should contain a complete first header record of type
    1450 <br>- &nbsp; RINEX VERSION / TYPE<br></li>
    1451 <li>They should then contain an empty header record of type
    1452 <br>- &nbsp; PGM / RUN BY / DATE<br>
    1453 BNC will complete this line and include it in the RINEX file header.</li>
    1454 <li>They should further contain complete header records of type
    1455 <br>- &nbsp; MARKER NAME
    1456 <br>- &nbsp; OBSERVER / AGENCY
    1457 <br>- &nbsp; REC # / TYPE / VERS
    1458 <br>- &nbsp; ANT # / TYPE
    1459 <br>- &nbsp; APPROX POSITION XYZ
    1460 <br>- &nbsp; ANTENNA: DELTA H/E/N
    1461 <br>- &nbsp; WAVELENGTH FACT L1/2 (RINEX Version 2)
    1462 <br>- &nbsp; SYS / # / OBS TYPES (for RINEX Version 3 files, will be ignored in Version 2 files)</li>
    1463 <li>They may contain any other optional complete header record as defined in the RINEX documentation.</li>
    1464 <li>They should also contain an empty header record of type
    1465 <br>- &nbsp; # / TYPES OF OBSERV (only RINEX Version 2, will be ignored when in Version 3 files)
    1466 <br>BNC will include these lines in the final RINEX file header together with an additional
    1467 <br>- &nbsp; COMMENT
    1468 <br>line describing the source of the stream.</li>
    1469 <li>They should finally contain an empty last header record of type
    1470 <br>- &nbsp; END OF HEADER</li>
    1471 
    1472 <li>They must not contain a header record of type
    1473 <br>- &nbsp; TIME OF FIRST OBS</li>
    1474 
    1475 </ul>
    1476 <p>
    1477 If neither a public nor a personal RINEX header skeleton file is available for BNC, a default header will be used.
    1478 </p>
    1479 <p>
    1480 The following is a skeleton example for a RINEX file:
    1481 </p>
    1482 <p>
    1483 <pre>
    1484                     OBSERVATION DATA    M (MIXED)           RINEX VERSION / TYPE
    1485                                                             PGM / RUN BY / DATE
    1486 CUT0                                                        MARKER NAME         
    1487 59945M001                                                   MARKER NUMBER       
    1488 5023K67889          TRIMBLE NETR9       5.01                REC # / TYPE / VERS
    1489 4928353386          TRM59800.00     SCIS                    ANT # / TYPE       
    1490  -2364337.2699  4870285.5624 -3360809.8398                  APPROX POSITION XYZ
    1491         0.0000        0.0000        0.0000                  ANTENNA: DELTA H/E/N
    1492 gnss@curtin.edu.au  CUT                                     OBSERVER / AGENCY   
    1493 C   10 C1I L1I D1I S1I C6I L6I S6I C7I L7I S7I              SYS / # / OBS TYPES
    1494 E   13 C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X  SYS / # / OBS TYPES
    1495 G   13 C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X  SYS / # / OBS TYPES
    1496 J   19 C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X  SYS / # / OBS TYPES
    1497        C5X L5X S5X C6L L6L S6L                              SYS / # / OBS TYPES
    1498 R   13 C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P  SYS / # / OBS TYPES
    1499 S    7 C1C L1C D1C S1C C5I L5I S5I                          SYS / # / OBS TYPES
    1500 PORTIONS OF THIS HEADER GENERATED BY THE IGS CB FROM        COMMENT             
    1501 SITELOG cut0_20150507.log                                   COMMENT             
    1502                                                             END OF HEADER
    1503 </pre>
    1504 <p>
    1505 
    1506 <p><h4>2.4.6 <a name="sklMandat">Skeleton Mandatory - optional</h4></p>
    1507 <p>
    1508 Tick check box 'Skeleton mandatory' in case you want that RINEX files are only produced when skeleton files are available for BNC. If no skeleton file is available for a particular source, then no RINEX observation file will be produced from the affected stream.
    1509 </p>
    1510 <p>Note that a skeleton file contains RINEX header information such as receiver and antenna types. In case of stream conversion to RINEX Version 3, a skeleton file should also contain information on potentially available observation types. A missing skeleton file will force BNC to only save a default set of RINEX 3 observation types.
    1511 </p>
    1512 
    1513 <p><h4>2.4.7 <a name="rnxscript">Script - optional</h4></p>
    1514 <p>
    1515 Whenever a RINEX Observation file is saved, you might want to compress, copy or upload it immediately via FTP. BNC allows you to execute a script/batch file to carry out these operations. To do that, specify the full path to such script/batch file. BNC will pass the RINEX Observation file path to the script as a command line parameter (%1 on Windows systems, $1 on Unix/Linux/Mac OS X systems).
    1516 </p>
    1517 <p>
    1518 The triggering event for calling the script or batch file is the end of a RINEX Observation file 'Interval'. If that is overridden by a stream outage, the triggering event is the stream reconnection.
    1519 </p>
    1520 <p>
    1521 As an alternative to initiating file uploads through BNC, you may like to call an upload script or batch file through your crontable or Task Scheduler (independent from BNC) once every one or two minutes after the end of each RINEX file 'Interval'.
    1522 </p>
    1523 
    1524 <p><h4>2.4.8 <a name="rnxvers2">Version 2 - optional</h4></p>
    1525 <p>
    1526 GNSS observation data are generally hold available within BNC according to attributes as defined in RINEX Version 3. These attributes describe the tracking mode or channel when generating the observation signals. Capital letters specifying signal generation attributes are A, B, C, D, I, L, M, N, P, Q, S, W, X, Y, and Z, see RINEX Version 3 documentation. Although RINEX Version 3 with its signal generation attributes is the internal default processing format for BNC, there are two applications where the program is explicitly required to produce data files in RINEX Version 2 format:
    1527 <ol type=1>
    1528 <li>When saving the content of incoming observation streams in RINEX Version 2 files as described in this section.</li>
    1529 <li>When editing or concatenating RINEX 3 files to save them in Version 2 format, see section on 'RINEX Editing & QC'.</li>
    1530 </ol>
    1531 As the Version 2 format ignores signal generation attributes, BNC is forced to somehow map RINEX Version 3 to RINEX Version 2 although this cannot be done in one-to-one correspondence. Hence we introduce a 'Signal priority' list of attributes (characters, forming a string) for mapping Version 3 to Version 2.
    1532 </p>
    1533 <p>
    1534 Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:</li>
    1535 <ul>
    1536 <li>'CWPX_?' (General signal priorities valid for all GNSS)</li>
    1537 <li>'C:IQX I:ABCX' (System specific signal priorities for BDS and IRNSS)</li>
    1538 <li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities)</li>
    1539 </ul>
    1540 </p>
    1541 <p>
    1542 The default 'Signal priority' list is defined as follows:
    1543 <ul>
    1544  <li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX E:16&BCX E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:IQX I:ABCX S:1&C S:5&IQX'</li>
    1545 </ul>
    1546 
    1547 As an example the 'Signal priority' of 'CWPX_?' is explained in more detail:
    1548 <ul>
    1549 <li>Signals with attribute 'C' enjoy the highest priority. If such a Version 3 observation becomes available, it is presented as RINEX Version 2 observation if that is the format you wish to see. Observations with other attributes are being ignored.</li>
    1550 <li>If no signal with 'C' attribute is available but we have an observation with 'W' attribute, BNC presents that one as RINEX Version 2 observation and ignores all observations with other attributes. The same applies mutatis mutandis to observations with P and X attributes.</li>
    1551 <li>If no signal with 'C', 'W', 'P', or 'X' attribute is available but a signal with undefined generation attribute (underscore character, '_') exists, BNC presents that one as RINEX Version 2 observation. Note that observation attributes should actually always be available in RINEX Version 3. Hence the underscore character makes only sense in a few very special cases.</li>
    1552 <li>If no signal with 'C', 'W', 'P', 'X', or '_' generation attribute exists then the question mark '?' tells BNC to present the first of any other appearing signal as RINEX Version 2 observation.</li>
    1553 </ul>
    1554 </p>
    1555 
    1556 <p>
    1557 You may like to specify your own 'Signal priority' string(s) for producing RINEX Version 2 files. If you neither convert observation streams to RINEX Version 2 nor concatenate RINEX Version 3 to Version 2 files, then the 'Version 2' option is meaningless.
    1558 </p>
    1559 
    1560 <p><h4>2.4.9 <a name="rnxvers3">Version 3 - optional</h4></p>
    1561 <p>
    1562 The default format for RINEX Observation files is RINEX Version 2.11. Select RINEX 'Version 3' if you would like to save RTCM Version 3 observation streams in RINEX Version 3.03 format.
    1563 </p>
    1564 
    1565 <p>
    1566 Note that it is possible to force an RTCM Version 2 stream to be saved in RINEX Version 3 file format. However, this is not recommended because such stream cannot be precisely mapped to RINEX Version 3 as the required information on tracking modes (observation attributes) is not part of RTCM Version 2.
    1567 </p>
    1568 
    1569 <p><h4>2.4.10 <a name="rnxvers3File">Version 3 Filenames - optional</h4></p>
    1570 <p>
    1571 Tick check box 'Version 3 filenames' to let BNC create so-called extended filenames following the RINEX Version 3 standard.
    1572 </p>
    1573 <p>Default is an empty check box, meaning to still use filenames following the RINEX Version 2 standard although the file content is saved in RINEX Version 3 format.
    1574 </p>
    1575 
    1576 <p><h4>2.5 <a name="ephemeris">RINEX Ephemeris</h4></p>
    1577 <p>
    1578 Broadcast Ephemeris can be saved in RINEX Navigation files when received e.g. via RTCM Version 3 message types 1019 (GPS) or 1020 (GLONASS) or 1044 (QZSS) or 1043 (SBAS) or 1045 and 1046 (Galileo) or 63 (BDS/BeiDou, tentative message number). The filename convention follows the details given in section 'RINEX Filenames' except that the first four characters are 'BRDC'.
    1579 </p>
    1580 <p>
    1581 For RINEX Version 2 Navigation files the last character is 'N' or 'G' for GPS or GLONASS ephemeris in two separate files.
    1582 </p>
    1583 <p>
    1584 Regarding RINEX Version 3 you will find all ephemeris data for GPS, GLONASS, Galileo, SBAS, QZSS, and BDS gathered in one Navigation file.
    1585 </p>
    1586 <p>
    1587 The following is an example for a RINEX Version 3 Navigation filename. The file contains one day's data. 'MN' stands for 'Multi Constellation Navigation' data.
    1588 <pre>
    1589    BRDC00DEU_S_20121600000_01D_MN.rnx
    1590 </pre>
    1591 </p>
    1592 
    1593 <p>
    1594 Note that streams dedicated to carry Broadcast Ephemeris messages in RTCM Version 3 format in high repetition rates are listed on <u>http://igs.bkg.bund.de/ntrip/ephemeris</u>.
    1595 </p>
    1596 
    1597 <p>
    1598 Note further that BNC will ignore incorrect or outdated Broadcast Ephemeris data when necessary, leaving a note 'WRONG EPHEMERIS' or 'OUTDATED EPHEMERIS' in the logfile.
    1599 </p>
    1600 
    1601 <p><h4>2.5.1 <a name="ephdir">Directory - optional</h4></p>
    1602 <p>
    1603 Specify a path for saving Broadcast Ephemeris data in RINEX Navigation files. If the specified directory does not exist, BNC will not create RINEX Navigation files. Default value for Ephemeris 'Directory' is an empty option field, meaning that no RINEX Navigation files will be created.
    1604 </p>
    1605 
    1606 <p><h4>2.5.2 <a name="ephint">Interval - mandatory if 'Directory' is set</h4></p>
    1607 <p>
    1608 Select the length of RINEX Navigation files. The default value is '1 day'.
    1609 </p>
    1610 
    1611 <p><h4>2.5.3 <a name="ephport">Port - optional</h4></p>
    1612 <p>
    1613 BNC can output Broadcast Ephemeris in RINEX Version 3 format on your local host (IP 127.0.0.1) through an IP 'Port'. Specify an IP port number to activate this function. The default is an empty option field, meaning that no ASCII ephemeris output via IP port is generated.
    1614 </p>
    1615 <p>
    1616 The source code for BNC comes with an example Perl script 'test_tcpip_client.pl' that allows you to read BNC's ephemeris ASCII output from the IP port.
    1617 </p>
    1618 
    1619 <p><h4>2.5.4 <a name="ephvers">Version - optional</h4></p>
    1620 <p>
    1621 Default format for RINEX Navigation files containing Broadcast Ephemeris is RINEX Version 2.11. Select 'Version 3' if you want to save the ephemeris data in RINEX Version 3.03 format.
    1622 </p>
    1623 <p>
    1624 Note that this does not concern the Broadcast Ephemeris output through IP port, which is always in RINEX Version 3.03 format.
    1625 </p>
    1626 
    1627 <p><h4>2.5.5 <a name="ephversFile">Version 3 Filenames - optional</h4></p>
    1628 <p>
    1629 Tick check box 'Version 3 filenames' to let BNC create so-called extended filenames following the RINEX Version 3 standard.
    1630 </p>
    1631 <p>Default is an empty check box, meaning to still use filenames following the RINEX Version 2 standard although the file content is saved in RINEX Version 3 format.
    1632 </p>
    1633 
    1634 <p><img src="IMG/screenshot42.png"/></p>
    1635 <p><u>Figure 9:</u> BNC converting Broadcast Ephemeris stream to RINEX Version 3 Navigation files</p>
    1636 
    1637 <p><h4>2.6 <a name="reqc">RINEX Editing & QC</h4></p>
    1638 <p>
    1639 Besides stream conversion from RTCM to RINEX, BNC allows editing RINEX files or concatenate their content. RINEX Observation and Navigation files can be handled. BNC can also carry out a RINEX file Quality Check. In summary  and besides Stream <u><b>T</b></u>ranslation, this functionality in BNC covers
    1640 <ul>
    1641 <li>File <u><b>E</b></u>diting and concatenation</li>
    1642 <li>File <u><b>Q</b></u>uality <u><b>C</b></u>heck</li>
    1643 <ul>
     1934<p>As the Version 2 format ignores signal generation attributes, BNC is forced to somehow map RINEX Version 3 to RINEX Version 2 although this cannot be done in one-to-one correspondence. Hence we introduce a &#8216;Signal priority&#8217; list of attributes (characters, forming a string) for mapping Version 3 to Version 2.</p>
     1935<p>Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:</p>
     1936<ul class="simple">
     1937<li>&#8216;<a href="#id72"><span class="problematic" id="id73">CWPX_</span></a>?&#8217; (General signal priorities valid for all GNSS)</li>
     1938<li>&#8216;C:IQX I:ABCX&#8217; (System specific signal priorities for BDS and IRNSS)</li>
     1939<li>&#8216;G:12&amp;PWCSLXYN G:5&amp;IQX R:12&amp;PC R:3&amp;IQX&#8217; (System and frequency specific signal priorities)</li>
     1940</ul>
     1941<p>The default &#8216;Signal priority&#8217; list is defined as follows: &#8216;G:12&amp;PWCSLXYN G:5&amp;IQX R:12&amp;PC R:3&amp;IQX E:16&amp;BCX E:578&amp;IQX J:1&amp;SLXCZ J:26&amp;SLX J:5&amp;IQX C:IQX I:ABCX S:1&amp;C S:5&amp;IQX&#8217;</p>
     1942<p>As an example the &#8216;Signal priority&#8217; of &#8216;<a href="#id74"><span class="problematic" id="id75">CWPX_</span></a>?&#8217; is explained in more detail:</p>
     1943<ul class="simple">
     1944<li>Signals with attribute &#8216;C&#8217; enjoy the highest priority. If such a Version 3 observation becomes available, it is presented as RINEX Version 2 observation if that is the format you wish to see. Observations with other attributes are being ignored.</li>
     1945<li>If no signal with &#8216;C&#8217; attribute is available but we have an observation with &#8216;W&#8217; attribute, BNC presents that one as RINEX Version 2 observation and ignores all observations with other attributes. The same applies mutatis mutandis to observations with P and X attributes.</li>
     1946<li>If no signal with &#8216;C&#8217;, &#8216;W&#8217;, &#8216;P&#8217;, or &#8216;X&#8217; attribute is available but a signal with undefined generation attribute (underscore character, &#8216;_&#8217;) exists, BNC presents that one as RINEX Version 2 observation. Note that observation attributes should actually always be available in RINEX Version 3. Hence the underscore character makes only sense in a few very special cases.</li>
     1947<li>If no signal with &#8216;C&#8217;, &#8216;W&#8217;, &#8216;P&#8217;, &#8216;X&#8217;, or &#8216;_&#8217; generation attribute exists then the question mark &#8216;?&#8217; tells BNC to present the first of any other appearing signal as RINEX Version 2 observation.</li>
     1948</ul>
     1949<p>You may like to specify your own &#8216;Signal priority&#8217; string(s) for producing RINEX Version 2 files. If you neither convert observation streams to RINEX Version 2 nor concatenate RINEX Version 3 to Version 2 files, then the &#8216;Version 2&#8217; option is meaningless.</p>
     1950</div>
     1951<div class="section" id="version-3-optional">
     1952<h4>Version 3 - optional<a class="headerlink" href="#version-3-optional" title="Permalink to this headline">¶</a></h4>
     1953<p>The default format for RINEX Observation files is RINEX Version 2.11. Select RINEX &#8216;Version 3&#8217; if you would like to save RTCM Version 3 observation streams in RINEX Version 3.03 format. Note that it is possible to force an RTCM Version 2 stream to be saved in RINEX Version 3 file format. However, this is not recommended because such stream cannot be precisely mapped to RINEX Version 3 as the required information on tracking modes (observation attributes) is not part of RTCM Version 2.</p>
     1954</div>
     1955<div class="section" id="version-3-filenames-optional">
     1956<h4>Version 3 Filenames - optional<a class="headerlink" href="#version-3-filenames-optional" title="Permalink to this headline">¶</a></h4>
     1957<p>Tick check box &#8216;Version 3 filenames&#8217; to let BNC create so-called extended filenames following the RINEX Version 3 standard. Default is an empty check box, meaning to still use filenames following the RINEX Version 2 standard although the file content is saved in RINEX Version 3 format.</p>
     1958</div>
     1959</div>
     1960<div class="section" id="rinex-ephemeris">
     1961<span id="index-16"></span><h3>RINEX Ephemeris<a class="headerlink" href="#rinex-ephemeris" title="Permalink to this headline">¶</a></h3>
     1962<p>Broadcast Ephemeris can be saved in RINEX Navigation files when received e.g. via RTCM Version 3 message types 1019 (GPS) or 1020 (GLONASS) or 1044 (QZSS) or 1043 (SBAS) or 1045 and 1046 (Galileo) or 63 (BDS/BeiDou, tentative message number). The filename convention follows the details given in section &#8216;RINEX Filenames&#8217; except that the first four characters are &#8216;BRDC&#8217;. For RINEX Version 2 Navigation files the last character is &#8216;N&#8217; or &#8216;G&#8217; for GPS or GLONASS ephemeris in two separate files. Regarding RINEX Version 3 you will find all ephemeris data for GPS, GLONASS, Galileo, SBAS, QZSS, and BDS gathered in one Navigation file.</p>
     1963<p>The following is an example for a RINEX Version 3 Navigation filename. The file contains one day&#8217;s data. &#8216;MN&#8217; stands for &#8216;Multi Constellation Navigation&#8217; data.</p>
     1964<div class="highlight-console"><div class="highlight"><pre><span class="go">BRDC00DEU_S_20121600000_01D_MN.rnx</span>
     1965</pre></div>
     1966</div>
     1967<p>Note that streams dedicated to carry Broadcast Ephemeris messages in RTCM Version 3 format in high repetition rates are listed on <a class="reference external" href="http://igs.bkg.bund.de/ntrip/ephemeris">http://igs.bkg.bund.de/ntrip/ephemeris</a>. Note further that BNC will ignore incorrect or outdated Broadcast Ephemeris data when necessary, leaving a note &#8216;WRONG EPHEMERIS&#8217; or &#8216;OUTDATED EPHEMERIS&#8217; in the logfile.</p>
     1968<div class="section" id="id1">
     1969<h4>Directory - optional<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h4>
     1970<p>Specify a path for saving Broadcast Ephemeris data in RINEX Navigation files. If the specified directory does not exist, BNC will not create RINEX Navigation files. Default value for Ephemeris &#8216;Directory&#8217; is an empty option field, meaning that no RINEX Navigation files will be created.</p>
     1971</div>
     1972<div class="section" id="interval-mandatory-if-directory-is-set">
     1973<h4>Interval - mandatory if &#8216;Directory&#8217; is set<a class="headerlink" href="#interval-mandatory-if-directory-is-set" title="Permalink to this headline">¶</a></h4>
     1974<p>Select the length of RINEX Navigation files. The default value is &#8216;1 day&#8217;.</p>
     1975</div>
     1976<div class="section" id="port-optional">
     1977<h4>Port - optional<a class="headerlink" href="#port-optional" title="Permalink to this headline">¶</a></h4>
     1978<p>BNC can output Broadcast Ephemeris in RINEX Version 3 format on your local host (IP 127.0.0.1) through an IP &#8216;Port&#8217;. Specify an IP port number to activate this function. The default is an empty option field, meaning that no ASCII ephemeris output via IP port is generated.</p>
     1979<p>The source code for BNC comes with an example Perl script <code class="docutils literal"><span class="pre">test_tcpip_client.pl</span></code> that allows you to read BNC&#8217;s ephemeris ASCII output from the IP port.</p>
     1980</div>
     1981<div class="section" id="version-optional">
     1982<h4>Version - optional<a class="headerlink" href="#version-optional" title="Permalink to this headline">¶</a></h4>
     1983<p>Default format for RINEX Navigation files containing Broadcast Ephemeris is RINEX Version 2.11. Select &#8216;Version 3&#8217; if you want to save the ephemeris data in RINEX Version 3.03 format. Note that this does not concern the Broadcast Ephemeris output through IP port, which is always in RINEX Version 3.03 format.</p>
     1984</div>
     1985<div class="section" id="id2">
     1986<h4>Version 3 Filenames - optional<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h4>
     1987<p>Tick check box &#8216;Version 3 filenames&#8217; to let BNC create so-called extended filenames following the RINEX Version 3 standard. Default is an empty check box, meaning to still use filenames following the RINEX Version 2 standard although the file content is saved in RINEX Version 3 format <a class="reference internal" href="#fig-9"><span class="std std-numref">(Fig. 10)</span></a>.</p>
     1988<div class="figure" id="id26">
     1989<span id="fig-9"></span><a class="reference internal image-reference" href="_images/fig_9.png"><img alt="_images/fig_9.png" src="_images/fig_9.png" style="width: 859.0px; height: 510.0px;" /></a>
     1990<p class="caption"><span class="caption-number">Fig. 10 </span><span class="caption-text">BNC converting Broadcast Ephemeris stream to RINEX Version 3 Navigation files</span></p>
     1991</div>
     1992</div>
     1993</div>
     1994<div class="section" id="rinex-editing-qc">
     1995<span id="index-17"></span><h3>RINEX Editing &amp; QC<a class="headerlink" href="#rinex-editing-qc" title="Permalink to this headline">¶</a></h3>
     1996<p>Besides stream conversion from RTCM to RINEX, BNC allows editing RINEX files or concatenate their content. RINEX Observation and Navigation files can be handled. BNC can also carry out a RINEX file Quality Check. In summary and besides Stream <strong>T</strong>ranslation, this functionality in BNC covers</p>
     1997<ul class="simple">
     1998<li>File <strong>E</strong>diting and concatenation</li>
     1999<li>File <strong>Q</strong>uality <strong>C</strong>heck<ul>
    16442000<li>Multipath analysis sky plots</li>
    16452001<li>Signal-to-noise ratio sky plots</li>
     
    16482004<li>PDOP plots</li>
    16492005</ul>
    1650 </ul>
    1651 and hence follows UNAVCO's famous TEQC program (see Estey and Meertens 1999). The remarkable thing about BNC in this context is that it supports RINEX Version 3 under GNU General Public License with full GUI support and graphics output.
    1652 </p>
     2006</li>
     2007</ul>
     2008<p>and hence follows UNAVCO&#8217;s famous teqc program (see <a class="reference internal" href="bnchelp.html#estey1999a" id="id3">[7]</a>). The remarkable thing about BNC in this context is that it supports RINEX Version 3 under GNU General Public License with full GUI support and graphics output.</p>
     2009<div class="section" id="action-optional">
     2010<h4>Action - optional<a class="headerlink" href="#action-optional" title="Permalink to this headline">¶</a></h4>
     2011<p>Select an action. Options are &#8216;Edit/Concatenate&#8217; and &#8216;Analyze&#8217;.</p>
     2012<ul class="simple">
     2013<li>Select &#8216;Edit/Concatenate&#8217; if you want to edit RINEX file content according to options specified under &#8216;Set Edit Options&#8217; or if you want to concatenate several RINEX files.</li>
     2014<li>Select &#8216;Analyze&#8217; if you are interested in a quality check of your RINEX file content.</li>
     2015</ul>
     2016</div>
     2017<div class="section" id="input-files-mandatory">
     2018<h4>Input Files - mandatory<a class="headerlink" href="#input-files-mandatory" title="Permalink to this headline">¶</a></h4>
     2019<p>Specify full path to input RINEX Observation file(s), and specify full path to input RINEX Navigation file(s). When specifying several input files, BNC will concatenate their contents. In case of RINEX Observation input files with different observation type header records, BNC will output only one set of adjusted observation type records in the RINEX header which fits to the whole file content. Note that you may specify several RINEX Version 2 Navigation files for GPS and GLONASS.</p>
     2020</div>
     2021<div class="section" id="output-files-optional-if-action-is-set-to-edit-concatenate">
     2022<h4>Output Files - optional if &#8216;Action&#8217; is set to &#8216;Edit/Concatenate&#8217;<a class="headerlink" href="#output-files-optional-if-action-is-set-to-edit-concatenate" title="Permalink to this headline">¶</a></h4>
     2023<p>If &#8216;Edit/Concatenate&#8217; is selected, specifying the full path to output RINEX Observation file(s) and specifying the full path to output RINEX Navigation file(s) is optional. Default are empty option fields, meaning that no RINEX files will be saved on disk.</p>
     2024</div>
     2025<div class="section" id="id4">
     2026<h4>Logfile - optional<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h4>
     2027<p>Specify the name of a logfile to save information on RINEX file Editing/Concatenation or Analysis. Default is an empty option field, meaning that no logfile will be saved. Note that logfiles from analyzing RINEX files may become quite large. Hence, BNC provides an option &#8216;Summary only&#8217; to limit logfile content to some essential information in case &#8216;Action&#8217; is set to &#8216;Analyze&#8217;. The following is an example for a RINEX quality check analysis logfile:</p>
     2028<div class="highlight-console"><div class="highlight"><pre><span class="go">QC Format Version  : 1.1</span>
    16532029
    1654 <p><h4>2.6.1 <a name="reqcact">Action - optional</h4></p>
    1655 <p>Select an action. Options are 'Edit/Concatenate' and 'Analyze'.
    1656 <ul>
    1657 <li>Select 'Edit/Concatenate' if you want to edit RINEX file content according to options specified under 'Set Edit Options' or if you want to concatenate several RINEX files.</li>
    1658 <li>Select 'Analyze' if you are interested in a quality check of your RINEX file content.</li>
    1659 </ul>
    1660 </p>
     2030<span class="go">Navigation File(s) : BRDC2520.15P</span>
     2031<span class="go">Ephemeris          : 2985 OK   0 BAD</span>
    16612032
    1662 <p><h4>2.6.2 <a name="reqcinp">Input Files - mandatory</h4></p>
    1663 <p>
    1664 Specify full path to input RINEX Observation file(s), and<br>
    1665 specify full path to input RINEX Navigation file(s).
    1666 </p>
    1667 <p>
    1668 When specifying several input files, BNC will concatenate their contents. In case of RINEX Observation input files with different observation type header records, BNC will output only one set of adjusted observation type records in the RINEX header which fits to the whole file content.
    1669 </p>
    1670 <p>
    1671 Note that you may specify several RINEX Version 2 Navigation files for GPS and GLONASS.
    1672 </p>
     2033<span class="go">Observation File   : CUT02520.15O</span>
     2034<span class="go">RINEX Version      : 3.03</span>
     2035<span class="go">Marker Name        : CUT0</span>
     2036<span class="go">Marker Number      : 59945M001</span>
     2037<span class="go">Receiver           : TRIMBLE NETR9</span>
     2038<span class="go">Antenna            : TRM59800.00     SCIS</span>
     2039<span class="go">Position XYZ       :  -2364337.2699   4870285.5624  -3360809.8398</span>
     2040<span class="go">Antenna dH/dE/dN   :   0.0000   0.0000   0.0000</span>
     2041<span class="go">Start Time         : 2015-09-09 13.04.50.0</span>
     2042<span class="go">End Time           : 2015-09-09 23.59.58.0</span>
     2043<span class="go">Interval           : 1</span>
     2044<span class="go">Navigation Systems : 6    C E G J R S</span>
     2045<span class="go">Observation Types C: C2I L2I D2I S2I C6I L6I S6I C7I L7I S7I</span>
     2046<span class="go">Observation Types E: C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X</span>
     2047<span class="go">Observation Types G: C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X</span>
     2048<span class="go">Observation Types J: C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X C5X L5X S5X C6L L6L S6L</span>
     2049<span class="go">Observation Types R: C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P</span>
     2050<span class="go">Observation Types S: C1C L1C D1C S1C C5I L5I S5I</span>
    16732051
    1674 <p><h4>2.6.3 <a name="reqcout">Output Files - optional if 'Action' is set to 'Edit/Concatenate'</h4></p>
    1675 <p>
    1676 If 'Edit/Concatenate' is selected, specifying the full path to output RINEX Observation file(s) and specifying the full path to output RINEX Navigation file(s) is optional. Default are empty option fields, meaning that no RINEX files will be saved on disk.
    1677 </p>
     2052<span class="go">  C: Satellites: 13</span>
     2053<span class="go">  C: Signals   : 3    2I 6I 7I</span>
    16782054
    1679 <p><h4>2.6.4 <a name="reqclog">Logfile - optional</h4></p>
    1680 <p>
    1681 Specify the name of a logfile to save information on RINEX file Editing/Concatenation or Analysis. Default is an empty option field, meaning that no logfile will be saved.
    1682 </p>
     2055<span class="go">      C:   2I: Observations      : 396567 (  511017)    77.60 %</span>
     2056<span class="go">      C:   2I: Slips (file+found):        0 +       0</span>
     2057<span class="go">      C:   2I: Gaps              :     8676</span>
     2058<span class="go">      C:   2I: Mean SNR          :     41.7</span>
     2059<span class="go">      C:   2I: Mean Multipath    :     0.42</span>
    16832060
    1684 <p>
    1685 Note that logfiles from analyzing RINEX files may become quite large. Hence, BNC provides an option 'Summary only' to limit logfile content to some essential information in case 'Action' is set to 'Analyze'. The following is an example for a RINEX quality check analysis logfile:
    1686 <pre>
    1687 QC Format Version  : 1.1
     2061<span class="go">      C:   6I: Observations      : 396233 (  511017)    77.54 %</span>
     2062<span class="go">      C:   6I: Slips (file+found):        0 +       0</span>
     2063<span class="go">      C:   6I: Gaps              :     8761</span>
     2064<span class="go">      C:   6I: Mean SNR          :     44.4</span>
     2065<span class="go">      C:   6I: Mean Multipath    :     0.00</span>
    16882066
    1689 Navigation File(s) : BRDC2520.15P
    1690 Ephemeris          : 2985 OK   0 BAD
     2067<span class="go">      C:   7I: Observations      : 396233 (  511017)    77.54 %</span>
     2068<span class="go">      C:   7I: Slips (file+found):        0 +       0</span>
     2069<span class="go">      C:   7I: Gaps              :     8761</span>
     2070<span class="go">      C:   7I: Mean SNR          :     43.6</span>
     2071<span class="go">      C:   7I: Mean Multipath    :     0.30</span>
    16912072
    1692 Observation File   : CUT02520.15O
    1693 RINEX Version      : 3.03
    1694 Marker Name        : CUT0
    1695 Marker Number      : 59945M001
    1696 Receiver           : TRIMBLE NETR9
    1697 Antenna            : TRM59800.00     SCIS
    1698 Position XYZ       :  -2364337.2699   4870285.5624  -3360809.8398
    1699 Antenna dH/dE/dN   :   0.0000   0.0000   0.0000
    1700 Start Time         : 2015-09-09 13.04.50.0
    1701 End Time           : 2015-09-09 23.59.58.0
    1702 Interval           : 1
    1703 Navigation Systems : 6    C E G J R S
    1704 Observation Types C: C2I L2I D2I S2I C6I L6I S6I C7I L7I S7I
    1705 Observation Types E: C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X
    1706 Observation Types G: C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X
    1707 Observation Types J: C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X C5X L5X S5X C6L L6L S6L
    1708 Observation Types R: C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P
    1709 Observation Types S: C1C L1C D1C S1C C5I L5I S5I
     2073<span class="go">  E: Satellites: 5</span>
     2074<span class="go">  E: Signals   : 4    1X 5X 7X 8X</span>
    17102075
    1711   C: Satellites: 13
    1712   C: Signals   : 3    2I 6I 7I
     2076<span class="go">      E:   1X: Observations      :  74468 (  196545)    37.89 %</span>
     2077<span class="go">      E:   1X: Slips (file+found):        0 +       2</span>
     2078<span class="go">      E:   1X: Gaps              :     2758</span>
     2079<span class="go">      E:   1X: Mean SNR          :     45.1</span>
     2080<span class="go">      E:   1X: Mean Multipath    :     0.37</span>
    17132081
    1714       C:   2I: Observations      : 396567 (  511017)    77.60 %
    1715       C:   2I: Slips (file+found):        0 +       0
    1716       C:   2I: Gaps              :     8676
    1717       C:   2I: Mean SNR          :     41.7
    1718       C:   2I: Mean Multipath    :     0.42
     2082<span class="go">      E:   5X: Observations      :  74422 (  196545)    37.87 %</span>
     2083<span class="go">      E:   5X: Slips (file+found):        0 +       2</span>
     2084<span class="go">      E:   5X: Gaps              :     2785</span>
     2085<span class="go">      E:   5X: Mean SNR          :     45.2</span>
     2086<span class="go">      E:   5X: Mean Multipath    :     0.32</span>
    17192087
    1720       C:   6I: Observations      : 396233 (  511017)    77.54 %
    1721       C:   6I: Slips (file+found):        0 +       0
    1722       C:   6I: Gaps              :     8761
    1723       C:   6I: Mean SNR          :     44.4
    1724       C:   6I: Mean Multipath    :     0.00
     2088<span class="go">      E:   7X: Observations      :  74422 (  196545)    37.87 %</span>
     2089<span class="go">      E:   7X: Slips (file+found):        0 +       0</span>
     2090<span class="go">      E:   7X: Gaps              :     2785</span>
     2091<span class="go">      E:   7X: Mean SNR          :     44.2</span>
     2092<span class="go">      E:   7X: Mean Multipath    :     0.00</span>
    17252093
    1726       C:   7I: Observations      : 396233 (  511017)    77.54 %
    1727       C:   7I: Slips (file+found):        0 +       0
    1728       C:   7I: Gaps              :     8761
    1729       C:   7I: Mean SNR          :     43.6
    1730       C:   7I: Mean Multipath    :     0.30
     2094<span class="go">      E:   8X: Observations      :  74429 (  196545)    37.87 %</span>
     2095<span class="go">      E:   8X: Slips (file+found):        0 +       0</span>
     2096<span class="go">      E:   8X: Gaps              :     2784</span>
     2097<span class="go">      E:   8X: Mean SNR          :     49.9</span>
     2098<span class="go">      E:   8X: Mean Multipath    :     0.00</span>
    17312099
    1732   E: Satellites: 5
    1733   E: Signals   : 4    1X 5X 7X 8X
     2100<span class="go">  G: Satellites: 28</span>
     2101<span class="go">  G: Signals   : 4    1C 2W 2X 5X</span>
    17342102
    1735       E:   1X: Observations      :  74468 (  196545)    37.89 %
    1736       E:   1X: Slips (file+found):        0 +       2
    1737       E:   1X: Gaps              :     2758
    1738       E:   1X: Mean SNR          :     45.1
    1739       E:   1X: Mean Multipath    :     0.37
     2103<span class="go">      G:   1C: Observations      : 439952 ( 1100652)    39.97 %</span>
     2104<span class="go">      G:   1C: Slips (file+found):        0 +      21</span>
     2105<span class="go">      G:   1C: Gaps              :    10901</span>
     2106<span class="go">      G:   1C: Mean SNR          :     44.0</span>
     2107<span class="go">      G:   1C: Mean Multipath    :     0.63</span>
    17402108
    1741       E:   5X: Observations      :  74422 (  196545)    37.87 %
    1742       E:   5X: Slips (file+found):        0 +       2
    1743       E:   5X: Gaps              :     2785
    1744       E:   5X: Mean SNR          :     45.2
    1745       E:   5X: Mean Multipath    :     0.32
     2109<span class="go">      G:   2W: Observations      : 422560 ( 1100652)    38.39 %</span>
     2110<span class="go">      G:   2W: Slips (file+found):        0 +      19</span>
     2111<span class="go">      G:   2W: Gaps              :    11133</span>
     2112<span class="go">      G:   2W: Mean SNR          :     31.1</span>
     2113<span class="go">      G:   2W: Mean Multipath    :     0.42</span>
    17462114
    1747       E:   7X: Observations      :  74422 (  196545)    37.87 %
    1748       E:   7X: Slips (file+found):        0 +       0
    1749       E:   7X: Gaps              :     2785
    1750       E:   7X: Mean SNR          :     44.2
    1751       E:   7X: Mean Multipath    :     0.00
     2115<span class="go">      G:   2X: Observations      : 205305 ( 1100652)    18.65 %</span>
     2116<span class="go">      G:   2X: Slips (file+found):        0 +      10</span>
     2117<span class="go">      G:   2X: Gaps              :     7269</span>
     2118<span class="go">      G:   2X: Mean SNR          :     43.3</span>
     2119<span class="go">      G:   2X: Mean Multipath    :     0.47</span>
    17522120
    1753       E:   8X: Observations      :  74429 (  196545)    37.87 %
    1754       E:   8X: Slips (file+found):        0 +       0
    1755       E:   8X: Gaps              :     2784
    1756       E:   8X: Mean SNR          :     49.9
    1757       E:   8X: Mean Multipath    :     0.00
     2121<span class="go">      G:   5X: Observations      : 120638 ( 1100652)    10.96 %</span>
     2122<span class="go">      G:   5X: Slips (file+found):        0 +       0</span>
     2123<span class="go">      G:   5X: Gaps              :     3330</span>
     2124<span class="go">      G:   5X: Mean SNR          :     49.9</span>
     2125<span class="go">      G:   5X: Mean Multipath    :     0.00</span>
    17582126
    1759   G: Satellites: 28
    1760   G: Signals   : 4    1C 2W 2X 5X
     2127<span class="go">  J: Satellites: 1</span>
     2128<span class="go">  J: Signals   : 6    1C 1X 1Z 2X 5X 6L</span>
    17612129
    1762       G:   1C: Observations      : 439952 ( 1100652)    39.97 %
    1763       G:   1C: Slips (file+found):        0 +      21
    1764       G:   1C: Gaps              :    10901
    1765       G:   1C: Mean SNR          :     44.0
    1766       G:   1C: Mean Multipath    :     0.63
     2130<span class="go">      J:   1C: Observations      :  38040 (   39309)    96.77 %</span>
     2131<span class="go">      J:   1C: Slips (file+found):        0 +       0</span>
     2132<span class="go">      J:   1C: Gaps              :     1003</span>
     2133<span class="go">      J:   1C: Mean SNR          :     49.0</span>
     2134<span class="go">      J:   1C: Mean Multipath    :     0.33</span>
    17672135
    1768       G:   2W: Observations      : 422560 ( 1100652)    38.39 %
    1769       G:   2W: Slips (file+found):        0 +      19
    1770       G:   2W: Gaps              :    11133
    1771       G:   2W: Mean SNR          :     31.1
    1772       G:   2W: Mean Multipath    :     0.42
     2136<span class="go">      J:   1X: Observations      :  38040 (   39309)    96.77 %</span>
     2137<span class="go">      J:   1X: Slips (file+found):        0 +       0</span>
     2138<span class="go">      J:   1X: Gaps              :     1003</span>
     2139<span class="go">      J:   1X: Mean SNR          :     51.5</span>
     2140<span class="go">      J:   1X: Mean Multipath    :     0.32</span>
    17732141
    1774       G:   2X: Observations      : 205305 ( 1100652)    18.65 %
    1775       G:   2X: Slips (file+found):        0 +      10
    1776       G:   2X: Gaps              :     7269
    1777       G:   2X: Mean SNR          :     43.3
    1778       G:   2X: Mean Multipath    :     0.47
     2142<span class="go">      J:   1Z: Observations      :  38040 (   39309)    96.77 %</span>
     2143<span class="go">      J:   1Z: Slips (file+found):        0 +       0</span>
     2144<span class="go">      J:   1Z: Gaps              :     1003</span>
     2145<span class="go">      J:   1Z: Mean SNR          :     48.4</span>
     2146<span class="go">      J:   1Z: Mean Multipath    :     0.40</span>
    17792147
    1780       G:   5X: Observations      : 120638 ( 1100652)    10.96 %
    1781       G:   5X: Slips (file+found):        0 +       0
    1782       G:   5X: Gaps              :     3330
    1783       G:   5X: Mean SNR          :     49.9
    1784       G:   5X: Mean Multipath    :     0.00
     2148<span class="go">      J:   2X: Observations      :  38040 (   39309)    96.77 %</span>
     2149<span class="go">      J:   2X: Slips (file+found):        0 +       0</span>
     2150<span class="go">      J:   2X: Gaps              :     1003</span>
     2151<span class="go">      J:   2X: Mean SNR          :     48.7</span>
     2152<span class="go">      J:   2X: Mean Multipath    :     0.31</span>
    17852153
    1786   J: Satellites: 1
    1787   J: Signals   : 6    1C 1X 1Z 2X 5X 6L
     2154<span class="go">      J:   5X: Observations      :  38040 (   39309)    96.77 %</span>
     2155<span class="go">      J:   5X: Slips (file+found):        0 +       0</span>
     2156<span class="go">      J:   5X: Gaps              :     1003</span>
     2157<span class="go">      J:   5X: Mean SNR          :     53.0</span>
     2158<span class="go">      J:   5X: Mean Multipath    :     0.00</span>
    17882159
    1789       J:   1C: Observations      :  38040 (   39309)    96.77 %
    1790       J:   1C: Slips (file+found):        0 +       0
    1791       J:   1C: Gaps              :     1003
    1792       J:   1C: Mean SNR          :     49.0
    1793       J:   1C: Mean Multipath    :     0.33
     2160<span class="go">      J:   6L: Observations      :  38040 (   39309)    96.77 %</span>
     2161<span class="go">      J:   6L: Slips (file+found):        0 +       0</span>
     2162<span class="go">      J:   6L: Gaps              :     1003</span>
     2163<span class="go">      J:   6L: Mean SNR          :     50.6</span>
     2164<span class="go">      J:   6L: Mean Multipath    :     0.00</span>
    17942165
    1795       J:   1X: Observations      :  38040 (   39309)    96.77 %
    1796       J:   1X: Slips (file+found):        0 +       0
    1797       J:   1X: Gaps              :     1003
    1798       J:   1X: Mean SNR          :     51.5
    1799       J:   1X: Mean Multipath    :     0.32
     2166<span class="go">  R: Satellites: 23</span>
     2167<span class="go">  R: Signals   : 4    1C 1P 2C 2P</span>
    18002168
    1801       J:   1Z: Observations      :  38040 (   39309)    96.77 %
    1802       J:   1Z: Slips (file+found):        0 +       0
    1803       J:   1Z: Gaps              :     1003
    1804       J:   1Z: Mean SNR          :     48.4
    1805       J:   1Z: Mean Multipath    :     0.40
     2169<span class="go">      R:   1C: Observations      : 323918 (  904107)    35.83 %</span>
     2170<span class="go">      R:   1C: Slips (file+found):        0 +      44</span>
     2171<span class="go">      R:   1C: Gaps              :     7295</span>
     2172<span class="go">      R:   1C: Mean SNR          :     44.9</span>
     2173<span class="go">      R:   1C: Mean Multipath    :     0.77</span>
    18062174
    1807       J:   2X: Observations      :  38040 (   39309)    96.77 %
    1808       J:   2X: Slips (file+found):        0 +       0
    1809       J:   2X: Gaps              :     1003
    1810       J:   2X: Mean SNR          :     48.7
    1811       J:   2X: Mean Multipath    :     0.31
     2175<span class="go">      R:   1P: Observations      : 323761 (  904107)    35.81 %</span>
     2176<span class="go">      R:   1P: Slips (file+found):        0 +      44</span>
     2177<span class="go">      R:   1P: Gaps              :     7305</span>
     2178<span class="go">      R:   1P: Mean SNR          :     43.4</span>
     2179<span class="go">      R:   1P: Mean Multipath    :     0.58</span>
    18122180
    1813       J:   5X: Observations      :  38040 (   39309)    96.77 %
    1814       J:   5X: Slips (file+found):        0 +       0
    1815       J:   5X: Gaps              :     1003
    1816       J:   5X: Mean SNR          :     53.0
    1817       J:   5X: Mean Multipath    :     0.00
     2181<span class="go">      R:   2C: Observations      : 323521 (  904107)    35.78 %</span>
     2182<span class="go">      R:   2C: Slips (file+found):        0 +      44</span>
     2183<span class="go">      R:   2C: Gaps              :     7305</span>
     2184<span class="go">      R:   2C: Mean SNR          :     40.8</span>
     2185<span class="go">      R:   2C: Mean Multipath    :     0.56</span>
    18182186
    1819       J:   6L: Observations      :  38040 (   39309)    96.77 %
    1820       J:   6L: Slips (file+found):        0 +       0
    1821       J:   6L: Gaps              :     1003
    1822       J:   6L: Mean SNR          :     50.6
    1823       J:   6L: Mean Multipath    :     0.00
     2187<span class="go">      R:   2P: Observations      : 321751 (  904107)    35.59 %</span>
     2188<span class="go">      R:   2P: Slips (file+found):        0 +      37</span>
     2189<span class="go">      R:   2P: Gaps              :     7317</span>
     2190<span class="go">      R:   2P: Mean SNR          :     40.3</span>
     2191<span class="go">      R:   2P: Mean Multipath    :     0.49</span>
    18242192
    1825   R: Satellites: 23
    1826   R: Signals   : 4    1C 1P 2C 2P
     2193<span class="go">  S: Satellites: 4</span>
     2194<span class="go">  S: Signals   : 2    1C 5I</span>
    18272195
    1828       R:   1C: Observations      : 323918 (  904107)    35.83 %
    1829       R:   1C: Slips (file+found):        0 +      44
    1830       R:   1C: Gaps              :     7295
    1831       R:   1C: Mean SNR          :     44.9
    1832       R:   1C: Mean Multipath    :     0.77
     2196<span class="go">      S:   1C: Observations      : 152158 (  157236)    96.77 %</span>
     2197<span class="go">      S:   1C: Slips (file+found):        0 +       1</span>
     2198<span class="go">      S:   1C: Gaps              :     4013</span>
     2199<span class="go">      S:   1C: Mean SNR          :     40.4</span>
     2200<span class="go">      S:   1C: Mean Multipath    :     0.75</span>
    18332201
    1834       R:   1P: Observations      : 323761 (  904107)    35.81 %
    1835       R:   1P: Slips (file+found):        0 +      44
    1836       R:   1P: Gaps              :     7305
    1837       R:   1P: Mean SNR          :     43.4
    1838       R:   1P: Mean Multipath    :     0.58
     2202<span class="go">      S:   5I: Observations      :  76078 (  157236)    48.38 %</span>
     2203<span class="go">      S:   5I: Slips (file+found):        0 +       1</span>
     2204<span class="go">      S:   5I: Gaps              :     2007</span>
     2205<span class="go">      S:   5I: Mean SNR          :     44.1</span>
     2206<span class="go">      S:   5I: Mean Multipath    :     0.47</span>
    18392207
    1840       R:   2C: Observations      : 323521 (  904107)    35.78 %
    1841       R:   2C: Slips (file+found):        0 +      44
    1842       R:   2C: Gaps              :     7305
    1843       R:   2C: Mean SNR          :     40.8
    1844       R:   2C: Mean Multipath    :     0.56
    1845 
    1846       R:   2P: Observations      : 321751 (  904107)    35.59 %
    1847       R:   2P: Slips (file+found):        0 +      37
    1848       R:   2P: Gaps              :     7317
    1849       R:   2P: Mean SNR          :     40.3
    1850       R:   2P: Mean Multipath    :     0.49
    1851 
    1852   S: Satellites: 4
    1853   S: Signals   : 2    1C 5I
    1854 
    1855       S:   1C: Observations      : 152158 (  157236)    96.77 %
    1856       S:   1C: Slips (file+found):        0 +       1
    1857       S:   1C: Gaps              :     4013
    1858       S:   1C: Mean SNR          :     40.4
    1859       S:   1C: Mean Multipath    :     0.75
    1860 
    1861       S:   5I: Observations      :  76078 (  157236)    48.38 %
    1862       S:   5I: Slips (file+found):        0 +       1
    1863       S:   5I: Gaps              :     2007
    1864       S:   5I: Mean SNR          :     44.1
    1865       S:   5I: Mean Multipath    :     0.47
    1866 
    1867 > 2015 09 09 13 04 50.0000000 23  1.2
    1868 R09   1.46   36.90   8  L1C s. 34.3  C1C  . 0.00  L1P s. 33.2  C1P  . 0.00  L2C s. 26.4  C2C  . 0.00  L2P s. 22.1  C2P  . 0.00
    1869 R10  49.67   46.84   8  L1C .. 52.3  C1C  . 0.62  L1P .. 51.2  C1P  . 0.52  L2C .. 42.9  C2C  . 0.51  L2P .. 42.4  C2P  . 0.40
    1870 R11  68.25 -168.71   8  L1C .. 52.1  C1C  . 0.32  L1P .. 50.2  C1P  . 0.38  L2C .. 44.6  C2C  . 0.40  L2P .. 43.4  C2P  . 0.36
    1871 R12  15.62 -148.75   8  L1C .. 40.6  C1C  . 0.94  L1P .. 38.9  C1P  . 0.51  L2C .. 41.1  C2C  . 0.61  L2P .. 40.7  C2P  . 0.45
    1872 R20  26.26  150.44   8  L1C .. 40.2  C1C  . 0.90  L1P .. 38.8  C1P  . 0.63  L2C .. 44.8  C2C  . 0.57  L2P .. 44.4  C2P  . 0.46
    1873 R21  71.53 -163.80   8  L1C .. 53.3  C1C  . 0.32  L1P .. 51.6  C1P  . 0.40  L2C .. 50.3  C2C  . 0.43  L2P .. 49.3  C2P  . 0.39
    1874 R22  40.38  -54.63   8  L1C .. 50.0  C1C  . 0.44  L1P .. 48.7  C1P  . 0.46  L2C .. 47.1  C2C  . 0.49  L2P .. 46.7  C2P  . 0.44
    1875 E11  68.80  -54.74   8  L1X .. 49.9  C1X  . 0.22  L5X .. 49.8  C5X  . 0.19  L7X .. 49.1  C7X  . 0.00  L8X .. 55.3  C8X  . 0.00
    1876 E12  58.84  141.76   8  L1X .. 50.0  C1X  . 0.14  L5X .. 49.4  C5X  . 0.21  L7X .. 48.2  C7X  . 0.00  L8X .. 55.1  C8X  . 0.00
    1877 E18   0.00    0.00   8  L1X .. 53.5  C1X  . 0.11  L5X .. 51.0  C5X  . 0.15  L7X .. 50.1  C7X  . 0.00  L8X .. 56.5  C8X  . 0.00
    1878 J01  21.34   23.40  12  L1C .. 41.2  C1C  . 0.59  L1X .. 43.2  C1X  . 0.38  L1Z .. 41.3  C1Z  . 0.58  L2X .. 40.0  C2X  . 0.47  L5X .. 44.7  C5X  . 0.00  L6L .. 41.6  C6L  . 0.00
    1879 S27  16.04  -73.53   4  L1C .. 37.8  C1C  . 0.81  L5I .. 39.9  C5I  . 0.41
    1880 S28  38.63  -50.63   4  L1C .. 45.5  C1C  . 0.49  L5I .. 47.4  C5I  . 0.48
    1881 S29  41.28   46.44   2  L1C .. 43.2  C1C  . 0.00
    1882 S37  41.28   46.44   2  L1C .. 42.1  C1C  . 0.00
    1883 C01  45.38   41.07   6  L2I .. 42.1  C2I  . 0.20  L6I .. 45.1  C6I  . 0.00  L7I .. 46.0  C7I  . 0.22
    1884 C02  36.53  -53.83   6  L2I .. 37.1  C2I  . 0.31  L6I .. 42.6  C6I  . 0.00  L7I .. 41.3  C7I  . 0.24
    1885 C03  53.80  -10.40   6  L2I .. 42.8  C2I  . 0.19  L6I .. 47.3  C6I  . 0.00  L7I .. 46.0  C7I  . 0.21
    1886 C04  30.52   62.20   6  L2I .. 37.3  C2I  . 0.33  L6I .. 42.4  C6I  . 0.00  L7I .. 41.3  C7I  . 0.25
    1887 C05  19.48  -71.66   6  L2I .. 36.6  C2I  . 0.40  L6I .. 40.0  C6I  . 0.00  L7I .. 38.5  C7I  . 0.37
    1888 C07  63.30   26.64   6  L2I .. 48.5  C2I  . 0.41  L6I .. 49.3  C6I  . 0.00  L7I .. 48.1  C7I  . 0.25
    1889 C08  76.83 -113.07   6  L2I .. 48.9  C2I  . 0.22  L6I .. 50.5  C6I  . 0.00  L7I .. 48.7  C7I  . 0.24
    1890 C10  83.00  -66.65   6  L2I .. 48.8  C2I  . 0.20  L6I .. 50.0  C6I  . 0.00  L7I .. 48.1  C7I  . 0.23
    1891 > 2015 09 09 13 04 52.0000000 33  0.9
    1892 ...
    1893 </pre>
    1894 </p>
    1895 <p>
    1896 Note that in addition to cycle slips recorded in the RINEX 'file', cycle slips identified by BNC are reported as 'found'.
    1897 </p>
    1898 
    1899 <p><h4>2.6.5 <a name="reqcplots">Plots for Signals - mandatory if 'Action' is set to 'Analyze'</h4></p>
    1900 <p>
    1901 Multipath and signal-to-noise sky plots as well as plots for satellite availability, elevation and PDOP are produced per GNSS system and frequency with the multipath analysis based on CnC observation types (n = band / frequency). The 'Plots for signals' option lets you exactly specify the observation signals to be used for that and also enables the plot production. You can specify the navigation system (C = BDS, E = Galileo, G = GPS, J = QZSS, R = GLONASS, S = SBAS), the frequency, and the tracking mode or channel as defined in RINEX Version 3. Specifications for frequency and tracking mode or channel must be separated by ampersand character '&'. Specifications for each navigation systems must be separated by blank character ' '. The following string is an example for option field 'Plots of signals':
    1902 <br>
    1903 <pre>
    1904    C:2&7 E:1&5 G:1&2 J:1&2 R:1&2 S:1&5
    1905 </pre>
    1906 This default configuration will present:
    1907 <ul>
     2208<span class="gp">&gt;</span> <span class="m">2015</span> <span class="m">09</span> <span class="m">09</span> <span class="m">13</span> <span class="m">04</span> 50.0000000 <span class="m">23</span>  1.2
     2209<span class="go">R09   1.46   36.90   8  L1C s. 34.3  C1C  . 0.00  L1P s. 33.2  C1P  . 0.00  L2C s. 26.4  C2C  . 0.00  L2P s. 22.1  C2P  . 0.00</span>
     2210<span class="go">R10  49.67   46.84   8  L1C .. 52.3  C1C  . 0.62  L1P .. 51.2  C1P  . 0.52  L2C .. 42.9  C2C  . 0.51  L2P .. 42.4  C2P  . 0.40</span>
     2211<span class="go">R11  68.25 -168.71   8  L1C .. 52.1  C1C  . 0.32  L1P .. 50.2  C1P  . 0.38  L2C .. 44.6  C2C  . 0.40  L2P .. 43.4  C2P  . 0.36</span>
     2212<span class="go">R12  15.62 -148.75   8  L1C .. 40.6  C1C  . 0.94  L1P .. 38.9  C1P  . 0.51  L2C .. 41.1  C2C  . 0.61  L2P .. 40.7  C2P  . 0.45</span>
     2213<span class="go">R20  26.26  150.44   8  L1C .. 40.2  C1C  . 0.90  L1P .. 38.8  C1P  . 0.63  L2C .. 44.8  C2C  . 0.57  L2P .. 44.4  C2P  . 0.46</span>
     2214<span class="go">R21  71.53 -163.80   8  L1C .. 53.3  C1C  . 0.32  L1P .. 51.6  C1P  . 0.40  L2C .. 50.3  C2C  . 0.43  L2P .. 49.3  C2P  . 0.39</span>
     2215<span class="go">R22  40.38  -54.63   8  L1C .. 50.0  C1C  . 0.44  L1P .. 48.7  C1P  . 0.46  L2C .. 47.1  C2C  . 0.49  L2P .. 46.7  C2P  . 0.44</span>
     2216<span class="go">E11  68.80  -54.74   8  L1X .. 49.9  C1X  . 0.22  L5X .. 49.8  C5X  . 0.19  L7X .. 49.1  C7X  . 0.00  L8X .. 55.3  C8X  . 0.00</span>
     2217<span class="go">E12  58.84  141.76   8  L1X .. 50.0  C1X  . 0.14  L5X .. 49.4  C5X  . 0.21  L7X .. 48.2  C7X  . 0.00  L8X .. 55.1  C8X  . 0.00</span>
     2218<span class="go">E18   0.00    0.00   8  L1X .. 53.5  C1X  . 0.11  L5X .. 51.0  C5X  . 0.15  L7X .. 50.1  C7X  . 0.00  L8X .. 56.5  C8X  . 0.00</span>
     2219<span class="go">J01  21.34   23.40  12  L1C .. 41.2  C1C  . 0.59  L1X .. 43.2  C1X  . 0.38  L1Z .. 41.3  C1Z  . 0.58  L2X .. 40.0  C2X  . 0.47  L5X .. 44.7  C5X  . 0.00  L6L .. 41.6  C6L  . 0.00</span>
     2220<span class="go">S27  16.04  -73.53   4  L1C .. 37.8  C1C  . 0.81  L5I .. 39.9  C5I  . 0.41</span>
     2221<span class="go">S28  38.63  -50.63   4  L1C .. 45.5  C1C  . 0.49  L5I .. 47.4  C5I  . 0.48</span>
     2222<span class="go">S29  41.28   46.44   2  L1C .. 43.2  C1C  . 0.00</span>
     2223<span class="go">S37  41.28   46.44   2  L1C .. 42.1  C1C  . 0.00</span>
     2224<span class="go">C01  45.38   41.07   6  L2I .. 42.1  C2I  . 0.20  L6I .. 45.1  C6I  . 0.00  L7I .. 46.0  C7I  . 0.22</span>
     2225<span class="go">C02  36.53  -53.83   6  L2I .. 37.1  C2I  . 0.31  L6I .. 42.6  C6I  . 0.00  L7I .. 41.3  C7I  . 0.24</span>
     2226<span class="go">C03  53.80  -10.40   6  L2I .. 42.8  C2I  . 0.19  L6I .. 47.3  C6I  . 0.00  L7I .. 46.0  C7I  . 0.21</span>
     2227<span class="go">C04  30.52   62.20   6  L2I .. 37.3  C2I  . 0.33  L6I .. 42.4  C6I  . 0.00  L7I .. 41.3  C7I  . 0.25</span>
     2228<span class="go">C05  19.48  -71.66   6  L2I .. 36.6  C2I  . 0.40  L6I .. 40.0  C6I  . 0.00  L7I .. 38.5  C7I  . 0.37</span>
     2229<span class="go">C07  63.30   26.64   6  L2I .. 48.5  C2I  . 0.41  L6I .. 49.3  C6I  . 0.00  L7I .. 48.1  C7I  . 0.25</span>
     2230<span class="go">C08  76.83 -113.07   6  L2I .. 48.9  C2I  . 0.22  L6I .. 50.5  C6I  . 0.00  L7I .. 48.7  C7I  . 0.24</span>
     2231<span class="go">C10  83.00  -66.65   6  L2I .. 48.8  C2I  . 0.20  L6I .. 50.0  C6I  . 0.00  L7I .. 48.1  C7I  . 0.23</span>
     2232<span class="gp">&gt;</span> <span class="m">2015</span> <span class="m">09</span> <span class="m">09</span> <span class="m">13</span> <span class="m">04</span> 52.0000000 <span class="m">33</span>  0.9
     2233<span class="go">...</span>
     2234</pre></div>
     2235</div>
     2236<p>Note that in addition to cycle slips recorded in the RINEX &#8216;file&#8217;, cycle slips identified by BNC are reported as &#8216;found&#8217;.</p>
     2237</div>
     2238<div class="section" id="plots-for-signals-mandatory-if-action-is-set-to-analyze">
     2239<h4>Plots for Signals - mandatory if &#8216;Action&#8217; is set to &#8216;Analyze&#8217;<a class="headerlink" href="#plots-for-signals-mandatory-if-action-is-set-to-analyze" title="Permalink to this headline">¶</a></h4>
     2240<p>Multipath and signal-to-noise sky plots as well as plots for satellite availability, elevation and PDOP are produced <a class="reference internal" href="#fig-13"><span class="std std-numref">(Fig. 11</span></a>, <a class="reference internal" href="#fig-14"><span class="std std-numref">12</span></a>, <a class="reference internal" href="#fig-15"><span class="std std-numref">13)</span></a> per GNSS system and frequency with the multipath analysis based on CnC observation types (n = band / frequency). The &#8216;Plots for signals&#8217; option lets you exactly specify the observation signals to be used for that and also enables the plot production. You can specify the navigation system (C = BDS, E = Galileo, G = GPS, J = QZSS, R = GLONASS, S = SBAS), the frequency, and the tracking mode or channel as defined in RINEX Version 3. Specifications for frequency and tracking mode or channel must be separated by ampersand character &#8216;&amp;&#8217;. Specifications for each navigation systems must be separated by blank character &#8216; &#8216;. The following string is an example for option field &#8216;Plots of signals&#8217;:</p>
     2241<div class="highlight-console"><div class="highlight"><pre><span class="go">C:2&amp;7 E:1&amp;5 G:1&amp;2 J:1&amp;2 R:1&amp;2 S:1&amp;5</span>
     2242</pre></div>
     2243</div>
     2244<p>This default configuration will present:</p>
     2245<ul class="simple">
    19082246<li>BDS plots for L2 and L7,</li>
    19092247<li>Galileo plots for L1 and L5,</li>
     
    19132251<li>SBAS plots for L1 and L5.</li>
    19142252</ul>
    1915 </p>
    1916 
    1917 <p><h4>2.6.6 <a name="reqcdir">Directory for Plots - optional if 'Action' is set to 'Analyze'</h4></p>
    1918 <p>
    1919 If 'Analyze' is selected, specifying the path to a directory where plot files will be saved is optional. Filenames will be composed from the RINEX input filename(s) plus suffix 'PNG' to indicate the plot file format in use. Default is an empty option field, meaning that plots will not be saved on disk.
    1920 </p>
    1921 
    1922 <p><h4>2.6.7 <a name="reqcedit">Set Edit Options - mandatory if 'Action' is set to 'Edit/Concatenate'</h4></p>
    1923 <p>Once the 'Edit/Concatenate' action is selected, you have to 'Set Edit Options'. BNC lets you specify the RINEX version, a signal priority list when mapping RINEX Version 3 to Version 2, the sampling interval, begin and end of file, operator, observation types, comment lines, and marker, antenna, receiver details. Note that some of the specifications for editing and concatenation are only meaningful for RINEX Observation files but not for RINEX Navigation files.
    1924 </p>
    1925 
    1926 <p>
    1927 A note on converting RINEX Version 3 to RINEX Version 2 and vice versa:
    1928 </p>
    1929 
    1930 <p>
     2253</div>
     2254<div class="section" id="directory-for-plots-optional-if-action-is-set-to-analyze">
     2255<h4>Directory for Plots - optional if &#8216;Action&#8217; is set to &#8216;Analyze&#8217;<a class="headerlink" href="#directory-for-plots-optional-if-action-is-set-to-analyze" title="Permalink to this headline">¶</a></h4>
     2256<p>If &#8216;Analyze&#8217; <a class="reference internal" href="#fig-12"><span class="std std-numref">(see Fig. 16)</span></a> is selected, specifying the path to a directory where plot files will be saved is optional. Filenames will be composed from the RINEX input filename(s) plus suffix &#8216;PNG&#8217; to indicate the plot file format in use. Default is an empty option field, meaning that plots will not be saved on disk.</p>
     2257</div>
     2258<div class="section" id="set-edit-options-mandatory-if-action-is-set-to-edit-concatenate">
     2259<h4>Set Edit Options - mandatory if &#8216;Action&#8217; is set to &#8216;Edit/Concatenate&#8217;<a class="headerlink" href="#set-edit-options-mandatory-if-action-is-set-to-edit-concatenate" title="Permalink to this headline">¶</a></h4>
     2260<p>Once the &#8216;Edit/Concatenate&#8217; action is selected, you have to &#8216;Set Edit Options&#8217; <a class="reference internal" href="#fig-10"><span class="std std-numref">(see Fig. 14)</span></a>. BNC lets you specify the RINEX version, a signal priority list when mapping RINEX Version 3 to Version 2, the sampling interval, begin and end of file, operator, observation types, comment lines, and marker, antenna, receiver details. Note that some of the specifications for editing and concatenation <a class="reference internal" href="#fig-11"><span class="std std-numref">(see Fig. 15)</span></a> are only meaningful for RINEX Observation files but not for RINEX Navigation files.</p>
     2261<p>A note on converting RINEX Version 3 to RINEX Version 2 and vice versa:</p>
    19312262<ul>
    1932 <li>The RINEX Version 2 format ignores signal generation attributes. Therefore, when converting <u>RINEX Version 3 to Version 2</u> Observation files, BNC is forced to somehow map signals with attributes to signals without attributes although this cannot be done in one-to-one correspondence. Hence we introduce a 'Version 2 Signal Priority' list of attributes (characters, forming a string) for mapping Version 3 to Version 2, see details in section 'RINEX Observations/Version 2'. Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:</li>
    1933 <ul>
    1934 <li>'CWPX_?' (General signal priorities valid for all GNSS)</li>
    1935 <li>'C:IQX I:ABCX' (System specific signal priorities for BDS and IRNSS)</li>
    1936 <li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities)</li>
    1937 </ul>
    1938 </p>
    1939 <p>
    1940 The default 'Signal priority' list is defined as follows:
    1941 <ul>
    1942  <li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX E:16&BCX E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:IQX I:ABCX S:1&C S:5&IQX'</li>
    1943 </ul>
    1944 </p>
    1945 <p>
    1946 <li>When converting <u>RINEX Version 2 to Version 3</u> Observation files, the tracking mode or channel information in the (last character out of the 3-character) observation code is left blank if unknown. This is a compromise, knowing that it is not in accordance with the RINEX Version 3 documentation.</li>
    1947 </ul>
    1948 </p>
    1949 
    1950 <p>
    1951 Optionally you may specify a 'RUN BY' string to be included in the emerging new RINEX file header. Default is an empty option field, meaning the operator's ID is automatically used as 'RUN BY' string.
    1952 </p>
    1953 
    1954 <p>
    1955 You can specify a list of observation codes in field 'Use Obs. Types' to limit the output file content to specific observation codes. GNSS system characters in that list are followed by a colon and a 2- or 3-Character observation code. A 2-Character observation code would mean that all available tracking modes of the affected observation type and frequency will be accepted as part of the RINEX output file. Observation codes are separated by a blank character. Default is an empty option field, meaning that any input observation code will become part of the RINEX output file.
    1956 </p>
    1957 
    1958 <p>
    1959 Specifying comment line text to be added to the emerging new RINEX file header is another option. Any introduction of a newline through '\n' in this enforces the beginning of a further comment line. Comment lines will be added to the header immediately after the 'PGM / RUN BY / DATE' record. Default is an empty option field, meaning that no additional comment line will be added to the RINEX header.
    1960 </p>
    1961 
    1962 <p>
    1963 If you specify a 'New' but no 'Old' marker/antenna/receiver name, the corresponding data field in the emerging new RINEX Observation file will be filled accordingly. If you in addition specify an 'Old' marker/antenna/receiver name, the corresponding data field in the emerging new RINEX Observation file will only be filled accordingly where 'Old' specifications match existing file content.
    1964 </p>
    1965 
    1966 <p><img src="IMG/screenshot27.png"/></p>
    1967 <p><u>Figure 10:</u> Example for BNC's 'RINEX Editing Options' window</p>
    1968 
    1969 <p><img src="IMG/screenshot25.png"/></p>
    1970 <p><u>Figure 11:</u> Example for RINEX file concatenation with BNC</p>
    1971 
    1972 <p><img src="IMG/screenshot29.png"/></p>
    1973 <p><u>Figure 12:</u> Example for creating RINEX quality check analysis graphics output with BNC</p>
    1974 
    1975 <p><img src="IMG/screenshot30.png"/></p>
    1976 <p><u>Figure 13:</u> Example for satellite availability, elevation and PDOP plots as a result of a RINEX quality check analysis with BNC</p>
    1977 
    1978 <p><img src="IMG/screenshot33.png"/></p>
    1979 <p><u>Figure 14:</u> Sky plot examples for multipath, part of RINEX quality check analysis with BNC</p>
    1980 
    1981 <p><img src="IMG/screenshot34.png"/></p>
    1982 <p><u>Figure 15:</u> Sky plot examples for signal-to-noise ratio, part of RINEX quality check analysis with BNC</p>
    1983 
    1984 <p><h4>2.6.8 <a name="reqccommand">Command Line, No Window - optional</h4></p>
    1985 <p>
    1986 BNC applies options from the configuration file but allows updating every one of them on the command line while the content of the configuration file remains unchanged, see section on 'Command Line Options'. Note the following syntax for Command Line Interface (CLI) options:
    1987 </p>
    1988 <pre>
    1989    --key &lt;keyName&gt; &lt;keyValue&gt;
    1990 </pre>
    1991 <p>
    1992 Parameter &lt;keyName&gt; stands for the name of an option contained in the configuration file and &lt;keyValue&gt; stands for the value you want to assign to it. This functionality may be helpful in the 'RINEX Editing & QC' context when running BNC on a routine basis for maintaining a RINEX file archive.
    1993 </p>
    1994 The following example for a Linux platform calls BNC in 'no window' mode with a local configuration file 'rnx.conf' for concatenating four 15min RINEX files from station TLSE residing in the working directory to produce an hourly RINEX Version 3 file with 30 seconds sampling interval:
    1995 </p>
    1996 <pre>
    1997    ./bnc --nw --conf rnx.conf --key reqcAction Edit/Concatenate --key reqcObsFile
    1998    "tlse119b00.12o,tlse119b15.12o,tlse119b30.12o,tlse119b45.12o" --key
    1999    reqcOutObsFile tlse119b.12o --key reqcRnxVersion 3 --key reqcSampling 30
    2000 </pre>
    2001 <p>
    2002 You may use asterisk '*' and/or question mark '?' wildcard characters as shown with the following globbing command line option to specify a selection of files in the working directory:
    2003 <pre>
    2004    --key reqcObsFile "tlse*"
    2005 or:
    2006    --key reqcObsFile tlse\*
    2007 </pre>
    2008 </p>
    2009 
    2010 <p>The following Linux command line produces RINEX QC plots (see Estey and Meertens 1999) offline in 'no window' mode and saves them in directory '/home/user'. Introducing a dummy configuration file /dev/null makes sure that no configuration options previously saved on disc are used:</p>
    2011 <pre>
    2012    /home/user/bnc --conf /dev/null --key reqcAction Analyze --key reqcObsFile
    2013    CUT02070.12O --key reqcNavFile BRDC2070.12P --key reqcOutLogFile CUT0.txt --key
    2014    reqcPlotDir /home/user --nw
    2015 </pre>
    2016 </p>
    2017 <p>The following Linux command line produces the same RINEX QC plots in interactive autoStart mode:
    2018 </p>
    2019 <pre>
    2020    /home/user/bnc --conf /dev/null --key reqcAction Analyze --key reqcObsFile
    2021    CUT02070.12O --key reqcNavFile BRDC2070.12P --key reqcOutLogFile CUT0.txt --key
    2022    --key startTab 4 --key autoStart 2
    2023 </pre>
    2024 </p>
    2025 
    2026 <p>
    2027 The following is a list of available key names for '<u>R</u>INEX <u>E</u>diting & <u>QC</u>' (short: REQC, pronounced 'rek') options and their meaning, cf. section 'Configuration Examples':
    2028 </p>
    2029 <table>
    2030 <tr></tr>
    2031 <tr><td><b>Keyname</b></td><td><b>Meaning</b></td></tr>
    2032 <tr><td>reqcAction</td><td>RINEX Editing & QC action</td></tr>
    2033 <tr><td>reqcObsFile</td><td>RINEX Observation input file(s)</td></tr>
    2034 <tr><td>reqcNavFile</td><td>RINEX Navigation input files(s)</td></tr>
    2035 <tr><td>reqcOutObsFile</td><td>RINEX Observation output file</td></tr>
    2036 <tr><td>reqcOutNavFile</td><td>RINEX Navigation output file</td></tr>
    2037 <tr><td>reqcOutLogFile</td><td>Logfile</td></tr>
    2038 <tr><td>reqcLogSummaryOnly</td><td>Summary of Logfile</td></tr>
    2039 <tr><td>reqcSkyPlotSignals</td><td>Plots for signals</td></tr>
    2040 <tr><td>reqcPlotDir</td><td>RINEX QC plot directory</td></tr>
    2041 <tr><td>reqcRnxVersion</td><td>RINEX version of emerging new file</td></tr>
    2042 <tr><td>reqcSampling</td><td>Sampling interval of emerging new RINEX file</td></tr>
    2043 <tr><td>reqcV2Priority</td><td>Version 2 Signal Priority</td></tr>
    2044 <tr><td>reqcStartDateTime</td><td>Begin of emerging new RINEX file</td></tr>
    2045 <tr><td>reqcEndDateTime</td><td>End of emerging new RINEX file</td></tr>
    2046 <tr><td>reqcRunBy</td><td>Operator name</td></tr>
    2047 <tr><td>reqcUseObsTypes</td><td>GNSS systems and observation types</td></tr>
    2048 <tr><td>reqcComment</td><td>Additional comment lines</td></tr>
    2049 <tr><td>reqcOldMarkerName</td><td>Old marker name</td></tr>
    2050 <tr><td>reqcNewMarkerName</td><td>New marker name</td></tr>
    2051 <tr><td>reqcOldAntennaName</td><td>Old antenna name</td></tr>
    2052 <tr><td>reqcNewAntennaName</td><td>New antenna name</td></tr>
    2053 <tr><td>reqcOldAntennaNumber</td><td>Old antenna number</td></tr>
    2054 <tr><td>reqcNewAntennaNumber</td><td>New antenna number</td></tr>
    2055 <tr><td>reqcOldAntennadN</td><td>Old component of north eccentricity</td></tr>
    2056 <tr><td>reqcOldAntennadE</td><td>Old component of east eccentricity</td></tr>
    2057 <tr><td>reqcOldAntennadU</td><td>Old component of up eccentricity</td></tr>
    2058 <tr><td>reqcNewAntennadN</td><td>New component of north eccentricity</td></tr>
    2059 <tr><td>reqcNewAntennadE</td><td>New component of east eccentricity</td></tr>
    2060 <tr><td>reqcNewAntennadU</td><td>New component of up eccentricity</td></tr>
    2061 <tr><td>reqcOldReceiverName</td><td>Old receiver name</td></tr>
    2062 <tr><td>reqcNewReceiverName</td><td>New receiver name</td></tr>
    2063 <tr><td>reqcOldReceiverNumber</td><td>Old receiver number</td></tr>
    2064 <tr><td>reqcNewReceiverNumber</td><td>New receiver number</td></tr>
     2263<li><p class="first">The RINEX Version 2 format ignores signal generation attributes. Therefore, when converting RINEX Version 3 to Version 2 Observation files, BNC is forced to somehow map signals with attributes to signals without attributes although this cannot be done in one-to-one correspondence. Hence we introduce a &#8216;Version 2 Signal Priority&#8217; list of attributes (characters, forming a string) for mapping Version 3 to Version 2, see details in section &#8216;RINEX Observations/Version 2&#8217;. Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:</p>
     2264<ul class="simple">
     2265<li>&#8216;<a href="#id76"><span class="problematic" id="id77">CWPX_</span></a>?&#8217; (General signal priorities valid for all GNSS)</li>
     2266<li>&#8216;C:IQX I:ABCX&#8217; (System specific signal priorities for BDS and IRNSS)</li>
     2267<li>&#8216;G:12&amp;PWCSLXYN G:5&amp;IQX R:12&amp;PC R:3&amp;IQX&#8217; (System and frequency specific signal priorities)</li>
     2268</ul>
     2269<p>The default &#8216;Signal priority&#8217; list is defined as follows: &#8216;G:12&amp;PWCSLXYN G:5&amp;IQX R:12&amp;PC R:3&amp;IQX E:16&amp;BCX E:578&amp;IQX J:1&amp;SLXCZ J:26&amp;SLX J:5&amp;IQX C:IQX I:ABCX S:1&amp;C S:5&amp;IQX&#8217;</p>
     2270</li>
     2271<li><p class="first">When converting RINEX Version 2 to Version 3 Observation files, the tracking mode or channel information in the (last character out of the 3-character) observation code is left blank if unknown. This is a compromise, knowing that it is not in accordance with the RINEX Version 3 documentation.</p>
     2272</li>
     2273</ul>
     2274<p>Optionally you may specify a &#8216;RUN BY&#8217; string to be included in the emerging new RINEX file header. Default is an empty option field, meaning the operator&#8217;s ID is automatically used as &#8216;RUN BY&#8217; string.</p>
     2275<p>You can specify a list of observation codes in field &#8216;Use Obs. Types&#8217; to limit the output file content to specific observation codes. GNSS system characters in that list are followed by a colon and a 2- or 3-character observation code. A 2-character observation code would mean that all available tracking modes of the affected observation type and frequency will be accepted as part of the RINEX output file. Observation codes are separated by a blank character. Default is an empty option field, meaning that any input observation code will become part of the RINEX output file.</p>
     2276<p>Specifying comment line text to be added to the emerging new RINEX file header is another option. Any introduction of a newline through &#8216;\n&#8217; in this enforces the beginning of a further comment line. Comment lines will be added to the header immediately after the &#8216;PGM / RUN BY / DATE&#8217; record. Default is an empty option field, meaning that no additional comment line will be added to the RINEX header.</p>
     2277<p>If you specify a &#8216;New&#8217; but no &#8216;Old&#8217; marker/antenna/receiver name, the corresponding data field in the emerging new RINEX Observation file will be filled accordingly. If you in addition specify an &#8216;Old&#8217; marker/antenna/receiver name, the corresponding data field in the emerging new RINEX Observation file will only be filled accordingly where &#8216;Old&#8217; specifications match existing file content.</p>
     2278<div class="figure" id="id27">
     2279<span id="fig-13"></span><a class="reference internal image-reference" href="_images/fig_13.png"><img alt="_images/fig_13.png" src="_images/fig_13.png" style="width: 961.2px; height: 629.1px;" /></a>
     2280<p class="caption"><span class="caption-number">Fig. 11 </span><span class="caption-text">Example for satellite availability, elevation and PDOP plots as a result of a RINEX Quality Check analysis with BNC</span></p>
     2281</div>
     2282<div class="figure" id="id28">
     2283<span id="fig-14"></span><a class="reference internal image-reference" href="_images/fig_14.png"><img alt="_images/fig_14.png" src="_images/fig_14.png" style="width: 920.7px; height: 593.1px;" /></a>
     2284<p class="caption"><span class="caption-number">Fig. 12 </span><span class="caption-text">Sky plot examples for multipath, part of RINEX quality check analysis with BNC</span></p>
     2285</div>
     2286<div class="figure" id="id29">
     2287<span id="fig-15"></span><a class="reference internal image-reference" href="_images/fig_15.png"><img alt="_images/fig_15.png" src="_images/fig_15.png" style="width: 918.0px; height: 589.5px;" /></a>
     2288<p class="caption"><span class="caption-number">Fig. 13 </span><span class="caption-text">Sky plot examples for signal-to-noise ratio, part of RINEX quality check analysis with BNC</span></p>
     2289</div>
     2290<div class="figure" id="id30">
     2291<span id="fig-10"></span><a class="reference internal image-reference" href="_images/fig_10.png"><img alt="_images/fig_10.png" src="_images/fig_10.png" style="width: 680.4px; height: 522.0px;" /></a>
     2292<p class="caption"><span class="caption-number">Fig. 14 </span><span class="caption-text">Example for BNC&#8217;s &#8216;RINEX Editing Options&#8217; window</span></p>
     2293</div>
     2294<div class="figure" id="id31">
     2295<span id="fig-11"></span><a class="reference internal image-reference" href="_images/fig_11.png"><img alt="_images/fig_11.png" src="_images/fig_11.png" style="width: 900.9px; height: 648.9px;" /></a>
     2296<p class="caption"><span class="caption-number">Fig. 15 </span><span class="caption-text">Example for RINEX file concatenation with BNC</span></p>
     2297</div>
     2298<div class="figure" id="id32">
     2299<span id="fig-12"></span><a class="reference internal image-reference" href="_images/fig_12.png"><img alt="_images/fig_12.png" src="_images/fig_12.png" style="width: 900.0px; height: 649.8000000000001px;" /></a>
     2300<p class="caption"><span class="caption-number">Fig. 16 </span><span class="caption-text">Example for creating RINEX quality check analysis graphics output with BNC</span></p>
     2301</div>
     2302</div>
     2303<div class="section" id="command-line-no-window-optional">
     2304<span id="index-18"></span><h4>Command Line, No Window - optional<a class="headerlink" href="#command-line-no-window-optional" title="Permalink to this headline">¶</a></h4>
     2305<p>BNC applies options from the configuration file but allows updating every one of them on the command line while the content of the configuration file remains unchanged, see section on &#8216;Command Line Options&#8217;. Note the following syntax for Command Line Interface (CLI) options:</p>
     2306<div class="highlight-console"><div class="highlight"><pre><span class="go">--key &lt;keyName&gt; &lt;keyValue&gt;</span>
     2307</pre></div>
     2308</div>
     2309<p>Parameter &lt;keyName&gt; stands for the name of an option contained in the configuration file and &lt;keyValue&gt; stands for the value you want to assign to it. This functionality may be helpful in the &#8216;RINEX Editing &amp; QC&#8217; context when running BNC on a routine basis for maintaining a RINEX file archive. The following example for a Linux platform calls BNC in &#8216;no window&#8217; mode with a local configuration file &#8216;rnx.conf&#8217; for concatenating four 15min RINEX files from station TLSE residing in the working directory to produce an hourly RINEX Version 3 file with 30 seconds sampling interval:</p>
     2310<div class="highlight-console"><div class="highlight"><pre><span class="go">./bnc --nw --conf rnx.conf --key reqcAction Edit/Concatenate --key reqcObsFile &quot;tlse119b00.12o,tlse119b15.12o,tlse119b30.12o,tlse119b45.12o&quot; --key reqcOutObsFile tlse119b.12o --key reqcRnxVersion 3 --key reqcSampling 30</span>
     2311</pre></div>
     2312</div>
     2313<p>You may use asterisk &#8216;*&#8217; and/or question mark &#8216;?&#8217; wildcard characters as shown with the following globbing command line option to specify a selection of files in the working directory:</p>
     2314<div class="highlight-console"><div class="highlight"><pre><span class="go">--key reqcObsFile &quot;tlse*&quot;</span>
     2315</pre></div>
     2316</div>
     2317<p>or</p>
     2318<div class="highlight-console"><div class="highlight"><pre><span class="go">--key reqcObsFile tlse\*</span>
     2319</pre></div>
     2320</div>
     2321<p>The following Linux command line produces RINEX QC plots (see Estey and Meertens 1999) offline in &#8216;no window&#8217; mode and saves them in directory <code class="docutils literal"><span class="pre">/home/user</span></code>. Introducing a dummy configuration file <code class="docutils literal"><span class="pre">/dev/null</span></code> makes sure that no configuration options previously saved on disc are used:</p>
     2322<div class="highlight-console"><div class="highlight"><pre><span class="go">/home/user/bnc --conf /dev/null --key reqcAction Analyze --key reqcObsFile CUT02070.12O --key reqcNavFile BRDC2070.12P --key reqcOutLogFile CUT0.txt --key reqcPlotDir /home/user --nw</span>
     2323</pre></div>
     2324</div>
     2325<p>The following Linux command line produces the same RINEX QC plots in interactive autoStart mode:</p>
     2326<div class="highlight-console"><div class="highlight"><pre><span class="go">/home/user/bnc --conf /dev/null --key reqcAction Analyze --key reqcObsFile CUT02070.12O --key reqcNavFile BRDC2070.12P --key reqcOutLogFile CUT0.txt --key startTab 4 --key autoStart 2</span>
     2327</pre></div>
     2328</div>
     2329<p><a class="reference internal" href="#tab-rinex-ed-qc-opt"><span class="std std-numref">Table 3</span></a> gives a list of available key names for &#8216;RINEX Editing &amp; QC&#8217; (short: REQC, pronounced &#8216;rek&#8217;) options and their meaning, cf. section &#8216;Configuration Examples&#8217;.</p>
     2330<table border="1" class="docutils" id="id33">
     2331<span id="tab-rinex-ed-qc-opt"></span><caption><span class="caption-number">Table 3 </span><span class="caption-text">Key names for &#8216;RINEX Editing &amp; QC&#8217; options and their meaning.</span><a class="headerlink" href="#id33" title="Permalink to this table">¶</a></caption>
     2332<colgroup>
     2333<col width="32%" />
     2334<col width="68%" />
     2335</colgroup>
     2336<thead valign="bottom">
     2337<tr class="row-odd"><th class="head"><strong>Keyname</strong></th>
     2338<th class="head"><strong>Meaning</strong></th>
     2339</tr>
     2340</thead>
     2341<tbody valign="top">
     2342<tr class="row-even"><td>reqcAction</td>
     2343<td>RINEX Editing &amp; QC action</td>
     2344</tr>
     2345<tr class="row-odd"><td>reqcObsFile</td>
     2346<td>RINEX Observation input file(s)</td>
     2347</tr>
     2348<tr class="row-even"><td>reqcNavFile</td>
     2349<td>RINEX Navigation input files(s)</td>
     2350</tr>
     2351<tr class="row-odd"><td>reqcOutObsFile</td>
     2352<td>RINEX Observation output file</td>
     2353</tr>
     2354<tr class="row-even"><td>reqcOutNavFile</td>
     2355<td>RINEX Navigation output file</td>
     2356</tr>
     2357<tr class="row-odd"><td>reqcOutLogFile</td>
     2358<td>Logfile</td>
     2359</tr>
     2360<tr class="row-even"><td>reqcLogSummaryOnly</td>
     2361<td>Summary of Logfile</td>
     2362</tr>
     2363<tr class="row-odd"><td>reqcSkyPlotSignals</td>
     2364<td>Plots for signals</td>
     2365</tr>
     2366<tr class="row-even"><td>reqcPlotDir</td>
     2367<td>RINEX QC plot directory</td>
     2368</tr>
     2369<tr class="row-odd"><td>reqcRnxVersion</td>
     2370<td>RINEX version of emerging new file</td>
     2371</tr>
     2372<tr class="row-even"><td>reqcSampling</td>
     2373<td>Sampling interval of emerging new RINEX file</td>
     2374</tr>
     2375<tr class="row-odd"><td>reqcV2Priority</td>
     2376<td>Version 2 Signal Priority</td>
     2377</tr>
     2378<tr class="row-even"><td>reqcStartDateTime</td>
     2379<td>Begin of emerging new RINEX file</td>
     2380</tr>
     2381<tr class="row-odd"><td>reqcEndDateTime</td>
     2382<td>End of emerging new RINEX file</td>
     2383</tr>
     2384<tr class="row-even"><td>reqcRunBy</td>
     2385<td>Operator name</td>
     2386</tr>
     2387<tr class="row-odd"><td>reqcUseObsTypes</td>
     2388<td>GNSS systems and observation types</td>
     2389</tr>
     2390<tr class="row-even"><td>reqcComment</td>
     2391<td>Additional comment lines</td>
     2392</tr>
     2393<tr class="row-odd"><td>reqcOldMarkerName</td>
     2394<td>Old marker name</td>
     2395</tr>
     2396<tr class="row-even"><td>reqcNewMarkerName</td>
     2397<td>New marker name</td>
     2398</tr>
     2399<tr class="row-odd"><td>reqcOldAntennaName</td>
     2400<td>Old antenna name</td>
     2401</tr>
     2402<tr class="row-even"><td>reqcNewAntennaName</td>
     2403<td>New antenna name</td>
     2404</tr>
     2405<tr class="row-odd"><td>reqcOldAntennaNumber</td>
     2406<td>Old antenna number</td>
     2407</tr>
     2408<tr class="row-even"><td>reqcNewAntennaNumber</td>
     2409<td>New antenna number</td>
     2410</tr>
     2411<tr class="row-odd"><td>reqcOldAntennadN</td>
     2412<td>Old component of north eccentricity</td>
     2413</tr>
     2414<tr class="row-even"><td>reqcOldAntennadE</td>
     2415<td>Old component of east eccentricity</td>
     2416</tr>
     2417<tr class="row-odd"><td>reqcOldAntennadU</td>
     2418<td>Old component of up eccentricity</td>
     2419</tr>
     2420<tr class="row-even"><td>reqcNewAntennadN</td>
     2421<td>New component of north eccentricity</td>
     2422</tr>
     2423<tr class="row-odd"><td>reqcNewAntennadE</td>
     2424<td>New component of east eccentricity</td>
     2425</tr>
     2426<tr class="row-even"><td>reqcNewAntennadU</td>
     2427<td>New component of up eccentricity</td>
     2428</tr>
     2429<tr class="row-odd"><td>reqcOldReceiverName</td>
     2430<td>Old receiver name</td>
     2431</tr>
     2432<tr class="row-even"><td>reqcNewReceiverName</td>
     2433<td>New receiver name</td>
     2434</tr>
     2435<tr class="row-odd"><td>reqcOldReceiverNumber</td>
     2436<td>Old receiver number</td>
     2437</tr>
     2438<tr class="row-even"><td>reqcNewReceiverNumber</td>
     2439<td>New receiver number</td>
     2440</tr>
     2441</tbody>
    20652442</table>
    2066 
    2067 <p><h4>2.7 <a name="sp3comp">SP3 Comparison</h4></p>
    2068 <p>
    2069 BNC allows to compare the contents of two files with GNSS orbit and clock data in SP3 format. SP3 ASCII files basically contain a list of records over a certain period of time. Each record carries a time tag, the XYZ position of the satellite's Center of Mass at that time and the corresponding satellite clock value. Both SP3 files may contain some records for different epochs. If so, then BNC only compares records for identical epochs. BNC accepts that a specific GNSS system or a specific satellite is only available from one of the SP3 files. Note that BNC does not interpolate orbits when comparing SP3 files.
    2070 </p>
    2071 <p>
    2072 To compare satellite clocks provided by the two files, BNC first converts coordinate differences dX,dY,dZ into along track, out-of-plane, and radial components. It then corrects the clock differences for the radial components of coordinate differences. RMS values of clock differences are finally calculated after introducing at first one offset 'per epoch for all satellites' and secondly one offset 'per satellite for all epochs'.
    2073 </p>
    2074 
    2075 <p><h4>2.7.1 <a name="sp3input">Input SP3 Files - optional</h4></p>
    2076 <p>
    2077 Specify the full paths of two SP3 files, separate them by comma.
    2078 </p>
    2079 
    2080 <p><h4>2.7.2 <a name="sp3exclude">Exclude Satellites - optional</h4></p>
    2081 <p>
    2082 You may want to exclude one or more satellites in your SP3 files from the comparison. Or you may like to exclude all satellites of a specific GNSS system from the comparison. The following are example strings to be entered for excluding satellites from the comparison.
    2083 <ul>
     2443</div>
     2444</div>
     2445<div class="section" id="sp3-comparison">
     2446<h3>SP3 Comparison<a class="headerlink" href="#sp3-comparison" title="Permalink to this headline">¶</a></h3>
     2447<p>BNC allows to compare the contents of two files with GNSS orbit and clock data in SP3 format <a class="reference internal" href="#fig-16"><span class="std std-numref">(Fig. 17)</span></a>. SP3 ASCII files basically contain a list of records over a certain period of time. Each record carries a time tag, the XYZ position of the satellite&#8217;s Center of Mass at that time and the corresponding satellite clock value. Both SP3 files may contain some records for different epochs. If so, then BNC only compares records for identical epochs. BNC accepts that a specific GNSS system or a specific satellite is only available from one of the SP3 files. Note that BNC does not interpolate orbits when comparing SP3 files.</p>
     2448<div class="figure" id="id34">
     2449<span id="fig-16"></span><a class="reference internal image-reference" href="_images/fig_16.png"><img alt="_images/fig_16.png" src="_images/fig_16.png" style="width: 883.0px; height: 316.0px;" /></a>
     2450<p class="caption"><span class="caption-number">Fig. 17 </span><span class="caption-text">Example for comparing two SP3 files with satellite orbit and clock data using BNC</span></p>
     2451</div>
     2452<p>To compare satellite clocks provided by the two files, BNC first converts coordinate differences dX,dY,dZ into along track, out-of-plane, and radial components. It then corrects the clock differences for the radial components of coordinate differences. RMS values of clock differences are finally calculated after introducing at first one offset &#8216;per epoch for all satellites&#8217; and secondly one offset &#8216;per satellite for all epochs&#8217;.</p>
     2453<div class="section" id="input-sp3-files-optional">
     2454<h4>Input SP3 Files - optional<a class="headerlink" href="#input-sp3-files-optional" title="Permalink to this headline">¶</a></h4>
     2455<p>Specify the full paths of two SP3 files, separate them by comma.</p>
     2456</div>
     2457<div class="section" id="exclude-satellites-optional">
     2458<h4>Exclude Satellites - optional<a class="headerlink" href="#exclude-satellites-optional" title="Permalink to this headline">¶</a></h4>
     2459<p>You may want to exclude one or more satellites in your SP3 files from the comparison. Or you may like to exclude all satellites of a specific GNSS system from the comparison. The following are example strings to be entered for excluding satellites from the comparison:</p>
     2460<ul class="simple">
    20842461<li>G05,G31 (excluding GPS satellites with PRN 5 and 31)</li>
    20852462<li>G (excluding all GPS satellites)</li>
     
    20882465<li>G04,G31,R (excluding GPS satellites with PRN 4 and 31 as well as all GLONASS satellites)</li>
    20892466</ul>
    2090 </p>
    2091 <p>
    2092 Default is an empty option field, meaning that no satellite will be excluded from the comparison.
    2093 </p>
    2094 
    2095 <p><h4>2.7.3 <a name="sp3log">Logfile - mandatory if 'Input SP3 Files' is set</h4></p>
    2096 <p>
    2097 Specify a logfile name to save results of the SP3 file comparison.
    2098 </p>
    2099 <p>
    2100 The following is an example for a SP3 Comparison logfile:
    2101 </p>
    2102 <pre>
    2103 
    2104 ! SP3 File 1: esr18283.sp3
    2105 ! SP3 File 2: rt218283.sp3
    2106 !
    2107 !  MJD       PRN  radial   along   out        clk    clkRed   iPRN
    2108 ! ----------------------------------------------------------------
    2109 57043.000000 G01 -0.0001 -0.0318 -0.0354     0.0266  0.0267     1
    2110 57043.000000 G02 -0.0062 -0.0198  0.0111     0.0082  0.0143     2
    2111 57043.000000 G03  0.0052  0.0060  0.0032     0.0386  0.0334     3
    2112 57043.000000 G04 -0.0049 -0.0193 -0.0071    -0.1696 -0.1648     4
    2113 57043.000000 G05  0.0027  0.0154  0.0275     0.0345  0.0318     5
    2114 57043.000000 G06  0.0247 -0.0398 -0.0111     0.0483  0.0236     6
    2115 57043.000000 G07 -0.0052  0.2854 -0.0975    -0.0940 -0.0888     7
    2116 57043.000000 G08 -0.0247  0.0937 -0.0184    -0.1563 -0.1316     8
    2117 57043.000000 G09  0.0152  0.0583  0.0086    -0.0144 -0.0296     9
    2118 ...
    2119 ...
    2120 ...
    2121 !
    2122 ! RMS[m]
    2123 !
    2124 !   PRN  radial   along   out     nOrb    clk   clkRed   nClk    Offset
    2125 ! ---------------------------------------------------------------------
    2126 !   G01  0.0151  0.0377  0.0196     96  0.0157  0.0154     96    0.0152
    2127 !   G02  0.0083  0.0278  0.0228     96  0.0097  0.0124     96   -0.0626
    2128 !   G03  0.0105  0.0311  0.0307     96  0.0352  0.0309     96    0.0898
    2129 !   G04  0.0113  0.0334  0.0154     94  0.0725  0.0707     94   -0.5087
    2130 !   G05  0.0103  0.0319  0.0299     96  0.0417  0.0403     96    0.1185
    2131 !   G06  0.0182  0.0509  0.0302     96  0.0218  0.0166     96    0.0040
    2132 !   G07  0.0337  0.1632  0.0463     96  0.0483  0.0435     96    0.3031
    2133 !   G08  0.0228  0.0741  0.0321     88  0.0616  0.0561     88   -0.2232
    2134 ...
    2135 ...
    2136 ...
    2137 !   R20  0.0637  0.2115  0.1131     96  0.1580  0.1345     96    0.7371
    2138 !   R21  0.0475  0.1657  0.0880     96  0.1123  0.0840     96   -0.4133
    2139 !   R22  0.0125  0.1249  0.0646     96  0.0414  0.0444     96   -0.7375
    2140 !   R23  0.0435  0.1503  0.0573     96  0.0987  0.1099     96    0.6620
    2141 !   R24  0.0278  0.2026  0.1186     96  0.1446  0.1303     96   -1.1470
    2142 !
    2143 ! Total  0.0262  0.0938  0.0492   5268  0.0620  0.0561   5268
    2144 </pre>
    2145 <p>
    2146 The first part of this output uses the following abbreviations:
    2147 </p>
    2148 
    2149 <table>
    2150 <tr><td>'MJD' &nbsp;</td><td>Modified Julian Date</td></tr>
    2151 <tr><td>'PRN' &nbsp;</td><td>Satellite specification</td></tr>
    2152 <tr><td>'radial' &nbsp;</td><td>Radial component of orbit coordinate difference [m]</td></tr>
    2153 <tr><td>'along' &nbsp;</td><td>Along track component of orbit coordinate difference [m]</td></tr>
    2154 <tr><td>'out' &nbsp;</td><td>Out-of-plane component of orbit coordinate difference [m]</td></tr>
    2155 <tr><td>'clk' &nbsp;</td><td>Clock difference [m]</td></tr>
    2156 <tr><td>'clkRed' &nbsp;</td><td>Clock difference reduced by radial component of orbit coordinate difference [m]</td></tr>
    2157 <tr><td>'iPRN' &nbsp;</td><td>BNC internal sequence number</td></tr>
     2467<p>Default is an empty option field, meaning that no satellite will be excluded from the comparison.</p>
     2468</div>
     2469<div class="section" id="logfile-mandatory-if-input-sp3-files-is-set">
     2470<h4>Logfile - mandatory if &#8216;Input SP3 Files&#8217; is set<a class="headerlink" href="#logfile-mandatory-if-input-sp3-files-is-set" title="Permalink to this headline">¶</a></h4>
     2471<p>Specify a logfile name to save results of the SP3 file comparison.</p>
     2472<p>The following is an example for a SP3 Comparison logfile:</p>
     2473<div class="highlight-console"><div class="highlight"><pre><span class="go">! SP3 File 1: esr18283.sp3</span>
     2474<span class="go">! SP3 File 2: rt218283.sp3</span>
     2475<span class="go">!</span>
     2476<span class="go">!  MJD       PRN  radial   along   out        clk    clkRed   iPRN</span>
     2477<span class="go">! ----------------------------------------------------------------</span>
     2478<span class="go">57043.000000 G01 -0.0001 -0.0318 -0.0354     0.0266  0.0267     1</span>
     2479<span class="go">57043.000000 G02 -0.0062 -0.0198  0.0111     0.0082  0.0143     2</span>
     2480<span class="go">57043.000000 G03  0.0052  0.0060  0.0032     0.0386  0.0334     3</span>
     2481<span class="go">57043.000000 G04 -0.0049 -0.0193 -0.0071    -0.1696 -0.1648     4</span>
     2482<span class="go">57043.000000 G05  0.0027  0.0154  0.0275     0.0345  0.0318     5</span>
     2483<span class="go">57043.000000 G06  0.0247 -0.0398 -0.0111     0.0483  0.0236     6</span>
     2484<span class="go">57043.000000 G07 -0.0052  0.2854 -0.0975    -0.0940 -0.0888     7</span>
     2485<span class="go">57043.000000 G08 -0.0247  0.0937 -0.0184    -0.1563 -0.1316     8</span>
     2486<span class="go">57043.000000 G09  0.0152  0.0583  0.0086    -0.0144 -0.0296     9</span>
     2487<span class="go">...</span>
     2488<span class="go">...</span>
     2489<span class="go">...</span>
     2490<span class="go">!</span>
     2491<span class="go">! RMS[m]</span>
     2492<span class="go">!</span>
     2493<span class="go">!   PRN  radial   along   out     nOrb    clk   clkRed   nClk    Offset</span>
     2494<span class="go">! ---------------------------------------------------------------------</span>
     2495<span class="go">!   G01  0.0151  0.0377  0.0196     96  0.0157  0.0154     96    0.0152</span>
     2496<span class="go">!   G02  0.0083  0.0278  0.0228     96  0.0097  0.0124     96   -0.0626</span>
     2497<span class="go">!   G03  0.0105  0.0311  0.0307     96  0.0352  0.0309     96    0.0898</span>
     2498<span class="go">!   G04  0.0113  0.0334  0.0154     94  0.0725  0.0707     94   -0.5087</span>
     2499<span class="go">!   G05  0.0103  0.0319  0.0299     96  0.0417  0.0403     96    0.1185</span>
     2500<span class="go">!   G06  0.0182  0.0509  0.0302     96  0.0218  0.0166     96    0.0040</span>
     2501<span class="go">!   G07  0.0337  0.1632  0.0463     96  0.0483  0.0435     96    0.3031</span>
     2502<span class="go">!   G08  0.0228  0.0741  0.0321     88  0.0616  0.0561     88   -0.2232</span>
     2503<span class="go">...</span>
     2504<span class="go">...</span>
     2505<span class="go">...</span>
     2506<span class="go">!   R20  0.0637  0.2115  0.1131     96  0.1580  0.1345     96    0.7371</span>
     2507<span class="go">!   R21  0.0475  0.1657  0.0880     96  0.1123  0.0840     96   -0.4133</span>
     2508<span class="go">!   R22  0.0125  0.1249  0.0646     96  0.0414  0.0444     96   -0.7375</span>
     2509<span class="go">!   R23  0.0435  0.1503  0.0573     96  0.0987  0.1099     96    0.6620</span>
     2510<span class="go">!   R24  0.0278  0.2026  0.1186     96  0.1446  0.1303     96   -1.1470</span>
     2511<span class="go">!</span>
     2512<span class="go">! Total  0.0262  0.0938  0.0492   5268  0.0620  0.0561   5268</span>
     2513</pre></div>
     2514</div>
     2515<p>The first part of this output uses the abbreviations in <a class="reference internal" href="#tab-log-abb-1"><span class="std std-numref">Table 4</span></a>.</p>
     2516<table border="1" class="docutils" id="id35">
     2517<span id="tab-log-abb-1"></span><caption><span class="caption-number">Table 4 </span><span class="caption-text">Abbreviations in first part of BNC log files when comparing SP3 files</span><a class="headerlink" href="#id35" title="Permalink to this table">¶</a></caption>
     2518<colgroup>
     2519<col width="17%" />
     2520<col width="83%" />
     2521</colgroup>
     2522<thead valign="bottom">
     2523<tr class="row-odd"><th class="head"><strong>Abbreviation</strong></th>
     2524<th class="head"><strong>Meaning</strong></th>
     2525</tr>
     2526</thead>
     2527<tbody valign="top">
     2528<tr class="row-even"><td>MJD</td>
     2529<td>Modified Julian Date</td>
     2530</tr>
     2531<tr class="row-odd"><td>PRN</td>
     2532<td>Satellite specification</td>
     2533</tr>
     2534<tr class="row-even"><td>radial</td>
     2535<td>Radial component of orbit coordinate difference [m]</td>
     2536</tr>
     2537<tr class="row-odd"><td>along</td>
     2538<td>Along track component of orbit coordinate difference [m]</td>
     2539</tr>
     2540<tr class="row-even"><td>out</td>
     2541<td>Out-of-plane component of orbit coordinate difference [m]</td>
     2542</tr>
     2543<tr class="row-odd"><td>clk</td>
     2544<td>Clock difference [m]</td>
     2545</tr>
     2546<tr class="row-even"><td>clkRed</td>
     2547<td>Clock difference reduced by radial component of orbit coordinate difference [m]</td>
     2548</tr>
     2549<tr class="row-odd"><td>iPRN</td>
     2550<td>BNC internal sequence number</td>
     2551</tr>
     2552</tbody>
    21582553</table>
    2159 <p>
    2160 The second part following string 'RMS' provides a summary of the comparison using the following
    2161 abbreviations:<br>
    2162 </p>
    2163 <table>
    2164 <tr><td>'PRN' &nbsp;</td><td>Satellite specification</td></tr>
    2165 <tr><td>'radial' &nbsp;</td><td>RMS of radial component of orbit coordinate differences [m]</td></tr>
    2166 <tr><td>'along' &nbsp;</td><td>RMS of along track component of orbit coordinate differences [m]</td></tr>
    2167 <tr><td>'out' &nbsp;</td><td>RMS of out-of-plane component of orbit coordinate differences [m]</td></tr>
    2168 <tr><td>'nOrb' &nbsp;</td><td>Number of epochs used in in orbit comparison</td></tr>
    2169 <tr><td>'clk' &nbsp;</td><td>RMS of clock differences [m]</td></tr>
    2170 <tr><td>'clkRed' &nbsp;</td><td>RMS of clock differences after reduction of radial orbit differences [m]</td></tr>
    2171 <tr><td>'nClk' &nbsp;</td><td>Number of epochs use in clock comparisons</td></tr>
    2172 <tr><td>'Offset' &nbsp;</td><td>Clock offset [m]</td></tr>
     2554<p>The second part following string &#8216;RMS&#8217; provides a summary of the comparison using the abbreviations in <a class="reference internal" href="#tab-log-abb-2"><span class="std std-numref">Table 5</span></a>.</p>
     2555<table border="1" class="docutils" id="id36">
     2556<span id="tab-log-abb-2"></span><caption><span class="caption-number">Table 5 </span><span class="caption-text">Abbreviations in second part of BNC log files when comparing SP3 files</span><a class="headerlink" href="#id36" title="Permalink to this table">¶</a></caption>
     2557<colgroup>
     2558<col width="17%" />
     2559<col width="83%" />
     2560</colgroup>
     2561<thead valign="bottom">
     2562<tr class="row-odd"><th class="head"><strong>Abbreviation</strong></th>
     2563<th class="head"><strong>Meaning</strong></th>
     2564</tr>
     2565</thead>
     2566<tbody valign="top">
     2567<tr class="row-even"><td>PRN</td>
     2568<td>Satellite specification</td>
     2569</tr>
     2570<tr class="row-odd"><td>radial</td>
     2571<td>RMS of radial component of orbit coordinate differences [m]</td>
     2572</tr>
     2573<tr class="row-even"><td>along</td>
     2574<td>RMS of along track component of orbit coordinate differences [m]</td>
     2575</tr>
     2576<tr class="row-odd"><td>out</td>
     2577<td>RMS of out-of-plane component of orbit coordinate differences [m]</td>
     2578</tr>
     2579<tr class="row-even"><td>nOrb</td>
     2580<td>Number of epochs used in in orbit comparison</td>
     2581</tr>
     2582<tr class="row-odd"><td>clk</td>
     2583<td>RMS of clock differences [m]</td>
     2584</tr>
     2585<tr class="row-even"><td>clkRed</td>
     2586<td>RMS of clock differences after reduction of radial orbit differences [m]</td>
     2587</tr>
     2588<tr class="row-odd"><td>nClk</td>
     2589<td>Number of epochs use in clock comparisons</td>
     2590</tr>
     2591<tr class="row-even"><td>Offset</td>
     2592<td>Clock offset [m]</td>
     2593</tr>
     2594</tbody>
    21732595</table>
    2174 
    2175 <br>
    2176 
    2177 <p><img src="IMG/screenshot36.png"/></p>
    2178 <p><u>Figure 16:</u> Example for comparing two SP3 files with satellite orbit and clock data using BNC</p>
    2179 
    2180 <p><h4>2.8 <a name="correct">Broadcast Corrections</h4></p>
    2181 <p>
    2182 Differential GNSS and RTK operation using RTCM streams is currently based on corrections and/or raw measurements from single or multiple reference stations. This approach to differential positioning uses 'observation space' information. The representation with the RTCM standard can be called 'Observation Space Representation' (OSR).
    2183 </p>
    2184 <p>
    2185 An alternative to the observation space approach is the so-called 'state space' approach. The principle here is to provide information on individual error sources. It can be called 'State Space Representation' (SSR). For a rover position, state space information concerning precise satellite clocks, orbits, ionosphere, troposphere et cetera can be converted into observation space and used to correct the rover observables for more accurate positioning. Alternatively, the state information can be used directly in the rover's processing or adjustment model.
    2186 </p>
    2187 <p>
    2188 RTCM is currently developing Version 3 messages to transport SSR corrections in real-time. They refer to satellite Antenna Phase Center (APC). SSR messages adopted or recently proposed concern:
    2189 
    2190 <ul>
    2191 <li>SSR, Step I:</li>
    2192 <ul>
     2596</div>
     2597</div>
     2598<div class="section" id="broadcast-corrections">
     2599<span id="index-19"></span><h3>Broadcast Corrections<a class="headerlink" href="#broadcast-corrections" title="Permalink to this headline">¶</a></h3>
     2600<p>Differential GNSS and RTK operation using RTCM streams is currently based on corrections and/or raw measurements from single or multiple reference stations. This approach to differential positioning uses &#8216;observation space&#8217; information. The representation with the RTCM standard can be called &#8216;Observation Space Representation&#8217; (OSR).</p>
     2601<p>An alternative to the observation space approach is the so-called &#8216;state space&#8217; approach. The principle here is to provide information on individual error sources. It can be called &#8216;State Space Representation&#8217; (SSR). For a rover position, state space information concerning precise satellite clocks, orbits, ionosphere, troposphere et cetera can be converted into observation space and used to correct the rover observables for more accurate positioning. Alternatively, the state information can be used directly in the rover&#8217;s processing or adjustment model.</p>
     2602<p>RTCM is currently developing Version 3 messages to transport SSR corrections in real-time. They refer to satellite Antenna Phase Center (APC). SSR messages adopted or recently proposed concern:</p>
     2603<p>SSR, Step I:</p>
     2604<ul class="simple">
    21932605<li>Orbit corrections to Broadcast Ephemeris</li>
    21942606<li>Clock corrections to Broadcast Ephemeris</li>
     
    21992611<li>Code biases</li>
    22002612</ul>
    2201 <li>SSR, Step II:</li>
    2202 <ul>
     2613<p>SSR, Step II:</p>
     2614<ul class="simple">
    22032615<li>Phase biases</li>
    22042616<li>Vertical Total Electron Content (VTEC)</li>
    22052617</ul>
    2206 </ul>
    2207 
    2208 <p>
    2209 RTCM Version 3 streams carrying these messages may be used e.g. to support real-time Precise Point Positioning (PPP) applications.
    2210 </p>
    2211 <p>
    2212 When using clocks from Broadcast Ephemeris (with or without applied corrections) or clocks from SP3 files, it may be important to understand that they are not corrected for the conventional periodic relativistic effect. Chapter 10 of the IERS Conventions 2003 mentions that the conventional periodic relativistic correction to the satellite clock (to be added to the broadcast clock) is computed as
    2213 </p>
    2214 
    2215 <pre>
    2216  &nbsp; &nbsp; dt =  -2 (R * V) / c<sup>2</sup>
    2217 </pre>
    2218 
    2219 <p>
    2220 where R * V is the scalar product of the satellite position and velocity and c is the speed of light. This can also be found in the GPS Interface Specification, IS-GPS-200, Revision D, 7 March 2006.
    2221 </p>
    2222 
    2223 <p>
    2224 Orbit corrections are provided in along-track, out-of-plane and radial components. These components are defined in the Earth-Centered, Earth-Fixed reference frame of the Broadcast Ephemeris. For an observer in this frame, the along-track component is aligned in both direction and sign with the velocity vector, the out-of-plane component is perpendicular to the plane defined by the satellite position and velocity vectors, and the radial direction is perpendicular to the along track and out-of-plane ones. The three components form a right-handed orthogonal system.
    2225 </p>
    2226 
    2227 <p>
    2228 After applying corrections, the satellite position and clock is referred to the 'ionospheric free' phase center of the antenna which is compatible with the broadcast orbit reference.
    2229 </p>
    2230 
    2231 <p>
    2232 The orbit and clock corrections do not include local effects like Ocean Loading, Solid Earth Tides or tropospheric delays. However, accurate single frequency applications can be corrected for global ionospheric effects using so-call VTEC messages for global ionospheric state parameters.
    2233 </p>
    2234 
    2235 <p>
    2236 While we have a plain ASCII standard for saving Broadcast Ephemeris in RINEX Navigation files, we do not have an equivalent standard for corrections to Broadcast Ephemeris. Hence, BNC saves Broadcast Correction files following its own format definition. The filename convention for Broadcast Correction files follows the convention for RINEX Version 2 files except for the last character of the filename suffix which is set to 'C'.
    2237 </p>
    2238 
    2239 <p>
    2240 BNC's Broadcast Correction files contain blocks of records in plain ASCII format. Each block covers information about one specific topic and starts with an 'Epoch Record'.
    2241 </p>
    2242 <p>
    2243 <b>The 'Epoch Record' of a Broadcast Correction block</b>
    2244 </p>
    2245 
    2246 <p>
    2247 The leading 'Epoch Record' of each block in a Broadcast Correction file contains 11 parameters. Example:
    2248 </p>
    2249 <pre>
    2250 > ORBIT 2015 06 17 11 43 35.0 2 53 CLK93
    2251 </pre>
    2252 <p>
    2253 Their meaning is as follows:
    2254 </p>
    2255 <ol type="1">
    2256 <li>Special character '&#62;' is the first character in each 'Epoch Record' (as we have it in RINEX Version 3)</li>
    2257 <li>SSR message or topic descriptor, valid descriptors are:<br>ORBIT, CLOCK, CODE_BIAS, PHASE_BIAS, or VTEC</li>
     2618<p>RTCM Version 3 streams carrying these messages may be used e.g. to support real-time Precise Point Positioning (PPP) applications.</p>
     2619<p>When using clocks from Broadcast Ephemeris (with or without applied corrections) or clocks from SP3 files, it may be important to understand that they are not corrected for the conventional periodic relativistic effect. Chapter 10 of the IERS Conventions 2003 mentions that the conventional periodic relativistic correction to the satellite clock (to be added to the broadcast clock) is computed as</p>
     2620<div class="math">
     2621\[dt =  -2 (R * V) / c^2\]</div>
     2622<p>where <span class="math">\(R*V\)</span> is the scalar product of the satellite position and velocity and <span class="math">\(c\)</span> is the speed of light. This can also be found in the GPS Interface Specification, IS-GPS-200, Revision D, 7 March 2006.</p>
     2623<p>Orbit corrections are provided in along-track, out-of-plane and radial components. These components are defined in the Earth-Centered, Earth-Fixed reference frame of the Broadcast Ephemeris. For an observer in this frame, the along-track component is aligned in both direction and sign with the velocity vector, the out-of-plane component is perpendicular to the plane defined by the satellite position and velocity vectors, and the radial direction is perpendicular to the along track and out-of-plane ones. The three components form a right-handed orthogonal system.</p>
     2624<p>After applying corrections, the satellite position and clock is referred to the &#8216;ionospheric free&#8217; phase center of the antenna which is compatible with the broadcast orbit reference.</p>
     2625<p>The orbit and clock corrections do not include local effects like Ocean Loading, Solid Earth Tides or tropospheric delays. However, accurate single frequency applications can be corrected for global ionospheric effects using so-call VTEC messages for global ionospheric state parameters.</p>
     2626<p>While we have a plain ASCII standard for saving Broadcast Ephemeris in RINEX Navigation files, we do not have an equivalent standard for corrections to Broadcast Ephemeris. Hence, BNC saves Broadcast Correction files following its own format definition. The filename convention for Broadcast Correction files follows the convention for RINEX Version 2 files except for the last character of the filename suffix which is set to &#8216;C&#8217;.</p>
     2627<div class="section" id="broadcast-correction-file-format">
     2628<h4>Broadcast Correction file format<a class="headerlink" href="#broadcast-correction-file-format" title="Permalink to this headline">¶</a></h4>
     2629<p>BNC&#8217;s Broadcast Correction files contain blocks of records in plain ASCII format. Each block covers information about one specific topic and starts with an &#8216;Epoch Record&#8217;. The leading &#8216;Epoch Record&#8217; of each block in a Broadcast Correction file contains 11 parameters. Example:</p>
     2630<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> ORBIT <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2631</pre></div>
     2632</div>
     2633<p>Their meaning is as follows:</p>
     2634<ol class="arabic simple">
     2635<li>Special character &#8216;&gt;&#8217; is the first character in each &#8216;Epoch Record&#8217; (as we have it in RINEX Version 3)</li>
     2636<li>SSR message or topic descriptor, valid descriptors are: ORBIT, CLOCK, CODE_BIAS, PHASE_BIAS, and VTEC</li>
    22582637<li>Year, GPS time</li>
    22592638<li>Month, GPS time</li>
     
    22622641<li>Minute, GPS time</li>
    22632642<li>Second, GPS time</li>
    2264 <li>SSR message update interval indicator</li>
    2265 <ul>
     2643<li>SSR message update interval indicator:</li>
     2644</ol>
     2645<blockquote>
     2646<div><ul class="simple">
    22662647<li>0 = 1 sec</li>
    22672648<li>1 = 2 sec</li>
     
    22812662<li>15 = 10800 sec</li>
    22822663</ul>
     2664</div></blockquote>
     2665<ol class="arabic simple" start="10">
    22832666<li>Number of following records in this block</li>
    22842667<li>Mountpoint, source/stream indicator</li>
    22852668</ol>
    2286 Each of the following 'satellite records' in such a block carries information for one specific satellite. Undefined parameters in the 'satellite records' could be set to zero &quot;0.000&quot;.
    2287 
    2288 <p>
    2289 <b>Example for block 'ORBIT' carrying orbit corrections</b>
    2290 </p>
    2291 <pre>
    2292 > ORBIT 2015 06 17 11 43 35.0 2 53 CLK93
    2293 G01   9     0.5134     0.3692     0.6784        0.0000    -0.0000    -0.0000
    2294 G02  25    57.6817   139.0492   -91.3456        0.5436    -0.6931     1.0173
    2295 G03  79   -32.1768   191.8368  -121.6540        0.2695     0.2296     0.4879
    2296 ...
    2297 G32  82     1.8174     1.1704     0.2200       -0.0002    -0.0000    -0.0001
    2298 R01  59     0.7819    -0.6968     0.7388       -0.0001     0.0004     0.0004
    2299 R02  59     0.5816    -0.5800    -0.2004        0.0001    -0.0006     0.0001
    2300 R03  59     0.4635    -0.9104    -0.3832        0.0001     0.0001     0.0005
    2301 ...
    2302 R24  59     0.5935     2.0732    -0.6884       -0.0000     0.0004     0.0003
    2303 </pre>
    2304 <p>
    2305 Records in this block provide the following satellite specific information:
    2306 <ul>
     2669<p>Each of the following &#8216;satellite records&#8217; in such a block carries information for one specific satellite. Undefined parameters in the &#8216;satellite records&#8217; could be set to zero &#8216;0.000&#8217;.</p>
     2670<div class="section" id="example-for-block-orbit-carrying-orbit-corrections">
     2671<h5>Example for block &#8216;ORBIT&#8217; carrying orbit corrections<a class="headerlink" href="#example-for-block-orbit-carrying-orbit-corrections" title="Permalink to this headline">¶</a></h5>
     2672<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> ORBIT <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2673<span class="go">G01   9     0.5134     0.3692     0.6784        0.0000    -0.0000    -0.0000</span>
     2674<span class="go">G02  25    57.6817   139.0492   -91.3456        0.5436    -0.6931     1.0173</span>
     2675<span class="go">G03  79   -32.1768   191.8368  -121.6540        0.2695     0.2296     0.4879</span>
     2676<span class="go">...</span>
     2677<span class="go">G32  82     1.8174     1.1704     0.2200       -0.0002    -0.0000    -0.0001</span>
     2678<span class="go">R01  59     0.7819    -0.6968     0.7388       -0.0001     0.0004     0.0004</span>
     2679<span class="go">R02  59     0.5816    -0.5800    -0.2004        0.0001    -0.0006     0.0001</span>
     2680<span class="go">R03  59     0.4635    -0.9104    -0.3832        0.0001     0.0001     0.0005</span>
     2681<span class="go">...</span>
     2682<span class="go">R24  59     0.5935     2.0732    -0.6884       -0.0000     0.0004     0.0003</span>
     2683</pre></div>
     2684</div>
     2685<p>Records in this block provide the following satellite specific information:</p>
     2686<ul class="simple">
    23072687<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
    23082688<li>IOD referring to Broadcast Ephemeris set</li>
     
    23142694<li>Velocity of Out-of-plane Component of Orbit Correction to Broadcast Ephemeris [m/s]</li>
    23152695</ul>
    2316 </p>
    2317 
    2318 <p>
    2319 <b>Example for block 'CLOCK' carrying clock corrections</b>
    2320 </p>
    2321 
    2322 <p>
    2323 <pre>
    2324 > CLOCK 2015 06 17 11 43 35.0 2 53 CLK93
    2325 G01   9     0.5412     0.0000     0.0000
    2326 G02  25    11.1811     0.0000     0.0000
    2327 G03  79    45.0228     0.0000     0.0000
    2328 ...
    2329 G32  82    -1.5324     0.0000     0.0000
    2330 R01  59     4.2194     0.0000     0.0000
    2331 R02  59     2.0535     0.0000     0.0000
    2332 R03  59     1.8130     0.0000     0.0000
    2333 ...
    2334 R24  59     2.7409     0.0000     0.0000
    2335 </pre>
    2336 <p>
    2337 Records in this block provide the following satellite specific information:
    2338 <ul>
     2696</div>
     2697<div class="section" id="example-for-block-clock-carrying-clock-corrections">
     2698<h5>Example for block &#8216;CLOCK&#8217; carrying clock corrections<a class="headerlink" href="#example-for-block-clock-carrying-clock-corrections" title="Permalink to this headline">¶</a></h5>
     2699<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> CLOCK <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2700<span class="go">G01   9     0.5412     0.0000     0.0000</span>
     2701<span class="go">G02  25    11.1811     0.0000     0.0000</span>
     2702<span class="go">G03  79    45.0228     0.0000     0.0000</span>
     2703<span class="go">...</span>
     2704<span class="go">G32  82    -1.5324     0.0000     0.0000</span>
     2705<span class="go">R01  59     4.2194     0.0000     0.0000</span>
     2706<span class="go">R02  59     2.0535     0.0000     0.0000</span>
     2707<span class="go">R03  59     1.8130     0.0000     0.0000</span>
     2708<span class="go">...</span>
     2709<span class="go">R24  59     2.7409     0.0000     0.0000</span>
     2710</pre></div>
     2711</div>
     2712<p>Records in this block provide the following satellite specific information:</p>
     2713<ul class="simple">
    23392714<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
    23402715<li>IOD referring to Broadcast Ephemeris set</li>
     
    23432718<li>C2 polynomial coefficient for Clock Correction to Broadcast Ephemeris [m/s**2]</li>
    23442719</ul>
    2345 </p>
    2346 
    2347 <p>
    2348 <b>Example for block 'CODE_BIAS' carrying code biases</b>
    2349 </p>
    2350 <pre>
    2351 > CODE_BIAS 2015 06 17 11 43 35.0 2 53 CLK93
    2352 G01    5   1C    -3.3100   1W    -3.7500   2W    -6.1900   2X    -5.7800   5I    -5.4200
    2353 G02    5   1C     3.6000   1W     3.9300   2W     6.4800   2X     0.0000   5I     0.0000
    2354 G03    5   1C    -2.1600   1W    -2.6500   2W    -4.3600   2X    -4.4800   5I    -5.3400
    2355 ...
    2356 G32    5   1C    -1.5800   1W    -1.1000   2W    -1.8200   2X     0.0000   5I     0.0000
    2357 R01    4   1C    -2.4900   1P    -2.4900   2C    -3.1500   2P    -4.1200
    2358 R02    4   1C     0.3900   1P     0.2100   2C     0.4000   2P     0.3400
    2359 R03    4   1C     2.4800   1P     2.2800   2C     3.7800   2P     3.7700
    2360 ...
    2361 R24    4   1C     2.7000   1P     2.7800   2C     3.9800   2P     4.6000
    2362 </pre>
    2363 <p>
    2364 Records in this block provide the following satellite specific information:
    2365 <ul>
     2720</div>
     2721<div class="section" id="example-for-block-code-bias-carrying-code-biases">
     2722<h5>Example for block &#8216;CODE_BIAS&#8217; carrying code biases<a class="headerlink" href="#example-for-block-code-bias-carrying-code-biases" title="Permalink to this headline">¶</a></h5>
     2723<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> CODE_BIAS <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2724<span class="go">G01    5   1C    -3.3100   1W    -3.7500   2W    -6.1900   2X    -5.7800   5I    -5.4200</span>
     2725<span class="go">G02    5   1C     3.6000   1W     3.9300   2W     6.4800   2X     0.0000   5I     0.0000</span>
     2726<span class="go">G03    5   1C    -2.1600   1W    -2.6500   2W    -4.3600   2X    -4.4800   5I    -5.3400</span>
     2727<span class="go">...</span>
     2728<span class="go">G32    5   1C    -1.5800   1W    -1.1000   2W    -1.8200   2X     0.0000   5I     0.0000</span>
     2729<span class="go">R01    4   1C    -2.4900   1P    -2.4900   2C    -3.1500   2P    -4.1200</span>
     2730<span class="go">R02    4   1C     0.3900   1P     0.2100   2C     0.4000   2P     0.3400</span>
     2731<span class="go">R03    4   1C     2.4800   1P     2.2800   2C     3.7800   2P     3.7700</span>
     2732<span class="go">...</span>
     2733<span class="go">R24    4   1C     2.7000   1P     2.7800   2C     3.9800   2P     4.6000</span>
     2734</pre></div>
     2735</div>
     2736<p>Records in this block provide the following satellite specific information:</p>
     2737<ul class="simple">
    23662738<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
    2367 <li>Number of Code Biases, succeeded by code specific information:</li>
    2368 <ul>
     2739<li>Number of Code Biases, succeeded by code specific information:<ul>
    23692740<li>Indicator to specify the signal and tracking mode</li>
    23702741<li>Code Bias [m]</li>
     
    23732744<li>etc.</li>
    23742745</ul>
    2375 </ul>
    2376 </p>
    2377 
    2378 <p>
    2379 <b>Example for block 'PHASE_BIAS' carrying phase biases</b>
    2380 </p>
    2381 <pre>
    2382 > PHASE_BIAS 2015 06 17 11 43 35.0 2 31 CLK93
    2383  0   1
    2384 G01 245.39062500   0.00000000    3   1C     3.9518   1   2   6   2W     6.3177   1   2   6   5I     6.8059   1   2   6
    2385 G02 250.31250000   0.00000000    3   1C    -4.0900   1   2   5   2W    -6.7044   1   2   5   5I     0.0000   1   2   5
    2386 G03 281.95312500   0.00000000    3   1C     2.9327   1   2   4   2W     4.6382   1   2   4   5I     5.4120   1   2   4
    2387 ...
    2388 G32 290.39062500   0.00000000    3   1C     1.2520   1   2   5   2W     2.0554   1   2   5   5I     0.0000   1   2   5
    2389 </pre>
    2390 <p>
    2391 The second record in this block provides the following consistency information:
    2392 <ul>
    2393 
    2394 <li>Dispersive bias consistency indicatory<br>
    2395 0 &minus; phase biases valid for non-dispersive signal only<br>
    2396 1 &minus; phase biases maintain consistency between non-dispersive and all original dispersive phase signals
    23972746</li>
    2398 
    2399 <li>MW consistency indicator<br>
    2400 0 &minus; code and phase biases are independently derived<br>
    2401 1 &minus; consistency between code and phase biases is maintained for the MW combinations
    2402 </li>
    2403 
    2404 </ul>
    2405 Following records provide satellite specific information:
    2406 <ul>
     2747</ul>
     2748</div>
     2749<div class="section" id="example-for-block-phase-bias-carrying-phase-biases">
     2750<h5>Example for block &#8216;PHASE_BIAS&#8217; carrying phase biases<a class="headerlink" href="#example-for-block-phase-bias-carrying-phase-biases" title="Permalink to this headline">¶</a></h5>
     2751<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> PHASE_BIAS <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">2</span> <span class="m">31</span> CLK93
     2752<span class="go"> 0   1</span>
     2753<span class="go">G01 245.39062500   0.00000000    3   1C     3.9518   1   2   6   2W     6.3177   1   2   6   5I     6.8059   1   2   6</span>
     2754<span class="go">G02 250.31250000   0.00000000    3   1C    -4.0900   1   2   5   2W    -6.7044   1   2   5   5I     0.0000   1   2   5</span>
     2755<span class="go">G03 281.95312500   0.00000000    3   1C     2.9327   1   2   4   2W     4.6382   1   2   4   5I     5.4120   1   2   4</span>
     2756<span class="go">...</span>
     2757<span class="go">G32 290.39062500   0.00000000    3   1C     1.2520   1   2   5   2W     2.0554   1   2   5   5I     0.0000   1   2   5</span>
     2758</pre></div>
     2759</div>
     2760<p>The second record in this block provides the following consistency information:</p>
     2761<ul class="simple">
     2762<li>Dispersive bias consistency indicatory</li>
     2763</ul>
     2764<blockquote>
     2765<div><p>0 − phase biases valid for non-dispersive signal only</p>
     2766<p>1 − phase biases maintain consistency between non-dispersive and all original dispersive phase signals</p>
     2767</div></blockquote>
     2768<ul class="simple">
     2769<li>MW consistency indicator</li>
     2770</ul>
     2771<blockquote>
     2772<div><p>0 − code and phase biases are independently derived</p>
     2773<p>1 − consistency between code and phase biases is maintained for the MW combinations</p>
     2774</div></blockquote>
     2775<p>Following records provide satellite specific information:</p>
     2776<ul class="simple">
    24072777<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
    2408 <li>Yaw angle [&deg;], restricted to [0&deg... 360&deg]</li>
    2409 <li>Yaw rate [&deg;/s]</li>
    2410 <li>Number of phase biases in this record, succeeded by phase specific information:</li>
    2411 <ul>
     2778<li>Yaw angle [<span class="math">\(^{\circ}\)</span>], restricted to [<span class="math">\(0^{\circ}...360^{\circ}\)</span>]</li>
     2779<li>Yaw rate [<span class="math">\(^{\circ}/s\)</span>]</li>
     2780<li>Number of phase biases in this record, succeeded by phase specific information:<ul>
    24122781<li>Signal and tracking mode indicator</li>
    24132782<li>Phase bias [m]</li>
     
    24162785<li>Signal discontinuity counter</li>
    24172786</ul>
    2418 </ul>
    2419 </p>
    2420 
    2421 <p>
    2422 <b>Example for block 'VTEC' carrying ionospheric corrections</b>
    2423 </p>
    2424 <pre>
    2425 > VTEC 2015 06 17 11 43 35.0 6 1 CLK93
    2426  1  6  6   450000.0
    2427    17.6800     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000
    2428     4.5200     8.8700     0.0000     0.0000     0.0000     0.0000     0.0000
    2429    -4.6850    -0.3050     1.1700     0.0000     0.0000     0.0000     0.0000
    2430    -2.2250    -1.3900    -1.0250    -0.1300     0.0000     0.0000     0.0000
    2431     0.8750    -0.3800     0.2700    -0.1300     0.0400     0.0000     0.0000
    2432     1.2150     0.9050    -1.0100     0.3700    -0.1450    -0.2450     0.0000
    2433    -0.8200     0.4850     0.2300    -0.1750     0.3400    -0.0900    -0.0400
    2434     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000
    2435     0.0000    -0.0700     0.0000     0.0000     0.0000     0.0000     0.0000
    2436     0.0000     0.5800    -1.4150     0.0000     0.0000     0.0000     0.0000
    2437     0.0000    -0.6200    -0.1500     0.2600     0.0000     0.0000     0.0000
    2438     0.0000     0.0700    -0.0900    -0.0550     0.1700     0.0000     0.0000
    2439     0.0000     0.5000     0.3050    -0.5700    -0.5250    -0.2750     0.0000
    2440     0.0000     0.0850    -0.4700     0.0600     0.0700     0.1600     0.0400
    2441 </pre>
    2442 <p>
    2443 The second record in this block provides four parameters:
    2444 <ul>
     2787</li>
     2788</ul>
     2789</div>
     2790<div class="section" id="example-for-block-vtec-carrying-ionospheric-corrections">
     2791<h5>Example for block &#8216;VTEC&#8217; carrying ionospheric corrections<a class="headerlink" href="#example-for-block-vtec-carrying-ionospheric-corrections" title="Permalink to this headline">¶</a></h5>
     2792<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> VTEC <span class="m">2015</span> <span class="m">06</span> <span class="m">17</span> <span class="m">11</span> <span class="m">43</span> 35.0 <span class="m">6</span> <span class="m">1</span> CLK93
     2793<span class="go"> 1  6  6   450000.0</span>
     2794<span class="go">   17.6800     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2795<span class="go">    4.5200     8.8700     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2796<span class="go">   -4.6850    -0.3050     1.1700     0.0000     0.0000     0.0000     0.0000</span>
     2797<span class="go">   -2.2250    -1.3900    -1.0250    -0.1300     0.0000     0.0000     0.0000</span>
     2798<span class="go">    0.8750    -0.3800     0.2700    -0.1300     0.0400     0.0000     0.0000</span>
     2799<span class="go">    1.2150     0.9050    -1.0100     0.3700    -0.1450    -0.2450     0.0000</span>
     2800<span class="go">   -0.8200     0.4850     0.2300    -0.1750     0.3400    -0.0900    -0.0400</span>
     2801<span class="go">    0.0000     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2802<span class="go">    0.0000    -0.0700     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2803<span class="go">    0.0000     0.5800    -1.4150     0.0000     0.0000     0.0000     0.0000</span>
     2804<span class="go">    0.0000    -0.6200    -0.1500     0.2600     0.0000     0.0000     0.0000</span>
     2805<span class="go">    0.0000     0.0700    -0.0900    -0.0550     0.1700     0.0000     0.0000</span>
     2806<span class="go">    0.0000     0.5000     0.3050    -0.5700    -0.5250    -0.2750     0.0000</span>
     2807<span class="go">    0.0000     0.0850    -0.4700     0.0600     0.0700     0.1600     0.0400</span>
     2808</pre></div>
     2809</div>
     2810<p>The second record in this block provides four parameters:</p>
     2811<ul class="simple">
    24452812<li>Layer number</li>
    24462813<li>Maximum degree of spherical harmonics</li>
     
    24482815<li>Height of ionospheric layer [m]</li>
    24492816</ul>
    2450 Subsequent records in this block provide the following information:
    2451 <ul>
     2817<p>Subsequent records in this block provide the following information:</p>
     2818<ul class="simple">
    24522819<li>Spherical harmonic coefficients C and S, sorted by degree and order (0 to maximum)</li>
    24532820</ul>
    2454 </p>
     2821</div>
     2822</div>
     2823<div class="section" id="directory-ascii-optional">
     2824<h4>Directory, ASCII - optional<a class="headerlink" href="#directory-ascii-optional" title="Permalink to this headline">¶</a></h4>
     2825<p>Specify a directory for saving Broadcast Corrections in files. If the specified directory does not exist, BNC will not create Broadcast Correction files. Default value for Broadcast Correction &#8216;Directory&#8217; is an empty option field, meaning that no Broadcast Correction files will be created.</p>
     2826</div>
     2827<div class="section" id="interval-mandatory-if-directory-ascii-is-set">
     2828<h4>Interval - mandatory if &#8216;Directory, ASCII&#8217; is set<a class="headerlink" href="#interval-mandatory-if-directory-ascii-is-set" title="Permalink to this headline">¶</a></h4>
     2829<p>Select the length of the Broadcast Correction files. The default value is &#8216;1 day&#8217;.</p>
     2830</div>
     2831<div class="section" id="id5">
     2832<h4>Port - optional<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h4>
     2833<p>BNC can output epoch by epoch synchronized Broadcast Corrections in ASCII format on your local host (IP 127.0.0.1) through an IP &#8216;Port&#8217;. Specify an IP port number to activate this function. The default is an empty option field, meaning that no Broadcast Correction output via IP port is generated.</p>
     2834<p>The output format is similar to the format used for saving Broadcast Corrections in a file.</p>
     2835<p>The following is an example output for the stream from mountpoint CLK93:</p>
     2836<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> ORBIT <span class="m">2015</span> <span class="m">06</span> <span class="m">19</span> <span class="m">16</span> <span class="m">41</span> 00.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2837<span class="go">G01  85     0.5891    -0.5124    -0.0216       -0.0001    -0.0002     0.0000</span>
     2838<span class="go">G02  25  -150.1820    11.4676    84.5216        0.4130    -0.6932     1.0159</span>
     2839<span class="go">G03  79    15.1999   141.9932  -156.4244        0.6782    -0.8607    -0.8211</span>
     2840<span class="go">...</span>
     2841<span class="go">G32  39     1.8454     0.4888    -0.3876       -0.0001    -0.0001     0.0001</span>
     2842<span class="go">R01  79    -0.0506     1.9024    -0.0120        0.0004     0.0002    -0.0000</span>
     2843<span class="go">R02  79     0.1623     0.9012     0.3984        0.0001     0.0001     0.0002</span>
     2844<span class="go">R03  79     0.3247    -2.6704    -0.0240        0.0005    -0.0002     0.0002</span>
     2845<span class="go">...</span>
     2846<span class="go">R24  79     0.7046    -0.5088    -0.0160       -0.0000     0.0000    -0.0002</span>
     2847<span class="gp">&gt;</span> CLOCK <span class="m">2015</span> <span class="m">06</span> <span class="m">19</span> <span class="m">16</span> <span class="m">41</span> 00.0 <span class="m">2</span> <span class="m">53</span> CLK93
     2848<span class="go">G01  85  -116.9441     0.0000     0.0000</span>
     2849<span class="go">G02  25  -110.4472     0.0000     0.0000</span>
     2850<span class="go">G03  79   -96.8299     0.0000     0.0000</span>
     2851<span class="go">...</span>
     2852<span class="go">G32  39  -119.2757     0.0000     0.0000</span>
     2853<span class="go">R01  79     1.5703     0.0000     0.0000</span>
     2854<span class="go">R02  79    -1.4181     0.0000     0.0000</span>
     2855<span class="go">R03  79     0.2072     0.0000     0.0000</span>
     2856<span class="go">...</span>
     2857<span class="go">R24  79     1.1292     0.0000     0.0000</span>
     2858<span class="gp">&gt;</span> CODE_BIAS <span class="m">2015</span> <span class="m">06</span> <span class="m">19</span> <span class="m">16</span> <span class="m">41</span> 00.0 <span class="m">0</span> <span class="m">56</span> CLK93
     2859<span class="go">E11    3   1B     1.3800   5Q     2.4800   7Q     2.5000</span>
     2860<span class="go">E12    3   1B     0.3900   5Q     0.6900   7Q     0.5300</span>
     2861<span class="go">E19    3   1B    -1.7800   5Q    -3.1900   7Q    -3.0700</span>
     2862<span class="go">G01    5   1C    -3.3100   1W    -3.7500   2W    -6.1900   2X    -5.7800   5I    -5.4200</span>
     2863<span class="go">G02    5   1C     3.6000   1W     3.9300   2W     6.4800   2X     0.0000   5I     0.0000</span>
     2864<span class="go">G03    5   1C    -2.1600   1W    -2.6500   2W    -4.3600   2X    -4.4800   5I    -5.3400</span>
     2865<span class="go">...</span>
     2866<span class="go">G32    5   1C    -1.5800   1W    -1.1000   2W    -1.8200   2X     0.0000   5I     0.0000</span>
     2867<span class="go">R01    4   1C    -2.4900   1P    -2.4900   2C    -3.1500   2P    -4.1200</span>
     2868<span class="go">R02    4   1C     0.3900   1P     0.2100   2C     0.4000   2P     0.3400</span>
     2869<span class="go">R03    4   1C     2.4800   1P     2.2800   2C     3.7800   2P     3.7700</span>
     2870<span class="go">...</span>
     2871<span class="go">R24    4   1C     2.7000   1P     2.7800   2C     3.9800   2P     4.6000</span>
     2872<span class="gp">&gt;</span> PHASE_BIAS <span class="m">2015</span> <span class="m">06</span> <span class="m">19</span> <span class="m">16</span> <span class="m">41</span> 00.0 <span class="m">2</span> <span class="m">31</span> CLK93
     2873<span class="go"> 0   1</span>
     2874<span class="go">G01 309.37500000   0.00000000    3   1C     3.9922   1   2   6   2W     6.3568   1   2   6   5I     6.8726   1   2   6</span>
     2875<span class="go">G02 263.67187500   0.00000000    3   1C    -4.0317   1   2   7   2W    -6.6295   1   2   7   5I     0.0000   1   2   7</span>
     2876<span class="go">G03 267.89062500   0.00000000    3   1C     3.1267   1   2   4   2W     4.9126   1   2   4   5I     5.6478   1   2   4</span>
     2877<span class="go">...</span>
     2878<span class="go">G32 255.93750000   0.00000000    3   1C     1.3194   1   2   5   2W     2.1448   1   2   5   5I     0.0000   1   2   5</span>
     2879<span class="gp">&gt;</span> VTEC <span class="m">2015</span> <span class="m">06</span> <span class="m">19</span> <span class="m">16</span> <span class="m">41</span> 00.0 <span class="m">6</span> <span class="m">1</span> CLK93
     2880<span class="go"> 1  6  6   450000.0</span>
     2881<span class="go">   16.7450     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2882<span class="go">    4.9300     8.1600     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2883<span class="go">   -4.4900     0.2550     1.0950     0.0000     0.0000     0.0000     0.0000</span>
     2884<span class="go">   -2.2450    -1.9500    -0.7950    -0.4700     0.0000     0.0000     0.0000</span>
     2885<span class="go">    1.0250    -0.9000    -0.0900     0.1050     0.1450     0.0000     0.0000</span>
     2886<span class="go">    1.5500     0.9750    -0.8150     0.3600     0.0350    -0.0900     0.0000</span>
     2887<span class="go">   -0.4050     0.8300     0.0800    -0.0650     0.2200     0.0150    -0.1600</span>
     2888<span class="go">    0.0000     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2889<span class="go">    0.0000    -0.1250     0.0000     0.0000     0.0000     0.0000     0.0000</span>
     2890<span class="go">    0.0000     1.0050    -0.7750     0.0000     0.0000     0.0000     0.0000</span>
     2891<span class="go">    0.0000    -0.2300     0.7150     0.7550     0.0000     0.0000     0.0000</span>
     2892<span class="go">    0.0000    -0.4100    -0.1250     0.2400     0.2700     0.0000     0.0000</span>
     2893<span class="go">    0.0000     0.0850    -0.3400    -0.0500    -0.2200    -0.0750     0.0000</span>
     2894<span class="go">    0.0000     0.2000    -0.2850    -0.0150    -0.0250     0.0900     0.0650</span>
     2895</pre></div>
     2896</div>
     2897<p>The source code for BNC comes with an example Perl script &#8216;test_tcpip_client.pl&#8217; that allows to read BNC&#8217;s Broadcast Corrections from the IP port for verification.</p>
     2898<div class="figure" id="id37">
     2899<span id="fig-17"></span><a class="reference internal image-reference" href="_images/fig_17.png"><img alt="_images/fig_17.png" src="_images/fig_17.png" style="width: 1120.0px; height: 722.0px;" /></a>
     2900<p class="caption"><span class="caption-number">Fig. 18 </span><span class="caption-text">Example for pulling, saving and output of Broadcast Corrections using BNC</span></p>
     2901</div>
     2902</div>
     2903</div>
     2904<div class="section" id="feed-engine">
     2905<span id="index-20"></span><h3>Feed Engine<a class="headerlink" href="#feed-engine" title="Permalink to this headline">¶</a></h3>
     2906<p>BNC can produce synchronized or unsynchronized observations epoch by epoch from all stations and satellites to feed a real-time GNSS network engine. Observations can be streamed out through an IP port and/or saved in a file. The output is always in the same plain ASCII format and sorted per incoming stream.</p>
     2907<p>Each epoch in the synchronized output begins with a line containing the GPS Week Number and the seconds within the GPS Week. Following lines begin with the mountpoint string of the stream which provides the observations followed by a satellite number. Specifications for satellite number, code, phase, Doppler and signal strength data follow definitions presented in the RINEX Version 3 documentation. In case of phase observations, a &#8216;Lock Time Indicator&#8217; is added. The end of an epoch is indicated by an empty line.</p>
     2908<p>A valid &#8216;Lock Time Indicator&#8217; is only presented for observations from RTCM Version 3 streams. The parameter provides a measure of the amount of time that has elapsed during which the receiver has maintained continuous lock on that satellite signal. If a cycle slip occurs during the previous measurement cycle, the lock indicator will be reset to Zero. In case of observations from RTCM Version 2 streams, the &#8216;Lock Time Indicator&#8217; is always set to &#8216;-1&#8217;.</p>
     2909<p><a class="reference internal" href="#tab-feed-engine"><span class="std std-numref">Table 6</span></a> describes the format of BNC&#8217;s synchronized output of GNSS observations which consists of &#8216;Epoch Records&#8217; and &#8216;Observation Records&#8217;. Each Epoch Record is followed by one or more Observation Records. The Observation Record is repeated for each satellite having been observed in the current epoch. The length of an Observation Record is given by the number of observation types for this satellite.</p>
     2910<table border="1" class="docutils" id="id38">
     2911<span id="tab-feed-engine"></span><caption><span class="caption-number">Table 6 </span><span class="caption-text">Contents and format of synchronized output of observations feeding a GNSS engine</span><a class="headerlink" href="#id38" title="Permalink to this table">¶</a></caption>
     2912<colgroup>
     2913<col width="42%" />
     2914<col width="25%" />
     2915<col width="32%" />
     2916</colgroup>
     2917<thead valign="bottom">
     2918<tr class="row-odd"><th class="head"><strong>Identifier</strong></th>
     2919<th class="head"><strong>Example</strong></th>
     2920<th class="head"><strong>Format</strong></th>
     2921</tr>
     2922</thead>
     2923<tbody valign="top">
     2924<tr class="row-even"><td><em>Epoch Record</em></td>
     2925<td>&nbsp;</td>
     2926<td>&nbsp;</td>
     2927</tr>
     2928<tr class="row-odd"><td>Record Identifier</td>
     2929<td>&gt;</td>
     2930<td>A1</td>
     2931</tr>
     2932<tr class="row-even"><td>GPS Week Number</td>
     2933<td>1850</td>
     2934<td>1X,I4</td>
     2935</tr>
     2936<tr class="row-odd"><td>GPS Seconds of Week</td>
     2937<td>120556.0000000</td>
     2938<td>1X,F14.7</td>
     2939</tr>
     2940<tr class="row-even"><td><em>Observation Record</em></td>
     2941<td>&nbsp;</td>
     2942<td>&nbsp;</td>
     2943</tr>
     2944<tr class="row-odd"><td>Mountpoint</td>
     2945<td>WTZR0</td>
     2946<td>A</td>
     2947</tr>
     2948<tr class="row-even"><td>Satellite Number</td>
     2949<td>G01</td>
     2950<td>1X,A3</td>
     2951</tr>
     2952<tr class="row-odd"><td><em>Pseudo-Range Data</em></td>
     2953<td>&nbsp;</td>
     2954<td>&nbsp;</td>
     2955</tr>
     2956<tr class="row-even"><td>Observation Code</td>
     2957<td>C1C</td>
     2958<td>1X,A3</td>
     2959</tr>
     2960<tr class="row-odd"><td>Pseudo-Range Observation</td>
     2961<td>25394034.112</td>
     2962<td>1X,F14.3</td>
     2963</tr>
     2964<tr class="row-even"><td><em>Carrier Phase Data</em></td>
     2965<td>&nbsp;</td>
     2966<td>&nbsp;</td>
     2967</tr>
     2968<tr class="row-odd"><td>Observation Code</td>
     2969<td>L1C</td>
     2970<td>1X,A3</td>
     2971</tr>
     2972<tr class="row-even"><td>Carrier Phase Observation</td>
     2973<td>133446552.870</td>
     2974<td>1X,F14.3</td>
     2975</tr>
     2976<tr class="row-odd"><td>Lock Time Indicator</td>
     2977<td>11</td>
     2978<td>1X,I4</td>
     2979</tr>
     2980<tr class="row-even"><td><em>Doppler Data</em></td>
     2981<td>&nbsp;</td>
     2982<td>&nbsp;</td>
     2983</tr>
     2984<tr class="row-odd"><td>Observation Code</td>
     2985<td>D1C</td>
     2986<td>1X,A3</td>
     2987</tr>
     2988<tr class="row-even"><td>Doppler Observation</td>
     2989<td>-87.977</td>
     2990<td>1X,F14.3</td>
     2991</tr>
     2992<tr class="row-odd"><td><em>Signal Strength</em></td>
     2993<td>&nbsp;</td>
     2994<td>&nbsp;</td>
     2995</tr>
     2996<tr class="row-even"><td>Observation Code</td>
     2997<td>S2W</td>
     2998<td>1X,A3</td>
     2999</tr>
     3000<tr class="row-odd"><td>Observed Signal Strength</td>
     3001<td>34.750</td>
     3002<td>1X,F8.3</td>
     3003</tr>
     3004</tbody>
     3005</table>
     3006<p>The following is an example for synchronized file and IP port output, which presents observations from GPS, GLONASS, Galileo, BDS (BeiDou), QZSS, and SBAS satellites as collected through streams FFMJ1, WTZR0 and CUT07:</p>
     3007<div class="highlight-console"><div class="highlight"><pre><span class="gp">&gt;</span> <span class="m">1884</span> 206010.0000000
     3008<span class="go">FFMJ1 G02 C1C   23286796.846 L1C  122372909.535  127 S1C   49.000 C2W   23286793.846 L2W   95355531.583  127 S2W   36.000</span>
     3009<span class="go">...</span>
     3010<span class="go">FFMJ1 G26 C1C   24796690.856 L1C  130307533.550  127 S1C   42.000 C2W   24796697.776 L2W  101538315.510  127 S2W   25.000</span>
     3011<span class="go">FFMJ1 S20 C1C   38682850.302 L1C  203279786.777  127 S1C   42.000</span>
     3012<span class="go">FFMJ1 S36 C1C   38288096.846 L1C  201205293.221  127 S1C   47.000</span>
     3013<span class="go">FFMJ1 R03 C1C   23182737.548 L1C  124098947.838  127 S1C   48.000 C2P   23182746.288 L2P   96521352.130  127 S2P   42.000</span>
     3014<span class="go">...</span>
     3015<span class="go">FFMJ1 R21 C1C   22201343.772 L1C  118803851.388  127 S1C   52.000 C2P   22201348.892 L2P   92402993.884  127 S2P   44.000</span>
     3016<span class="go">CUT07 G01 C1C   25318977.766 L1C  133052476.488  521 D1C       2533.500 S1C   33.688 C2W   25318993.668 L2W  103677584.878  521 S2W   15.625 C2X   25318991.820 L2X  103676566.850  521 S2X   35.375 C5X   25318993.461 L5X   99357161.238  521 S5X   39.812</span>
     3017<span class="go">...</span>
     3018<span class="go">CUT07 G27 C1C   20251005.351 L1C  106420601.969  627 D1C        250.937 S1C   50.312 C2W   20251014.512 L2W   82924447.644  627 S2W   45.125 C2X   20251014.246 L2X   82924648.644  627 S2X   53.188 C5X   20251015.480 L5X   79469461.619  627 S5X   56.375</span>
     3019<span class="go">CUT07 R01 C1C   20312587.149 L1C  108583395.373  625 D1C      -2456.703 S1C   52.875 C1P   20312586.192 L1P  108582844.382  625 S1P   51.000 C2C   20312593.422 L2C   84452892.610  625 S2C   43.625 C2P   20312593.836 L2P   84453114.622  625 S2P   42.312</span>
     3020<span class="go">...</span>
     3021<span class="go">CUT07 R24 C1C   19732223.242 L1C  105517564.659  630 D1C         -7.477 S1C   47.375 C1P   19732222.609 L1P  105517564.669  630 S1P   46.375 C2C   19732227.660 L2C   82069550.193  630 S2C   38.125 C2P   19732227.316 L2P   82068477.204  630 S2P   37.375</span>
     3022<span class="go">CUT07 E11 C1X   28843071.547 L1X  151571208.816  405 D1X      -2221.055 S1X   29.000 C7X   28843082.531 L7X  116138795.418  405 S7X   27.188 C8X   28843085.699 L8X  114662585.261  405 S8X   33.688 C5X   28843086.281 L5X  113186518.907  405 S5X   30.375</span>
     3023<span class="go">...</span>
     3024<span class="go">CUT07 E30 C1X   28096037.289 L1X  147645296.835  630 D1X      -2020.613 S1X   34.688 C7X   28096054.070 L7X  113131111.635  630 S7X   36.875 C8X   28096055.684 L8X  111692702.565  630 S8X   40.375 C5X   28096058.008 L5X  110254591.278  630 S5X   36.188</span>
     3025<span class="go">CUT07 S27 C1C   40038220.843 L1C  210402303.982  616 D1C        104.688 S1C   36.125 C5I   40038226.375 L5I  157118241.003  616 S5I   40.875</span>
     3026<span class="go">...</span>
     3027<span class="go">CUT07 S37 C1C   37791754.594 L1C  198596881.251  704 D1C        106.605 S1C   37.875</span>
     3028<span class="go">CUT07 J01 C1C   33076065.781 L1C  173816471.106  674 D1C        169.765 S1C   48.375 C1Z   33076063.086 L1Z  173815528.437  674 S1Z   48.625 C6L   33076065.652 L6L  141084039.422  674 S6L   52.688 C2X   33076070.523 L2X  135440679.474  674 S2X   50.500 C5X   33076076.496 L5X  129797319.733  674 S5X   54.188 C1X   33076065.492 L1X  173815529.101  674 S1X   52.375</span>
     3029<span class="go">CUT07 C01 C2I   37725820.914 L2I  196447455.374  704 D2I         90.898 S2I   41.312 C6I   37725810.168 L6I  159630204.932  704 S6I   44.875 C7I   37725815.196 L7I  151906389.245  704 S7I   45.812</span>
     3030<span class="go">...</span>
     3031<span class="go">CUT07 C14 C2I   23351041.328 L2I  121594621.501  592 D2I       2422.203 S2I   45.688 C6I   23351032.926 L6I   98805869.415  592 S6I   48.500 C7I   23351041.996 L7I   94024977.673  592 S7I   45.688</span>
     3032<span class="go">WTZR0 G02 C1C   23641481.864 L1C  124236803.604  127 S1C   47.500 C2W   23641476.604 L2W   96807881.233  127 S2W   39.250</span>
     3033<span class="go">...</span>
     3034<span class="go">WTZR0 G26 C1C   24681555.676 L1C  129702453.534  127 S1C   43.750 C2W   24681561.256 L2W  101066873.870  127 S2W   37.750</span>
     3035<span class="go">WTZR0 R03 C1C   22982596.508 L1C  123027564.682  127 S1C   47.000 C2P   22982598.368 L2P   95688085.627  127 S2P   43.250</span>
     3036<span class="go">...</span>
     3037<span class="go">WTZR0 R21 C1C   22510252.692 L1C  120456902.811  127 S1C   47.500 C2P   22510253.132 L2P   93688698.401  127 S2P   44.000</span>
    24553038
    2456 <p><h4>2.8.1 <a name="corrdir">Directory, ASCII - optional</h4></p>
    2457 <p>
    2458 Specify a directory for saving Broadcast Corrections in files. If the specified directory does not exist, BNC will not create Broadcast Correction files. Default value for Broadcast Correction 'Directory' is an empty option field, meaning that no Broadcast Correction files will be created.
    2459 </p>
    2460 
    2461 <p><h4>2.8.2 <a name="corrint">Interval - mandatory if 'Directory, ASCII' is set</h4></p>
    2462 <p>
    2463 Select the length of the Broadcast Correction files. The default value is '1 day'.
    2464 </p>
    2465 
    2466 <p><h4>2.8.3 <a name="corrport">Port - optional</h4></p>
    2467 <p>
    2468 BNC can output epoch by epoch synchronized Broadcast Corrections in ASCII format on your local host (IP 127.0.0.1) through an IP 'Port'. Specify an IP port number to activate this function. The default is an empty option field, meaning that no Broadcast Correction output via IP port is generated.
    2469 </p>
    2470 <p>
    2471 The output format is similar to the format used for saving Broadcast Corrections in a file.
    2472 </p>
    2473 <p>
    2474 The following is an example output for the stream from mountpoint CLK93:
    2475 <pre>
    2476 > ORBIT 2015 06 19 16 41 00.0 2 53 CLK93
    2477 G01  85     0.5891    -0.5124    -0.0216       -0.0001    -0.0002     0.0000
    2478 G02  25  -150.1820    11.4676    84.5216        0.4130    -0.6932     1.0159
    2479 G03  79    15.1999   141.9932  -156.4244        0.6782    -0.8607    -0.8211
    2480 ...
    2481 G32  39     1.8454     0.4888    -0.3876       -0.0001    -0.0001     0.0001
    2482 R01  79    -0.0506     1.9024    -0.0120        0.0004     0.0002    -0.0000
    2483 R02  79     0.1623     0.9012     0.3984        0.0001     0.0001     0.0002
    2484 R03  79     0.3247    -2.6704    -0.0240        0.0005    -0.0002     0.0002
    2485 ...
    2486 R24  79     0.7046    -0.5088    -0.0160       -0.0000     0.0000    -0.0002
    2487 > CLOCK 2015 06 19 16 41 00.0 2 53 CLK93
    2488 G01  85  -116.9441     0.0000     0.0000
    2489 G02  25  -110.4472     0.0000     0.0000
    2490 G03  79   -96.8299     0.0000     0.0000
    2491 ...
    2492 G32  39  -119.2757     0.0000     0.0000
    2493 R01  79     1.5703     0.0000     0.0000
    2494 R02  79    -1.4181     0.0000     0.0000
    2495 R03  79     0.2072     0.0000     0.0000
    2496 ...
    2497 R24  79     1.1292     0.0000     0.0000
    2498 > CODE_BIAS 2015 06 19 16 41 00.0 0 56 CLK93
    2499 E11    3   1B     1.3800   5Q     2.4800   7Q     2.5000
    2500 E12    3   1B     0.3900   5Q     0.6900   7Q     0.5300
    2501 E19    3   1B    -1.7800   5Q    -3.1900   7Q    -3.0700
    2502 G01    5   1C    -3.3100   1W    -3.7500   2W    -6.1900   2X    -5.7800   5I    -5.4200
    2503 G02    5   1C     3.6000   1W     3.9300   2W     6.4800   2X     0.0000   5I     0.0000
    2504 G03    5   1C    -2.1600   1W    -2.6500   2W    -4.3600   2X    -4.4800   5I    -5.3400
    2505 ...
    2506 G32    5   1C    -1.5800   1W    -1.1000   2W    -1.8200   2X     0.0000   5I     0.0000
    2507 R01    4   1C    -2.4900   1P    -2.4900   2C    -3.1500   2P    -4.1200
    2508 R02    4   1C     0.3900   1P     0.2100   2C     0.4000   2P     0.3400
    2509 R03    4   1C     2.4800   1P     2.2800   2C     3.7800   2P     3.7700
    2510 ...
    2511 R24    4   1C     2.7000   1P     2.7800   2C     3.9800   2P     4.6000
    2512 > PHASE_BIAS 2015 06 19 16 41 00.0 2 31 CLK93
    2513  0   1
    2514 G01 309.37500000   0.00000000    3   1C     3.9922   1   2   6   2W     6.3568   1   2   6   5I     6.8726   1   2   6
    2515 G02 263.67187500   0.00000000    3   1C    -4.0317   1   2   7   2W    -6.6295   1   2   7   5I     0.0000   1   2   7
    2516 G03 267.89062500   0.00000000    3   1C     3.1267   1   2   4   2W     4.9126   1   2   4   5I     5.6478   1   2   4
    2517 ...
    2518 G32 255.93750000   0.00000000    3   1C     1.3194   1   2   5   2W     2.1448   1   2   5   5I     0.0000   1   2   5
    2519 > VTEC 2015 06 19 16 41 00.0 6 1 CLK93
    2520  1  6  6   450000.0
    2521    16.7450     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000
    2522     4.9300     8.1600     0.0000     0.0000     0.0000     0.0000     0.0000
    2523    -4.4900     0.2550     1.0950     0.0000     0.0000     0.0000     0.0000
    2524    -2.2450    -1.9500    -0.7950    -0.4700     0.0000     0.0000     0.0000
    2525     1.0250    -0.9000    -0.0900     0.1050     0.1450     0.0000     0.0000
    2526     1.5500     0.9750    -0.8150     0.3600     0.0350    -0.0900     0.0000
    2527    -0.4050     0.8300     0.0800    -0.0650     0.2200     0.0150    -0.1600
    2528     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000     0.0000
    2529     0.0000    -0.1250     0.0000     0.0000     0.0000     0.0000     0.0000
    2530     0.0000     1.0050    -0.7750     0.0000     0.0000     0.0000     0.0000
    2531     0.0000    -0.2300     0.7150     0.7550     0.0000     0.0000     0.0000
    2532     0.0000    -0.4100    -0.1250     0.2400     0.2700     0.0000     0.0000
    2533     0.0000     0.0850    -0.3400    -0.0500    -0.2200    -0.0750     0.0000
    2534     0.0000     0.2000    -0.2850    -0.0150    -0.0250     0.0900     0.0650
    2535 </pre>
    2536 </p>
    2537 <p>
    2538 The source code for BNC comes with an example Perl script 'test_tcpip_client.pl' that allows to read BNC's Broadcast Corrections from the IP port for verification.
    2539 </p>
    2540 
    2541 <p><img src="IMG/screenshot37.png"/></p>
    2542 <p><u>Figure 17:</u> Example for pulling, saving and output of Broadcast Corrections using BNC</p>
    2543 
    2544 <p><h4>2.9 <a name="syncout">Feed Engine</h4></p>
    2545 
    2546 <p>
    2547 BNC can produce synchronized or unsynchronized observations epoch by epoch from all stations and satellites to feed a real-time GNSS network engine. Observations can be streamed out through an IP port and/or saved in a local file. The output is always in the same plain ASCII format and sorted per incoming stream.
    2548 </p>
    2549 
    2550 <p>
    2551 Each epoch in the synchronized output begins with a line containing the GPS Week Number and the seconds within the GPS Week. Following lines begin with the mountpoint string of the stream which provides the observations followed by a satellite number. Specifications for satellite number, code, phase, Doppler and signal strength data follow definitions presented in the RINEX Version 3 documentation. In case of phase observations, a 'Lock Time Indicator' is added. The end of an epoch is indicated by an empty line.
    2552 </p>
    2553 
    2554 <p>
    2555 A valid 'Lock Time Indicator' is only presented for observations from RTCM Version 3 streams. The parameter provides a measure of the amount of time that has elapsed during which the receiver has maintained continuous lock on that satellite signal. If a cycle slip occurs during the previous measurement cycle, the lock indicator will be reset to Zero. In case of observations from RTCM Version 2 streams, the 'Lock Time Indicator' is always set to '-1'.
    2556 </p>
    2557 
    2558 <p>
    2559 The following table describes the format of BNC's synchronized output of GNSS observations which consists of 'Epoch Records' and 'Observation Records'. Each Epoch Record is followed by one or more Observation Records. The Observation Record is repeated for each satellite having been observed in the current epoch. The length of an Observation Record is given by the number of observation types for this satellite.
    2560 </p>
    2561 
    2562 <p><u>Table 2:</u> Contents and format of synchronized output of observations feeding a GNSS engine</p>
    2563 <p>
    2564 <table>
    2565 <tr><td></td><td><b>Example</b></td><td><b>Format</b></td></tr>
    2566 
    2567 <tr><td><b>Epoch Record</b></td><td></td><td></td></tr>
    2568 <tr><td>Record Identifier</td><td>></td><td>A1</td></tr>
    2569 <tr><td>GPS Week Number</td><td>1850</td><td>1X,I4</td></tr>
    2570 <tr><td>GPS Seconds of Week</td><td>120556.0000000 &nbsp; &nbsp;</td><td>1X,F14.7</td></tr>
    2571 
    2572 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    2573 <tr><td><b>Observation Record</b></td><td></td><td></td></tr>
    2574 <tr><td>Mountpoint</td><td>WTZR0</td><td>A</td></tr>
    2575 <tr><td>Satellite Number</td><td>G01</td><td>1X,A3</td></tr>
    2576 
    2577 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    2578 
    2579 <tr><td><u>Pseudo-Range Data</u></td><td></td><td></td></tr>
    2580 <tr><td>Observation Code</td><td><b>C</b>1C</td><td>1X,A3</td></tr>
    2581 <tr><td>Pseudo-Range Observation</td><td>25394034.112</td><td>1X,F14.3</td></tr>
    2582 
    2583 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    2584 
    2585 <tr><td><u>Carrier Phase Data</u></td><td></td><td></td></tr>
    2586 <tr><td>Observation Code</td><td><b>L</b>1C</td><td>1X,A3</td></tr>
    2587 <tr><td>Carrier Phase Observation</td><td>133446552.870</td><td>1X,F14.3</td></tr>
    2588 <tr><td>Lock Time Indicator</td><td>11</td><td>1X,I4</td></tr>
    2589 
    2590 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    2591 
    2592 <tr><td><u>Doppler Data</u></td><td></td><td></td></tr>
    2593 <tr><td>Observation Code</td><td><b>D</b>1C</td><td>1X,A3</td></tr>
    2594 <tr><td>Doppler Observation</td><td>-87.977</td><td>1X,F14.3</td></tr>
    2595 
    2596 <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    2597 
    2598 <tr><td><u>Signal Strength</u></td><td></td><td></td></tr>
    2599 <tr><td>Observation Code</td><td><b>S</b>2W</td><td>1X,A3</td></tr>
    2600 <tr><td>Observed Signal Strength &nbsp; &nbsp;</td><td>34.750</td><td>1X,F8.3</td></tr>
    2601 
     3039<span class="gp">&gt;</span> <span class="m">1884</span> 206011.0000000
     3040<span class="go">...</span>
     3041</pre></div>
     3042</div>
     3043<p>The source code for BNC comes with a Perl script named &#8216;test_tcpip_client.pl&#8217; that allows to read BNC&#8217;s (synchronized or unsynchronized) ASCII observation output from the IP port and print it on standard output for verification.</p>
     3044<p>Note that any socket connection of an application to BNC&#8217;s synchronized or unsynchronized observation ports is recorded in the &#8216;Log&#8217; tab on the bottom of the main window together with a connection counter, resulting in log records like &#8216;New client connection on sync/usync port: # 1&#8217;.</p>
     3045<p>The following figure shows the screenshot of a BNC configuration where a number of streams is pulled from different Ntrip Broadcasters to feed a GNSS engine via IP port output.</p>
     3046<div class="figure" id="id39">
     3047<span id="fig-18"></span><a class="reference internal image-reference" href="_images/fig_18.png"><img alt="_images/fig_18.png" src="_images/fig_18.png" style="width: 1120.0px; height: 749.0px;" /></a>
     3048<p class="caption"><span class="caption-number">Fig. 19 </span><span class="caption-text">Synchronized BNC output via IP port to feed a GNSS real-time engine</span></p>
     3049</div>
     3050<div class="section" id="id6">
     3051<h4>Port - optional<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h4>
     3052<p>BNC can produce synchronized observations in ASCII format on your local host (IP 127.0.0.1) through an IP &#8216;Port&#8217;. Synchronized means that BNC collects all observation data for a specific epoch, which become available within a certain number of seconds (see &#8216;Wait for Full Obs Epoch&#8217; option). It then - epoch by epoch - outputs whatever has been received. The output comes block-wise per stream following the format specified in <a class="reference internal" href="#tab-feed-engine"><span class="std std-numref">Table 6</span></a>. Enter an IP port number here to activate this function. The default is an empty option field, meaning that no synchronized output is generated.</p>
     3053</div>
     3054<div class="section" id="wait-for-full-obs-epoch-mandatory-if-port-is-set">
     3055<h4>Wait for Full Obs Epoch - mandatory if &#8216;Port&#8217; is set<a class="headerlink" href="#wait-for-full-obs-epoch-mandatory-if-port-is-set" title="Permalink to this headline">¶</a></h4>
     3056<p>When feeding a real-time GNSS network engine waiting for synchronized observations epoch by epoch, BNC drops whatever is received later than &#8216;Wait for full obs epoch&#8217; seconds. A value of 3 to 5 seconds could be an appropriate choice for that, depending on the latency of the incoming streams and the delay acceptable for your real-time GNSS product. Default value for &#8216;Wait for full obs epoch&#8217; is 5 seconds.</p>
     3057<p>Note that &#8216;Wait for full obs epoch&#8217; does not affect the RINEX Observation file content. Observations received later than &#8216;Wait for full obs epoch&#8217; seconds will still be included in the RINEX Observation files.</p>
     3058</div>
     3059<div class="section" id="sampling-mandatory-if-file-or-port-is-set">
     3060<h4>Sampling - mandatory if &#8216;File&#8217; or &#8216;Port&#8217; is set<a class="headerlink" href="#sampling-mandatory-if-file-or-port-is-set" title="Permalink to this headline">¶</a></h4>
     3061<p>Select a synchronized observation output sampling interval in seconds. A value of zero &#8216;0&#8217; tells BNC to send/store all received epochs. This is the default value.</p>
     3062</div>
     3063<div class="section" id="file-optional">
     3064<h4>File - optional<a class="headerlink" href="#file-optional" title="Permalink to this headline">¶</a></h4>
     3065<p>Specify the full path to a &#8216;File&#8217; where synchronized observations are saved in plain ASCII format. The default value is an empty option field, meaning that no ASCII output file is created.</p>
     3066<p>Beware that the size of this file can rapidly increase depending on the number of incoming streams. To prevent it from becoming too large, the name of the file can be changed on-the-fly. This option is primarily meant for test and evaluation.</p>
     3067</div>
     3068<div class="section" id="port-unsynchronized-optional">
     3069<h4>Port (unsynchronized) - optional<a class="headerlink" href="#port-unsynchronized-optional" title="Permalink to this headline">¶</a></h4>
     3070<p>BNC can produce unsynchronized observations from all configured streams in ASCII format on your local host (IP 127.0.0.1) through an IP &#8216;Port&#8217;. Unsynchronized means that BNC immediately forwards any received observation to the port. Nevertheless, the output is produced block-wise per stream. Specify an IP port number here to activate this function. The default is an empty option field, meaning that no unsynchronized output is generated.</p></