Index: trunk/BNC/src/bnchelp.html
===================================================================
--- trunk/BNC/src/bnchelp.html	(revision 9847)
+++ trunk/BNC/src/bnchelp.html	(revision 9850)
@@ -117,5 +117,5 @@
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.7 <a href="#sklDir">Skeleton Directory</a><br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.8 <a href="#rnxscript">Script</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.9 <a href="#rnxvers3">Version 3</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.9 <a href="#rnxvers3_4">Version 3 and 4</a><br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.4.10 <a href="#rnxvers2">Version 2</a><br>
 &nbsp; &nbsp; &nbsp; 2.5 <a href="#ephemeris"><b>RINEX Ephemeris</b></a><br>
@@ -594,5 +594,5 @@
 serial or TCP communication link for the purpose of Precise Point Positioning.
 </p>
-<p><img src="IMG/Figure_01.png"width=900/></p>
+<p><img src="IMG/Figure01.png" width="900"></p>
 <p>Figure 1: Flowchart, BNC connected to a GNSS rover for Precise Point Positioning</p>
 <p>
@@ -601,5 +601,5 @@
 <p>
 </p>
-<p><img src="IMG/Figure_02.png"width=900/></p>
+<p><img src="IMG/Figure02.png"width=900/></p>
 <p>Figure 2: Flowchart, BNC converting RTCM streams to RINEX batches</p>
 <p>
@@ -610,5 +610,5 @@
 <p>
 </p>
-<p><img src="IMG/Figure_03.png"width=900/></p>
+<p><img src="IMG/Figure03.png"width=900/></p>
 <p>Figure 3: Flowchart, BNC feeding a real-time GNSS engine and uploading encoded Broadcast Corrections</p>
 <p>
@@ -618,5 +618,5 @@
 <p>
 </p>
-<p><img src="IMG/Figure_04.png"width=900/></p>
+<p><img src="IMG/Figure04.png"width=900/></p>
 <p>Figure 4: Flowchart, BNC combining Broadcast Correction streams</p>
 
@@ -649,5 +649,5 @@
 a 'Streams' section, a section for 'Log' tabs, and a 'Bottom menu bar' section, see figure below.
 </p>
-<p><img src="IMG/Figure_05.png"width=900/></p>
+<p><img src="IMG/Figure05.png"width=900/></p>
 <p>Figure 5: Sections on BNC's main window</p>
 
@@ -808,4 +808,5 @@
 To compile the BNC program, you first download the source code from the SVN repository <a href="http://software.rtcm-ntrip.org/svn/trunk/BNC"
 target="_blank">http://software.rtcm-ntrip.org/svn/trunk/BNC</a>. Go to directory BNC and run the following commands:<br>
+</p>
 <pre>
     qmake bnc.pro
@@ -813,16 +814,18 @@
 </pre>
 You will find a build of BNC in directory BNC.
-</p>
+
 
 <p>
 <b>Mac OS X Systems</b><br>
+</p>
 
 <u>Xcode and Qt Installation</u><br>
+<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 '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.
 </p>
 
-<p>
 <u>Compiling BNC</u><br>
+<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 '-spec macx-g++' option which makes it possible to use qmake to create a Makefile to
@@ -840,10 +843,15 @@
 <p>
 <u>Bundle Deployment</u><br>
+</p>
+<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 bnc.app is located.
+</p>
+
 <pre>
    macdeployqt bnc.app -dmg
 </pre>
+<p>
 Refer to the following webpage for further information: <a href="http://doc.qt.io/qt-4.8/deployment-mac.html"
 target="_blank">http://doc.qt.io/qt-4.8/deployment-mac.html</a>.
@@ -870,11 +878,11 @@
 </p>
 
-<ol type="1">
+<ul>
   <li>GUI, input fields level</li>
   <li>Active configuration level</li>
   <li>Configuration file, disk level</li>
-</ol>
-
-<p><img src="IMG/Figure_06.png"width=900/></p>
+</ul>
+
+<p><img src="IMG/Figure06.png"width=900/></p>
 <p>Figure 6: Management of configuration options in BNC:<br>
 <table>
@@ -885,5 +893,9 @@
 
 <p>
-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:
+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:
+</p>
 <ul>
   <li>Active configuration options (2) are independent from GUI input fields and configuration file content.</li>
@@ -896,5 +908,5 @@
   <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>
 </ul>
-</p>
+
 
 <p><h4 id="introExamples">1.6.1 Examples</h4></p>
@@ -917,5 +929,7 @@
 
 <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 '.bnc'. The following describes what to do on MS Windows systems to associate the BNC program to such configuration files:
+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:
 </p>
 
@@ -961,157 +975,172 @@
 
 <ol type="1">
-<li>Configuration File 'RinexObs.bnc'<br>
-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 href="http://igs.bkg.bund.de/ntrip/observations" target="_blank">http://igs.bkg.bund.de/ntrip/observations</a> for observation
-stream resources.
+<li> Configuration File 'RinexObs.bnc'<br>
+Purpose: Convert RTCM streams to RINEX Observation files.
+The configuration pulls RTCM Version 3 streams from Ntrip Broadcasters using
+Ntrip Version 2 to generate 15min 1Hz RINEX Version 4 Observation files.
+See <a href="https://igs.bkg.bund.de/ntrip/#rtcm-obs" target="_blank">https://igs.bkg.bund.de/ntrip/#rtcm-obs</a>
+for observation stream resources.
 </li>
 
 <li>Configuration File 'RinexEph.bnc'<br>
-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 href="http://igs.bkg.bund.de/ntrip/ephemeris" target="_blank">http://igs.bkg.bund.de/ntrip/ephemeris</a>
+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
+4 Navigation files. See <a href="https://igs.bkg.bund.de/ntrip/#rtcm-eph" target="_blank">https://igs.bkg.bund.de/ntrip/#rtcm-eph</a>
 for further real-time Broadcast Ephemeris resources.
 </li>
 
 <li>Configuration File 'BrdcCorr.bnc'<br>
-Purpose: Save Broadcast Corrections from RTCM SSR messages in hourly plain ASCII files.
-See <a href="http://igs.bkg.bund.de/ntrip/orbits" target="_blank">http://igs.bkg.bund.de/ntrip/orbits</a>
- for various real-time IGS or EUREF orbit/clock correction products.
+Purpose: Save Broadcast Corrections from RTCM SSR messages in hourly plain
+ASCII files. See <a href="https://igs.bkg.bund.de/ntrip/#rtcm-corr" target="_blank">https://igs.bkg.bund.de/ntrip/#rtcm-corr</a>
+for various real-time IGS or EUREF orbit/clock correction products.
 </li>
 
 <li>Configuration File 'RinexConcat.bnc'<br>
-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 'RINEX Editing & QC' in the documentation for
-examples on how to call BNC from command line in 'no window' mode for RINEX file editing, concatenation and quality check.
+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 'RINEX Editing & QC' in the documentation for examples on
+how to call BNC from command line in 'no window' mode for RINEX file editing,
+concatenation and quality check.
 </li>
 
 <li>Configuration File 'RinexQC.bnc'<br>
-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 'RINEX Editing & QC' in the documentation for examples on how to call BNC from command
-line in 'no window' mode for RINEX file editing, concatenation and quality check.
+Purpose: Check the quality of a RINEX Version 4 file by means of a multipath
+analysis. Results are saved on disk in terms of a plot in PNG format. See
+section 'RINEX Editing & QC' in the documentation for examples on how to call
+BNC from command line in 'no window' mode for RINEX file editing, concatenation
+and quality check.
 </li>
 
 <li>Configuration File 'RTK.bnc'<br>
-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's logfile.
+Purpose: Feed a serial 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's logfile.
 </li>
 
 <li>Configuration File 'FeedEngine.bnc'<br>
-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.
+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.
 </li>
 
 <li>Configuration File 'PPP.bnc'<br>
-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.
+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.
+More detailed PPP results are saved in the PPP logfile.
 </li>
 
 <li>Configuration File 'PPPNet.bnc'<br>
-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.
+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.
+Detailed PPP Results for the two stations are saved in PPP logfiles.
 </li>
 
 <li>Configuration File 'PPPQuickStart.bnc'<br>
-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.
+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.
 </li>
 
 <li>Configuration File 'PPPPostProc.bnc'<br>
-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.
+Purpose: Precise Point Positioning in post processing mode. BNC reads RINEX
+Version 3 Observation and Navigation files and a Broadcast Correction file.
+Optionally, an Ionosphere file containing VTEC informations can be used. If such
+a file is not specified, VTEC informations from the Broadcast Corrections file
+are used. 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.
 </li>
 
-<li>Configuration File 'PPPGoogleMaps.bnc'<br>
-Purpose: Track BNC'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
-'Standard Point Positioning' 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 'Open Map'
-to open the track map, then hit 'Start' to visualize receiver positions on top of GM/OSM maps.
+<li>Configuration File 'PPPOsm.bnc'<br>
+Purpose: Track BNC's point positioning solutions using OpenStreetMap as background.
+BNC reads a RINEX Observation file and a RINEX Navigation file to carry out
+a 'Standard Point Positioning' 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 'Open Map'
+to open the track map, then hit 'Start' to visualize receiver positions on top
+of OSM maps.
 </li>
 
 <li>Configuration File 'SPPQuickStartGal.bnc'<br>
-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.
+Purpose: Single Point Positioning in Quick-Start mode from observations of a
+static receiver with quite precisely known position. The configuration uses
+Galileo observations only and a Broadcast Ephemeris stream.
 </li>
 
 <li>Configuration File 'SaveSp3.bnc'<br>
-Purpose: Produces SP3 files from a Broadcast
-Ephemeris stream and a Broadcast Correction stream. The Broadcast Correction
-stream is formally introduced in BNC's 'Combine Corrections' table. Note that
-producing SP3 requires an ANTEX file because SP3 file content should be
-referred to CoM.
+Purpose: Produces SP3 files from a Broadcast Ephemeris stream and a Broadcast
+Correction stream. The Broadcast Correction stream is formally introduced in
+BNC's 'Combine Corrections' table. Note that producing SP3 requires an ANTEX
+file because SP3 file content should be referred to CoM..
 </li>
 
 <li>Configuration File 'Sp3ETRF2000PPP.bnc'<br>
-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's 'Combine
-Corrections' 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 'INTERNAL' PPP solution
-with a known ETRF2000 reference coordinate.
+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's 'Combine Corrections' 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 'INTERNAL' PPP solution with a known ETRF2000
+reference coordinate.
 </li>
 
 <li>Configuration File 'Upload.bnc'<br>
-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 IGS14. Orbits are saved on disk
-in SP3 format and clocks are saved in Clock RINEX format.
+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
+IGS-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 IGS14. Orbits are saved on disk in SP3 format and clocks
+are saved in Clock RINEX format.
 </li>
 
 <li>Configuration File 'Combi.bnc'<br>
-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 IGS14. Orbits are saved in SP3
-format (referred to CoM) and clocks in Clock RINEX format.
+Purpose: Pull 2 streams carrying Broadcast Corrections, and Satellite Code Biases
+together with Broadcast Ephemeris from an Ntrip Broadcaster
+to produce a combined Broadcast Correction stream.
+BNC encodes the combination product in IGS-SSR messages and uploads them 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 IGS14. Orbits are saved in SP3 format
+(referred to CoM) and clocks in Clock RINEX format.
 </li>
 
 <li>Configuration File 'CombiPPP.bnc'<br>
-Purpose: This configuration equals the 'Combi.bnc' configuration. However, the combined
-Broadcast Corrections are in addition used for an 'INTERNAL' 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.
+Purpose: This configuration equals the 'Combi.bnc' configuration. However, the
+combined Broadcast Corrections are in addition used for an 'INTERNAL' PPP
+solutions 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.
 </li>
 
 <li>Configuration File 'UploadEph.bnc'<br>
-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.
+Purpose: Pull a number of streams from reference stations to get the
+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.
 </li>
 
 <li>Configuration File 'CompareSp3.bnc'<br>
-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.
+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.
 </li>
 
 <li>Configuration File 'Empty.bnc'<br>
-Purpose: Provide an empty example configuration file for
-BNC which only contains default settings.
+Purpose: Provide an empty example configuration file for BNC which only
+contains the default settings.
 </li>
 
@@ -1126,7 +1155,7 @@
 <li>Shell Script 'RinexQC.sh'<br>
 Purpose: Equals configuration file example 'RinexQC.bnc', checks the quality of
-a RINEX Version 3 file by means of a multipath analysis. Virtual X-Server
-'Xvfb' is operated while producing plot files in PNG format. BNC is offline. All
-results are saved on disk.
+a RINEX Version 4 file by means of a multipath analysis. The platform offscreen
+is used while producing plot files in PNG format. BNC is offline.
+All results are saved on disk.
 </li>
 
@@ -1134,5 +1163,6 @@
 Purpose: Equals configuration file example 'RinexConcat.bnc', 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.
+name in the file header. The sampling interval is set to 30 seconds. BNC is
+offline.
 </li>
 
@@ -1141,7 +1171,8 @@
 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's terminated after 10 seconds. See <a href="http://igs.bkg.bund.de/ntrip/ephemeris"
-target="_blank">http://igs.bkg.bund.de/ntrip/ephemeris</a> for further real-time Broadcast Ephemeris resources.
+real-time EUREF and IGS networks and saves hourly RINEX Version 4 Navigation
+files. BNC runs online until it's terminated after 10 seconds.
+See <a href="https://igs.bkg.bund.de/ntrip/#rtcm-eph" target="_blank">https://igs.bkg.bund.de/ntrip/#rtcm-eph</a>
+for further real-time Broadcast Ephemeris resources.
 </li>
 
@@ -1156,7 +1187,8 @@
 Purpose: Equals configuration file example 'RinexObs.bnc', 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 href="http://igs.bkg.bund.de/ntrip/observations" target="_blank">http://igs.bkg.bund.de/ntrip/observations</a> for
-observation stream resources. BNC runs online until it's terminated after 30
+Ntrip Broadcasters using Ntrip Version 2 to generate 15min 1Hz RINEX Version 4
+Observation files.
+See <a href="https://igs.bkg.bund.de/ntrip/#rtcm-obs" target="_blank">https://igs.bkg.bund.de/ntrip/#rtcm-obs</a>
+for observation stream resources. BNC runs online until it's terminated after 30
 seconds.
 </li>
@@ -1168,5 +1200,10 @@
 <ol start="27">
 <li>Shell Script 'CompareSp3.sh'<br>
-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.
+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.
 </li>
 </ol>
@@ -1193,8 +1230,7 @@
 <li>
 EUREF as well as IGS adhere to an open data policy. Streams are made available through Ntrip Broadcasters at
-<a href="http://euref-ip.net/home" target="_blank">http://euref-ip.net/home</a>,
- <a href="http://igs-ip.net/home" target="_blank">http://igs-ip.net/home</a>,
- <a href="http://products.igs-ip.net/home" target="_blank">http://products.igs-ip.net/home</a> and
- <a href="http://mgex.igs-ip.net/home" target="_blank">http://mgex.igs-ip.net/home</a>
+ <a href="http://euref-ip.net/home" target="_blank">http://euref-ip.net/home</a>,
+ <a href="http://igs-ip.net/home" target="_blank">http://igs-ip.net/home</a> and
+ <a href="http://products.igs-ip.net/home" target="_blank">http://products.igs-ip.net/home</a>
  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>
@@ -1238,8 +1274,5 @@
 
 <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>
-<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Ã¼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.
+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>
 
@@ -1261,4 +1294,5 @@
 <p>
 The 'File' button lets you
+</p>
 <ul>
   <li>Select an appropriate font.<br>
@@ -1270,5 +1304,5 @@
   <li>Quit the BNC program.</li>
 </ul>
-</p>
+
 
 <p><h4 id="help">2.1.2 Help</h4></p>
@@ -1276,4 +1310,5 @@
 <p>
 The 'Help' button provides access to
+</p>
 <ul>
   <li>Help contents.<br>You may keep the 'Help Contents' window open while configuring BNC.</li>
@@ -1281,5 +1316,4 @@
   <li>General information about BNC.<br>Close the 'About BNC' window to continue working with BNC.</li>
 </ul>
-</p>
 
 <p><h4 id="network">2.2 Network</h4></p>
@@ -1314,5 +1348,5 @@
 </p>
 
-<p><img src="IMG/screenshot40.png"/></p>
+<p><img src="IMG/Figure07.png"/></p>
 <p>Figure 7: BNC's 'Network' panel configured to ignore eventually occurring SSL error messages</p>
 
@@ -1327,24 +1361,25 @@
 </p>
 <p>
-The following is an example for the content of a logfile written by BNC when operated in Single Point Positioning (SPP) mode:
-</p>
-<pre>
-15-06-30 11:40:17 ========== Start BNC v2.12 (MAC) ==========
-15-06-30 11:40:17 Panel 'PPP' active
-15-06-30 11:40:17 CUT07: Get data in RTCM 3.x format
-15-06-30 11:40:17 RTCM3EPH: Get data in RTCM 3.x format
-15-06-30 11:40:17 Configuration read: PPP.conf, 2 stream(s)
-
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
+The following is an example for the content of a logfile written by BNC when operated in Precise Point Positioning (PPP) mode:
+</p>
+<pre>
+22-10-04 19:53:57 ========== Start BNC v2.13 (LINUX) ==========
+22-10-04 19:53:57 Panel 'PPP' active
+22-10-04 19:53:57 WTZR00DEU0: Get data in RTCM 3.x format
+22-10-04 19:53:57 BCEP00BKG0: Get data in RTCM 3.x format
+22-10-04 19:53:58 SSRA00BKG1: Get data in RTCM 3.x format
+22-10-04 19:53:58 Configuration read: 08_PPP.bnc, 3 stream(s)
+22-10-04 19:53:58 BCEP00BKG0: UNHEALTHY EPH G28 LNAV: 2022 10 04 20 00 00
+22-10-04 19:54:13 2022-10-04_19:53:59.000 WTZR00DEU0 X = 4075580.5340 Y = 931854.3984 Z = 4801568.4250 NEU:  -0.1623  +0.2450  +0.2991 TRP:  +2.1833  +0.0002
+22-10-04 19:54:13 2022-10-04_19:54:00.000 WTZR00DEU0 X = 4075580.5393 Y = 931854.4017 Z = 4801568.4126 NEU:  -0.1748  +0.2471  +0.2936 TRP:  +2.1833  +0.0002
+22-10-04 19:54:14 2022-10-04_19:54:01.000 WTZR00DEU0 X = 4075580.4979 Y = 931854.4015 Z = 4801568.3441 NEU:  -0.1891  +0.2560  +0.2153 TRP:  +2.1833  +0.0004
+22-10-04 19:54:14 2022-10-04_19:54:02.000 WTZR00DEU0 X = 4075580.4871 Y = 931854.4003 Z = 4801568.3157 NEU:  -0.1995  +0.2573  +0.1868 TRP:  +2.1833  +0.0007
+22-10-04 19:54:14 2022-10-04_19:54:03.000 WTZR00DEU0 X = 4075580.4698 Y = 931854.3966 Z = 4801568.3005 NEU:  -0.1961  +0.2575  +0.1637 TRP:  +2.1833  +0.0009
+22-10-04 19:54:14 2022-10-04_19:54:04.000 WTZR00DEU0 X = 4075580.4598 Y = 931854.3940 Z = 4801568.2881 NEU:  -0.1964  +0.2573  +0.1476 TRP:  +2.1833  +0.0010
+22-10-04 19:54:18 2022-10-04_19:54:05.000 WTZR00DEU0 X = 4075580.4625 Y = 931854.3971 Z = 4801568.2917 NEU:  -0.1966  +0.2597  +0.1525 TRP:  +2.1833  +0.0012
+22-10-04 19:54:18 2022-10-04_19:54:06.000 WTZR00DEU0 X = 4075580.4587 Y = 931854.3966 Z = 4801568.2912 NEU:  -0.1940  +0.2600  +0.1496 TRP:  +2.1833  +0.0014
+22-10-04 19:54:18 2022-10-04_19:54:07.000 WTZR00DEU0 X = 4075580.4539 Y = 931854.3931 Z = 4801568.2818 NEU:  -0.1960  +0.2577  +0.1389 TRP:  +2.1833  +0.0018
+22-10-04 19:54:18 2022-10-04_19:54:08.000 WTZR00DEU0 X = 4075580.4502 Y = 931854.3946 Z = 4801568.2757 NEU:  -0.1975  +0.2599  +0.1321 TRP:  +2.1833  +0.0021
+22-10-04 19:54:18 2022-10-04_19:54:09.000 WTZR00DEU0 X = 4075580.4478 Y = 931854.3958 Z = 4801568.2737 NEU:  -0.1973  +0.2617  +0.1293 TRP:  +2.1833  +0.0023
 ...
 </pre>
@@ -1389,9 +1424,9 @@
 Data will be saved in blocks in the received format separated by ASCII time stamps like (example):
 <pre>
-   2010-08-03T18:05:28 RTCM3EPH RTCM_3 67
-</pre>
-</p>
-<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 GPS Time on 2010-08-03. BNC adds its own time stamps in order to allow the reconstruction of a recorded real-time situation.
+   2022-10-04T20:07:31 WTZR00DEU0 RTCM_3.3 202
+</pre>
+</p>
+<p>
+This example block header tells you that 202 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 WTZR00DEU0 and was received at 20:07:31 GPS Time on 2022-10-04. BNC adds its own time stamps in order to allow the reconstruction of a recorded real-time situation.
 </p>
 <p>
@@ -1401,39 +1436,40 @@
 <p><h4 id="rinex">2.4 RINEX Observations</h4></p>
 <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 '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.
-</p>
-<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 "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:
-</p>
-<pre>
-C    9 C2I L2I S2I C6I L6I S6I C7I L7I S7I                  SYS / # / OBS TYPES
-E   12 C1X L1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X      SYS / # / OBS TYPES
-G   15 C1C L1C S1C C1W L1W S1W C2X L2X S2X C2W L2W S2W C5X  SYS / # / OBS TYPES
-       L5X S5X                                              SYS / # / OBS TYPES
-J   24 C1C L1C S1C C1S L1S S1S C1L L1L S1L C1X L1X S1X C2S  SYS / # / OBS TYPES
-       L2S S2S C2L L2L S2L C2X L2X S2X C5X L5X S5X          SYS / # / OBS TYPES
-R   12 C1C L1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P      SYS / # / OBS TYPES
-S    9 C1C L1C S1C C5I L5I S5I C5Q L5Q S5Q                  SYS / # / OBS TYPES
-</pre>
-
-<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>
-<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 '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.
-</p>
-
-<p><img src="IMG/screenshot16.png"/></p>
-<p>Figure 8: BNC translating incoming observation streams to 15 min RINEX Version 3 Observation files</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, BDS, SBAS, QZSS, and/or IRNSS. 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.
+</p>
+<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 "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.
+<p>
+Please note that RTCM Version 3 messages 1084 (MSM4) 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,
+such as the GLONASS ephemeris messages 1020. The GLONASS channel number is available as extended information within MSM5/7 messages.
+</p>
+<p>
+The screenshot below shows an example setup of BNC when converting streams to RINEX. Streams are coming from Ntrip Broadcaster
+<a href="http://igs-ip.net:2101" target="_blank">http://igs-ip.net:2101</a>.
+Specifying a decoder string 'ZERO' would mean to not convert the affected stream but save its content as received.
+On Wed Oct  5 2022 that would result for the Mountpoint 'FFMJ00DEU0' into a file named 'FFMJ00DEU0_221005'.
+</p>
+
+<p><img src="IMG/Figure08.png"/></p>
+<p>Figure 8: BNC translating incoming observation streams to 15 min RINEX Version 4 Observation files</p>
 
 <p><h4 id="rnxname">2.4.1 RINEX Filenames</h4></p>
 <p>
-The default for RINEX filenames in BNC follows the convention of RINEX Version 3. However, the software provides options to alternatively follow the filename convention of RINEX Version 2.
-</p>
-
-<p>
-In case of RINEX Version 3 filenames, the following convention holds:
-
-<p>
+The RINEX filenames generated by BNC depend on the chosen RINEX format.
+The following convention holds in case of RINEX Version 3 and RINEX Version 4 filenames:
+</p>
+
 <table>
   <tr><td><b>Filename Parameter&nbsp; &nbsp;</b></td><td><b>&nbsp;# Char.</b></td><td><b>&nbsp; Meaning</b></td></tr>
@@ -1447,11 +1483,14 @@
   <tr><td>Compression</td><td>&nbsp; 2-3</td><td>&nbsp; Compression method (optional)</td></tr>
 </table>
-</p>
-<p>
-Example for Mixed RINEX Version 3 GNSS observation filename, file containing 1 hour of data, one observation every second, 'MO' standing for 'Mixed Observations':
-<pre>
-   ALGO00CAN_R_20121601000_01H_01S_MO.rnx
-</pre>
-</p>
+
+<p>
+Examples (Figure 8) for Mixed RINEX Version 4 GNSS observation filenames, files containing 15 minutes of data,
+one observation every second, 'MO' standing for 'Mixed Observations':
+</p>
+<pre>
+   FFMJ00DEU_S_20222781400_15M_01S_MO.rnx
+   CUT000AUS_S_20222781400_15M_01S_MO.rnx
+</pre>
+
 <p>
 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.
@@ -1459,42 +1498,31 @@
 
 <p>
-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>
-
-<pre>
-   FRAN{ddd}{h}.{yy}O
-   WETT{ddd}{h}.{yy}O
-</pre>
-<p>
-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.
-</p>
-<p>
-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>
-<pre>
-   FRAN{ddd}{h}_KFURT.{yy}O
-   FRAN{ddd}{h}_CE.{yy}O
-</pre>
-<p>
-If several streams show up with exactly the same mountpoint name (example: BRUS0 from <u>euref-ip.net</u> and BRUS0 from <u>igs-ip.net</u>), BNC adds an integer number to the filename, leading e.g. to hourly RINEX Version 2 Observation files like</p>
-<pre>
-   BRUS{ddd}{h}_0.{yy}O
-   BRUS{ddd}{h}_1.{yy}O
-</pre>
-<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>
-<pre>
-   FRAN{ddd}{h}{mm}.{yy}O
-</pre>
-<p>
-where 'mm' is the starting minute within the hour.
+RINEX Version 2 filenames are derived from the first 4 characters of the corresponding stream's mountpoint (4-Char Station ID).
+For example, data from mountpoints FFMJ00DEU0 and CUT000AUS0 will have 15-minutes RINEX Observation files named
+</p>
+<pre>
+   FFMJ278O00.22O
+   CUT0278O00.22O
+</pre>
+
+<p>
+The RINEX version 2 filneme convention can be summrized as follows:
+<pre>
+   {4-Char-Station-ID}{ddd}{h}{mm}.{yy}O
+</pre>
+where 'ddd' is the day of year, 'h' is a letter which corresponds to an hour long UTC time block,
+'mm' is the starting minute within the hour. and 'yy' is the year.
 </p>
 
 <p><h4 id="rnxdir">2.4.2 Directory - optional</h4></p>
 <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 'Directory' is an empty option field, meaning that no RINEX Observation files will be written.
+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.
 </p>
 
 <p><h4 id="rnxinterval">2.4.3 File Interval - mandatory if 'Directory' is set</h4></p>
 <p>
-Select the length of the RINEX Observation file to be generated. The default value is 15 minutes.
+Select the length of the RINEX Observation file to be generated. The default value is 1 day.
 </p>
 
@@ -1516,43 +1544,43 @@
 </p>
 <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 'Directory' with a 'Skeleton extension' suffix is interpreted by BNC as a personal RINEX header skeleton file for the corresponding stream.
-</p>
-<p>
-When producing RINEX Observation files from mountpoints (examples) 'BRUX00BEL0', 'WTZR_RTCM3', and 'BRUX0', the following skeleton filenames would be accepted
-</p>
-<pre>
-   BRUX00BEL.skl (9 char corresponding to RINEX version 3)
-   WTZR_RTCM.skl (9 char corresponding to RINEX version 3)
-   BRUX.skl      (4 char corresponding to RINEX version 2)
-</pre>
-<p>
-if 'Skeleton extension' is set to 'skl'.
+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.
+</p>
+<p>
+When producing RINEX Observation files from mountpoints like 'BRUX00BEL0', 'WTZR_RTCM3', and 'BRUX0', the following skeleton filenames would be accepted
+</p>
+<pre>
+   BRUX00BEL.skl (9 char corresponding to RINEX version 3,4)
+   WTZR_RTCM.skl (9 char corresponding to RINEX version 3,4)
+   BRUX.skl (4 char corresponding to RINEX version 2)
+</pre>
+<p>
+if 'Skeleton extension' is set to 'skl'. As an alternative the basename is tried to use with lower cases as well.
 </p>
 <p>
 Note the following regulations regarding personal RINEX header skeleton files:
-<ul>
-  <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>
-  <li>Personal skeletons should contain a complete first header record of type<br>
-      - &nbsp; RINEX VERSION / TYPE<br></li>
-  <li>They should then contain an empty header record of type
-      <br>- &nbsp; PGM / RUN BY / DATE<br>BNC will complete this line and include it in the RINEX file header.</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.
+<ul>
+  <li>Personal skeletons should contain a complete first header record of type 'RINEX VERSION / TYPE'</li>
+  <li>They should then contain an empty header record of type 'PGM / RUN BY / DATE' which will be completed by BNC and included in the RINEX file header.</li>
   <li>They should further contain complete header records of type
-      <br>- &nbsp; MARKER NAME
-      <br>- &nbsp; OBSERVER / AGENCY
-      <br>- &nbsp; REC # / TYPE / VERS
-      <br>- &nbsp; ANT # / TYPE
-      <br>- &nbsp; APPROX POSITION XYZ
-      <br>- &nbsp; ANTENNA: DELTA H/E/N
-      <br>- &nbsp; WAVELENGTH FACT L1/2 (RINEX Version 2)
-      <br>- &nbsp; SYS / # / OBS TYPES (for RINEX Version 3 files, will be ignored in Version 2 files)</li>
+      <br> &nbsp; 'MARKER NAME'
+      <br> &nbsp; 'OBSERVER / AGENCY'
+      <br> &nbsp; 'REC # / TYPE / VERS'
+      <br> &nbsp; 'ANT # / TYPE'
+      <br> &nbsp; 'APPROX POSITION XYZ'
+      <br> &nbsp; 'ANTENNA: DELTA H/E/N'
+      <br> &nbsp; 'WAVELENGTH FACT L1/2 for RINEX Version 2 files
+      <br> &nbsp; 'SYS / # / OBS TYPES' for RINEX Version 3 files, will be ignored in Version 2 files</li>
   <li>They may contain any other optional complete header record as defined in the RINEX documentation.</li>
-  <li>They should also contain an empty header record of type
-     <br>- &nbsp; # / TYPES OF OBSERV (only RINEX Version 2, will be ignored when in Version 3 files)
-     <br>BNC will include these lines in the final RINEX file header together with an additional
-     <br>- &nbsp; COMMENT
-     <br>line describing the source of the stream.</li>
-  <li>They should finally contain an empty last header record of type
-    <br>- &nbsp; END OF HEADER</li>
-<li>They must not contain a header record of type<br>- &nbsp; TIME OF FIRST OBS</li>
+  <li>They should also contain an empty header record of type '# / TYPES OF OBSERV'. It will be used in RINEX Version 2 files and ignored in Version 3 files.
+  <li>BNC will include these lines in the final RINEX file header together with an additional 'COMMENT'-line describing the source of the stream.</li>
+  <li>Personal skeletons  must not contain a header record of type 'TIME OF FIRST OBS'</li>
+  <li>They should finally contain an empty last header record of type 'END OF HEADER'</li>
+
 
 </ul>
@@ -1563,27 +1591,30 @@
 The following is a skeleton example for a RINEX file:
 </p>
-<p>
-<pre>
-                    OBSERVATION DATA    M (MIXED)           RINEX VERSION / TYPE
-                                                            PGM / RUN BY / DATE
-CUT0                                                        MARKER NAME
+
+
+<pre><p style="font-family:Monospace">
+                    OBSERVATION DATA    M                   RINEX VERSION / TYPE
+PORTIONS OF THIS HEADER GENERATED BY BKG AT 05-Oct-22 04:51 COMMENT
+ FROM SITELOG CUT000AUS_20201020.log                        COMMENT
+OBS TYPES from www.igs-ip.net/CUT000AUS0                    COMMENT
+CUT000AUS                                                   MARKER NAME
 59945M001                                                   MARKER NUMBER
-5023K67889          TRIMBLE NETR9       5.01                REC # / TYPE / VERS
+                    CUT                                     OBSERVER / AGENCY
+5023K67889          TRIMBLE NETR9       5.45                REC # / TYPE / VERS
 4928353386          TRM59800.00     SCIS                    ANT # / TYPE
  -2364337.2699  4870285.5624 -3360809.8398                  APPROX POSITION XYZ
         0.0000        0.0000        0.0000                  ANTENNA: DELTA H/E/N
-gnss@curtin.edu.au  CUT                                     OBSERVER / AGENCY
-C   10 C1I L1I D1I S1I C6I L6I S6I C7I L7I S7I              SYS / # / OBS TYPES
-E   13 C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X  SYS / # / OBS TYPES
 G   13 C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X  SYS / # / OBS TYPES
-J   19 C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X  SYS / # / OBS TYPES
-       C5X L5X S5X C6L L6L S6L                              SYS / # / OBS TYPES
 R   13 C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P  SYS / # / OBS TYPES
-S    7 C1C L1C D1C S1C C5I L5I S5I                          SYS / # / OBS TYPES
-PORTIONS OF THIS HEADER GENERATED BY THE IGS CB FROM        COMMENT
-SITELOG cut0_20150507.log                                   COMMENT
+E   13 C1X L1X D1X S1X C7X L7X S7X C8X L8X S8X C5X L5X S5X  SYS / # / OBS TYPES
+J   10 C1C L1C D1C S1C C2X L2X S2X C5X L5X S5X              SYS / # / OBS TYPES
+C   10 C2I L2I D2I S2I C6I L6I S6I C7I L7I S7I              SYS / # / OBS TYPES
+ 22 R01  1 R02 -4 R03  5 R04  6 R05  1 R06 -4 R07  5 R08  6 GLONASS SLOT / FRQ #
+    R09 -2 R10 -7 R11  0 R12 -1 R13 -2 R14 -7 R15  0 R17  4 GLONASS SLOT / FRQ #
+    R18 -3 R19  3 R20  2 R21  4 R23  3 R24  2               GLONASS SLOT / FRQ #
                                                             END OF HEADER
-</pre>
-<p>
+</p>
+</pre>
+
 
 <p><h4 id="sklMandat">2.4.6 Skeleton Mandatory - optional</h4></p>
@@ -1611,24 +1642,33 @@
 </p>
 
-<p><h4 id="rnxvers3">2.4.9 Version 3 - optional</h4></p>
-<p>
-The default format for RINEX Observation files is RINEX Version 3. There is nothing to activate in addition to save RTCM Version 3 observation streams in RINEX Version 3 format.
-</p>
-
-<p>
-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><h4 id="rnxvers3_4">2.4.9 Version 3 and 4 - optional</h4></p>
+<p>
+Currently, the default format for RINEX Observation files is RINEX Version 3.
+RINEX version 4 can be chosen as well. The resulting observation files are backward compatible to RINEX version 3.
+</p>
+<p>
+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>
 
 <p><h4 id="rnxvers2">2.4.10 Version 2 - optional</h4></p>
 <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 can be setup to produce data files in RINEX Version 2.11 format:
+GNSS observation data are generally hold available within BNC according to attributes as defined in RINEX Version 3 or 4.
+These attributes describe the tracking mode or channel when generating the observation signals.
+Capital letters specifying signal generation attributes are e.g. A, B, C, D, E, I, L, M, N, P, Q, S, W, X, Y, or Z, see RINEX Version 3 and 4 documentation.
+Nevertheless, there are two applications where the program can be setup to produce data files in RINEX Version 2.11 format:
 <ol type="1">
 <li>When saving the content of incoming observation streams in RINEX Version 2 files as described in this section.</li>
-<li>When editing or concatenating RINEX 3 files to save them in Version 2 format, see section on 'RINEX Editing & QC'.</li>
+<li>When editing or concatenating RINEX version 3/4 files to save them in Version 2 format, see section on 'RINEX Editing & QC'.</li>
 </ol>
-Select RINEX 'Version 2' if you would like to save RTCM Version 3 observation streams in RINEX Version 2 format. 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.
-</p>
-<p>
-Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:</li>
+Select RINEX 'Version 2' if you would like to save RTCM Version 3 observation streams in RINEX Version 2 format.
+As the Version 2 format ignores signal generation attributes, BNC is forced to somehow map RINEX Version 3/4 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/4 to Version 2.
+</p>
+<p>
+Signal priorities can be specified as equal for all systems, as system specific or as system and frequency specific. For example:
+</p>
 <ul>
 <li>'CWPX_?' (General signal priorities valid for all GNSS)</li>
@@ -1636,16 +1676,16 @@
 <li>'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities)</li>
 </ul>
-</p>
+
 <p>
 The default 'Signal priority' list is defined as follows:
 <ul>
- <li>'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX'</li>
+ <li>'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX'</li>
 </ul>
 
 As an example the 'Signal priority' of 'CWPX_?' is explained in more detail:
 <ul>
-<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>
+<li>Signals with attribute 'C' enjoy the highest priority. If such a RINEX Version 3/4 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>
 <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>
-<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>
+<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/4. Hence the underscore character makes only sense in a few very special cases.</li>
 <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>
 </ul>
@@ -1653,5 +1693,5 @@
 
 <p>
-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.
+You may like to specify your own 'Signal priority' string(s) for producing RINEX Version 2 files.
 </p>
 
@@ -1659,26 +1699,27 @@
 <p>
 Broadcast Ephemeris can be saved in RINEX Navigation files when received e.g. via RTCM Version 3 message types:
+</p>
 <ul>
 <li> 1019 (GPS) or </li>
 <li> 1020 (GLONASS) or </li>
+<li> 1041 (IRNSS) or </li>
+<li> 1042 (BDS/BeiDou) or </li>
+<li> 1043 (SBAS) or </li>
 <li> 1044 (QZSS) or </li>
-<li> 1043 (SBAS) or </li>
 <li> 1045 (Galileo F/NAV) or </li>
-<li> 1046 (Galileo I/NAV) or </li>
-<li> 1042 (BDS/BeiDou) or </li>
-<li> 1041 (IRNSS). </li>
-</ul>
-</p>
+<li> 1046 (Galileo I/NAV). </li>
+</ul>
  <p> The filename convention follows the details given in section 'RINEX Filenames' except that the first four characters are 'BRDC'.
 </p>
 <p>
-Regarding RINEX Version 3 you will find all ephemeris data for GPS, GLONASS, Galileo, SBAS, QZSS, BDS, and IRNSS gathered in one Navigation file.
-</p>
-<p>
-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.
-<pre>
-   BRDC00DEU_S_20121600000_01D_MN.rnx
-</pre>
-</p>
+Regarding RINEX Version 3/4 you will find all ephemeris data for GPS, GLONASS, Galileo, SBAS, QZSS, BDS, and IRNSS gathered in one Navigation file.
+</p>
+<p>
+The following is an example for a RINEX Version 3/4 Navigation filename. The file contains one hour's data. 'MN' stands for 'Multi Constellation Navigation' data.
+</p>
+<pre>
+   BRDC00WRD_S_20222791000_01H_MN.rnx
+</pre>
+
 
 <p>
@@ -1687,5 +1728,5 @@
 
 <p>
-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.
+Note further that BNC will ignore incorrect or outdated Broadcast Ephemeris data, leaving a note 'WRONG EPHEMERIS' or 'OUTDATED EPHEMERIS' in the logfile.
 </p>
 
@@ -1710,8 +1751,10 @@
 <p><h4 id="ephvers">2.5.4 Version - optional</h4></p>
 <p>
-Default format for RINEX Navigation files containing Broadcast Ephemeris is RINEX Version 3. Select 'Version 2' if you want to save the ephemeris data in RINEX Version 2.11 format.
-</p>
-<p>
-Note that this does not concern the Broadcast Ephemeris output through IP port, which is always in RINEX Version 3 format.
+Default format for RINEX Navigation files containing Broadcast Ephemeris is RINEX Version 3, saving the ephemeris data in RINEX Version 3.05.
+Select 'Version 2' if you want to save the ephemeris data in RINEX Version 2.11 format.
+Select 'Version 4' if you want to save the ephemeris data in RINEX Version 4.x format.
+</p>
+<p>
+Note that the here choosen Version concerns the Broadcast Ephemeris output through IP port as well.
 </p>
 
@@ -1761,214 +1804,288 @@
 
 <p>
-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:
-<pre>
-QC Format Version  : 1.1
-
-Navigation File(s) : BRDC2520.15P
-Ephemeris          : 2985 OK   0 BAD
-
-Observation File   : CUT02520.15O
-RINEX Version      : 3.03
-Marker Name        : CUT0
-Marker Number      : 59945M001
-Receiver           : TRIMBLE NETR9
-Antenna            : TRM59800.00     SCIS
-Position XYZ       :  -2364337.2699   4870285.5624  -3360809.8398
+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:
+</p>
+<pre><p style="font-family:Monospace">
+Navigation File(s) : MAO000USA_R_20221720000_01D_MN.rnx
+Ephemeris          : 1893 OK   3592 UNHEALTHY   24 WRONG
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH J07 LNAV: 2022 06 21 07 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH J02 LNAV: 2022 06 21 09 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G32 LNAV: 2022 06 21 16 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH J03 LNAV: 2022 06 21 17 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G22 LNAV: 2022 06 21 18 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G31 LNAV: 2022 06 21 18 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C35 D1  : 2022 06 21 17 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH J07 LNAV: 2022 06 21 19 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G23 LNAV: 2022 06 21 20 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C26 D1  : 2022 06 21 19 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G10 LNAV: 2022 06 21 20 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G16 LNAV: 2022 06 21 22 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C44 D1  : 2022 06 21 20 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G27 LNAV: 2022 06 21 22 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G15 LNAV: 2022 06 21 22 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C24 D1  : 2022 06 21 21 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH E11 FNAV: 2022 06 21 22 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C40 D1  : 2022 06 21 22 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G21 LNAV: 2022 06 22 00 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH J04 LNAV: 2022 06 21 23 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C21 D1  : 2022 06 21 22 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH C12 D1  : 2022 06 21 22 00 14
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH G08 LNAV: 2022 06 22 00 00 00
+                     MAO000USA_R_20221720000_01D_MN.rnx : WRONG EPH E25 FNAV: 2022 06 21 23 30 00
+
+Observation File   : MAO000USA_R_20221720000_01D_30S_MO.rnx
+RINEX Version      : 4.00
+Marker Name        : MAO0
+Marker Number      : 40445M005
+Receiver           : SEPT POLARX5
+Antenna            : LEIAR25.R3      LEIT
+Position XYZ       :  -5466067.2677  -2404332.8007   2242123.7442
 Antenna dH/dE/dN   :   0.0000   0.0000   0.0000
-Start Time         : 2015-09-09 13.04.50.0
-End Time           : 2015-09-09 23.59.58.0
-Interval           : 1
-Navigation Systems : 6    C E G J R S
-Observation Types C: C2I L2I D2I S2I C6I L6I S6I C7I L7I S7I
-Observation Types E: C1X L1X D1X S1X C5X L5X S5X C7X L7X S7X C8X L8X S8X
-Observation Types G: C1C L1C D1C S1C C2W L2W S2W C2X L2X S2X C5X L5X S5X
-Observation Types J: C1C L1C D1C S1C C1X L1X S1X C1Z L1Z S1Z C2X L2X S2X C5X L5X S5X C6L L6L S6L
-Observation Types R: C1C L1C D1C S1C C1P L1P S1P C2C L2C S2C C2P L2P S2P
-Observation Types S: C1C L1C D1C S1C C5I L5I S5I
-
-  C: Satellites: 13
-  C: Signals   : 3    2I 6I 7I
-
-      C:   2I: Observations      : 396567 (  511017)    77.60 %
-      C:   2I: Slips (file+found):        0 +       0
-      C:   2I: Gaps              :     8676
-      C:   2I: Mean SNR          :     41.7
-      C:   2I: Mean Multipath    :     0.42
-
-      C:   6I: Observations      : 396233 (  511017)    77.54 %
-      C:   6I: Slips (file+found):        0 +       0
-      C:   6I: Gaps              :     8761
-      C:   6I: Mean SNR          :     44.4
-      C:   6I: Mean Multipath    :     0.00
-
-      C:   7I: Observations      : 396233 (  511017)    77.54 %
-      C:   7I: Slips (file+found):        0 +       0
-      C:   7I: Gaps              :     8761
-      C:   7I: Mean SNR          :     43.6
-      C:   7I: Mean Multipath    :     0.30
-
-  E: Satellites: 5
-  E: Signals   : 4    1X 5X 7X 8X
-
-      E:   1X: Observations      :  74468 (  196545)    37.89 %
-      E:   1X: Slips (file+found):        0 +       2
-      E:   1X: Gaps              :     2758
-      E:   1X: Mean SNR          :     45.1
-      E:   1X: Mean Multipath    :     0.37
-
-      E:   5X: Observations      :  74422 (  196545)    37.87 %
-      E:   5X: Slips (file+found):        0 +       2
-      E:   5X: Gaps              :     2785
-      E:   5X: Mean SNR          :     45.2
-      E:   5X: Mean Multipath    :     0.32
-
-      E:   7X: Observations      :  74422 (  196545)    37.87 %
-      E:   7X: Slips (file+found):        0 +       0
-      E:   7X: Gaps              :     2785
-      E:   7X: Mean SNR          :     44.2
-      E:   7X: Mean Multipath    :     0.00
-
-      E:   8X: Observations      :  74429 (  196545)    37.87 %
-      E:   8X: Slips (file+found):        0 +       0
-      E:   8X: Gaps              :     2784
-      E:   8X: Mean SNR          :     49.9
-      E:   8X: Mean Multipath    :     0.00
-
-  G: Satellites: 28
-  G: Signals   : 4    1C 2W 2X 5X
-
-      G:   1C: Observations      : 439952 ( 1100652)    39.97 %
-      G:   1C: Slips (file+found):        0 +      21
-      G:   1C: Gaps              :    10901
-      G:   1C: Mean SNR          :     44.0
-      G:   1C: Mean Multipath    :     0.63
-
-      G:   2W: Observations      : 422560 ( 1100652)    38.39 %
-      G:   2W: Slips (file+found):        0 +      19
-      G:   2W: Gaps              :    11133
-      G:   2W: Mean SNR          :     31.1
-      G:   2W: Mean Multipath    :     0.42
-
-      G:   2X: Observations      : 205305 ( 1100652)    18.65 %
-      G:   2X: Slips (file+found):        0 +      10
-      G:   2X: Gaps              :     7269
-      G:   2X: Mean SNR          :     43.3
-      G:   2X: Mean Multipath    :     0.47
-
-      G:   5X: Observations      : 120638 ( 1100652)    10.96 %
-      G:   5X: Slips (file+found):        0 +       0
-      G:   5X: Gaps              :     3330
-      G:   5X: Mean SNR          :     49.9
-      G:   5X: Mean Multipath    :     0.00
-
-  J: Satellites: 1
-  J: Signals   : 6    1C 1X 1Z 2X 5X 6L
-
-      J:   1C: Observations      :  38040 (   39309)    96.77 %
-      J:   1C: Slips (file+found):        0 +       0
-      J:   1C: Gaps              :     1003
-      J:   1C: Mean SNR          :     49.0
-      J:   1C: Mean Multipath    :     0.33
-
-      J:   1X: Observations      :  38040 (   39309)    96.77 %
-      J:   1X: Slips (file+found):        0 +       0
-      J:   1X: Gaps              :     1003
-      J:   1X: Mean SNR          :     51.5
-      J:   1X: Mean Multipath    :     0.32
-
-      J:   1Z: Observations      :  38040 (   39309)    96.77 %
-      J:   1Z: Slips (file+found):        0 +       0
-      J:   1Z: Gaps              :     1003
-      J:   1Z: Mean SNR          :     48.4
-      J:   1Z: Mean Multipath    :     0.40
-
-      J:   2X: Observations      :  38040 (   39309)    96.77 %
-      J:   2X: Slips (file+found):        0 +       0
-      J:   2X: Gaps              :     1003
-      J:   2X: Mean SNR          :     48.7
-      J:   2X: Mean Multipath    :     0.31
-
-      J:   5X: Observations      :  38040 (   39309)    96.77 %
-      J:   5X: Slips (file+found):        0 +       0
-      J:   5X: Gaps              :     1003
-      J:   5X: Mean SNR          :     53.0
-      J:   5X: Mean Multipath    :     0.00
-
-      J:   6L: Observations      :  38040 (   39309)    96.77 %
-      J:   6L: Slips (file+found):        0 +       0
-      J:   6L: Gaps              :     1003
-      J:   6L: Mean SNR          :     50.6
-      J:   6L: Mean Multipath    :     0.00
-
-  R: Satellites: 23
+Start Time         : 2022-06-21 00.00.00.0
+End Time           : 2022-06-21 23.59.30.0
+Interval           : 30 sec
+Navigation Systems : 5    C E G J R
+Observation Types C: C1P L1P D1P S1P C5P L5P D5P S5P C2I L2I D2I S2I C7I L7I D7I S7I C6I L6I D6I S6I C7D L7D D7D S7D
+Observation Types E: C1C L1C D1C S1C C6C L6C D6C S6C C5Q L5Q D5Q S5Q C7Q L7Q D7Q S7Q C8Q L8Q D8Q S8Q
+Observation Types G: C1C L1C D1C S1C C1W S1W C2W L2W D2W S2W C2L L2L D2L S2L C5Q L5Q D5Q S5Q C1L L1L D1L S1L
+Observation Types I: C5A L5A D5A S5A
+Observation Types J: C1C L1C D1C S1C C2L L2L D2L S2L C5Q L5Q D5Q S5Q C1L L1L D1L S1L C1Z L1Z D1Z S1Z C5P L5P D5P S5P
+Observation Types R: C1C L1C D1C S1C C1P L1P D1P S1P C2P L2P D2P S2P C2C L2C D2C S2C
+Observation Types S: C1C L1C D1C S1C C5I L5I D5I S5I
+
+  C: Satellites: 42
+  C: Signals   : 6    1P 2I 5P 6I 7D 7I
+
+      C:   1P: Observations      :  28217
+      C:   1P: Slips (file+found):       60 +       0
+      C:   1P: Gaps              :      147
+      C:   1P: Mean SNR          :     43.9
+      C:   1P: Mean Multipath    :     0.00
+
+      C:   2I: Observations      :  43725
+      C:   2I: Slips (file+found):      124 +      50
+      C:   2I: Gaps              :      209
+      C:   2I: Mean SNR          :     44.8
+      C:   2I: Mean Multipath    :     0.71
+
+      C:   5P: Observations      :  28373
+      C:   5P: Slips (file+found):       52 +       0
+      C:   5P: Gaps              :      100
+      C:   5P: Mean SNR          :     43.5
+      C:   5P: Mean Multipath    :     0.00
+
+      C:   6I: Observations      :  43887
+      C:   6I: Slips (file+found):       95 +      30
+      C:   6I: Gaps              :      156
+      C:   6I: Mean SNR          :     44.6
+      C:   6I: Mean Multipath    :     0.27
+
+      C:   7D: Observations      :  30073
+      C:   7D: Slips (file+found):       45 +       0
+      C:   7D: Gaps              :       28
+      C:   7D: Mean SNR          :     44.1
+      C:   7D: Mean Multipath    :     0.00
+
+      C:   7I: Observations      :  11450
+      C:   7I: Slips (file+found):       23 +       0
+      C:   7I: Gaps              :       16
+      C:   7I: Mean SNR          :     43.0
+      C:   7I: Mean Multipath    :     0.00
+
+  E: Satellites: 27
+  E: Signals   : 5    1C 5Q 6C 7Q 8Q
+
+      E:   1C: Observations      :  28931
+      E:   1C: Slips (file+found):       49 +       6
+      E:   1C: Gaps              :       83
+      E:   1C: Mean SNR          :     42.7
+      E:   1C: Mean Multipath    :     0.43
+
+      E:   5Q: Observations      :  27473
+      E:   5Q: Slips (file+found):       34 +       6
+      E:   5Q: Gaps              :       62
+      E:   5Q: Mean SNR          :     43.5
+      E:   5Q: Mean Multipath    :     0.22
+
+      E:   6C: Observations      :  27564
+      E:   6C: Slips (file+found):       40 +       0
+      E:   6C: Gaps              :       77
+      E:   6C: Mean SNR          :     45.5
+      E:   6C: Mean Multipath    :     0.00
+
+      E:   7Q: Observations      :  27504
+      E:   7Q: Slips (file+found):       35 +       7
+      E:   7Q: Gaps              :       55
+      E:   7Q: Mean SNR          :     44.2
+      E:   7Q: Mean Multipath    :     0.25
+
+      E:   8Q: Observations      :  27099
+      E:   8Q: Slips (file+found):       48 +       0
+      E:   8Q: Gaps              :       35
+      E:   8Q: Mean SNR          :     47.1
+      E:   8Q: Mean Multipath    :     0.00
+
+  G: Satellites: 32
+  G: Signals   : 6    1C 1L 1W 2L 2W 5Q
+
+      G:   1C: Observations      :  33608 (   35429)    94.86 %
+      G:   1C: Slips (file+found):      120 +      40
+      G:   1C: Gaps              :      159
+      G:   1C: Mean SNR          :     43.8
+      G:   1C: Mean Multipath    :     0.56
+
+      G:   1L: Observations      :   4975 (   35429)    14.04 %
+      G:   1L: Slips (file+found):       17 +       5
+      G:   1L: Gaps              :       17
+      G:   1L: Mean SNR          :     44.0
+      G:   1L: Mean Multipath    :     0.54
+
+      G:   1W: Observations      :  32785 (   35429)    92.54 %
+      G:   1W: Slips (file+found):        0 +      41
+      G:   1W: Gaps              :       83
+      G:   1W: Mean SNR          :     33.5
+      G:   1W: Mean Multipath    :     0.55
+
+      G:   2L: Observations      :  24939 (   35429)    70.39 %
+      G:   2L: Slips (file+found):       81 +      26
+      G:   2L: Gaps              :       95
+      G:   2L: Mean SNR          :     41.4
+      G:   2L: Mean Multipath    :     0.49
+
+      G:   2W: Observations      :  32785 (   35429)    92.54 %
+      G:   2W: Slips (file+found):      110 +      44
+      G:   2W: Gaps              :       83
+      G:   2W: Mean SNR          :     33.5
+      G:   2W: Mean Multipath    :     0.32
+
+      G:   5Q: Observations      :  17026 (   35429)    48.06 %
+      G:   5Q: Slips (file+found):       41 +       8
+      G:   5Q: Gaps              :       47
+      G:   5Q: Mean SNR          :     46.2
+      G:   5Q: Mean Multipath    :     0.26
+
+  J: Satellites: 4
+  J: Signals   : 6    1C 1L 1Z 2L 5P 5Q
+
+      J:   1C: Observations      :   9433 (    9493)    99.37 %
+      J:   1C: Slips (file+found):       64 +       7
+      J:   1C: Gaps              :       14
+      J:   1C: Mean SNR          :     38.0
+      J:   1C: Mean Multipath    :     0.71
+
+      J:   1L: Observations      :   9438 (    9493)    99.42 %
+      J:   1L: Slips (file+found):       14 +      10
+      J:   1L: Gaps              :       10
+      J:   1L: Mean SNR          :     38.9
+      J:   1L: Mean Multipath    :     0.58
+
+      J:   1Z: Observations      :   9428 (    9493)    99.32 %
+      J:   1Z: Slips (file+found):       20 +       7
+      J:   1Z: Gaps              :       16
+      J:   1Z: Mean SNR          :     40.6
+      J:   1Z: Mean Multipath    :     0.61
+
+      J:   2L: Observations      :   9435 (    9493)    99.39 %
+      J:   2L: Slips (file+found):       12 +       9
+      J:   2L: Gaps              :       10
+      J:   2L: Mean SNR          :     38.9
+      J:   2L: Mean Multipath    :     0.58
+
+      J:   5P: Observations      :   9443 (    9493)    99.47 %
+      J:   5P: Slips (file+found):       12 +       0
+      J:   5P: Gaps              :        8
+      J:   5P: Mean SNR          :     36.4
+      J:   5P: Mean Multipath    :     0.00
+
+      J:   5Q: Observations      :   9457 (    9493)    99.62 %
+      J:   5Q: Slips (file+found):       12 +       0
+      J:   5Q: Gaps              :        7
+      J:   5Q: Mean SNR          :     41.4
+      J:   5Q: Mean Multipath    :     0.00
+
+  R: Satellites: 22
   R: Signals   : 4    1C 1P 2C 2P
 
-      R:   1C: Observations      : 323918 (  904107)    35.83 %
-      R:   1C: Slips (file+found):        0 +      44
-      R:   1C: Gaps              :     7295
-      R:   1C: Mean SNR          :     44.9
-      R:   1C: Mean Multipath    :     0.77
-
-      R:   1P: Observations      : 323761 (  904107)    35.81 %
-      R:   1P: Slips (file+found):        0 +      44
-      R:   1P: Gaps              :     7305
-      R:   1P: Mean SNR          :     43.4
-      R:   1P: Mean Multipath    :     0.58
-
-      R:   2C: Observations      : 323521 (  904107)    35.78 %
-      R:   2C: Slips (file+found):        0 +      44
-      R:   2C: Gaps              :     7305
-      R:   2C: Mean SNR          :     40.8
-      R:   2C: Mean Multipath    :     0.56
-
-      R:   2P: Observations      : 321751 (  904107)    35.59 %
-      R:   2P: Slips (file+found):        0 +      37
-      R:   2P: Gaps              :     7317
-      R:   2P: Mean SNR          :     40.3
-      R:   2P: Mean Multipath    :     0.49
-
-  S: Satellites: 4
-  S: Signals   : 2    1C 5I
-
-      S:   1C: Observations      : 152158 (  157236)    96.77 %
-      S:   1C: Slips (file+found):        0 +       1
-      S:   1C: Gaps              :     4013
-      S:   1C: Mean SNR          :     40.4
-      S:   1C: Mean Multipath    :     0.75
-
-      S:   5I: Observations      :  76078 (  157236)    48.38 %
-      S:   5I: Slips (file+found):        0 +       1
-      S:   5I: Gaps              :     2007
-      S:   5I: Mean SNR          :     44.1
-      S:   5I: Mean Multipath    :     0.47
-
-> 2015 09 09 13 04 50.0000000 23  1.2
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-S27  16.04  -73.53   4  L1C .. 37.8  C1C  . 0.81  L5I .. 39.9  C5I  . 0.41
-S28  38.63  -50.63   4  L1C .. 45.5  C1C  . 0.49  L5I .. 47.4  C5I  . 0.48
-S29  41.28   46.44   2  L1C .. 43.2  C1C  . 0.00
-S37  41.28   46.44   2  L1C .. 42.1  C1C  . 0.00
-C01  45.38   41.07   6  L2I .. 42.1  C2I  . 0.20  L6I .. 45.1  C6I  . 0.00  L7I .. 46.0  C7I  . 0.22
-C02  36.53  -53.83   6  L2I .. 37.1  C2I  . 0.31  L6I .. 42.6  C6I  . 0.00  L7I .. 41.3  C7I  . 0.24
-C03  53.80  -10.40   6  L2I .. 42.8  C2I  . 0.19  L6I .. 47.3  C6I  . 0.00  L7I .. 46.0  C7I  . 0.21
-C04  30.52   62.20   6  L2I .. 37.3  C2I  . 0.33  L6I .. 42.4  C6I  . 0.00  L7I .. 41.3  C7I  . 0.25
-C05  19.48  -71.66   6  L2I .. 36.6  C2I  . 0.40  L6I .. 40.0  C6I  . 0.00  L7I .. 38.5  C7I  . 0.37
-C07  63.30   26.64   6  L2I .. 48.5  C2I  . 0.41  L6I .. 49.3  C6I  . 0.00  L7I .. 48.1  C7I  . 0.25
-C08  76.83 -113.07   6  L2I .. 48.9  C2I  . 0.22  L6I .. 50.5  C6I  . 0.00  L7I .. 48.7  C7I  . 0.24
-C10  83.00  -66.65   6  L2I .. 48.8  C2I  . 0.20  L6I .. 50.0  C6I  . 0.00  L7I .. 48.1  C7I  . 0.23
-> 2015 09 09 13 04 52.0000000 33  0.9
+      R:   1C: Observations      :  21692 (   22743)    95.38 %
+      R:   1C: Slips (file+found):      506 +      29
+      R:   1C: Gaps              :      202
+      R:   1C: Mean SNR          :     47.1
+      R:   1C: Mean Multipath    :     0.75
+
+      R:   1P: Observations      :  21411 (   22743)    94.14 %
+      R:   1P: Slips (file+found):      393 +      19
+      R:   1P: Gaps              :       90
+      R:   1P: Mean SNR          :     46.9
+      R:   1P: Mean Multipath    :     0.56
+
+      R:   2C: Observations      :  18380 (   22743)    80.82 %
+      R:   2C: Slips (file+found):      384 +      22
+      R:   2C: Gaps              :      102
+      R:   2C: Mean SNR          :     44.2
+      R:   2C: Mean Multipath    :     0.55
+
+      R:   2P: Observations      :  18118 (   22743)    79.66 %
+      R:   2P: Slips (file+found):      277 +      16
+      R:   2P: Gaps              :       67
+      R:   2P: Mean SNR          :     44.6
+      R:   2P: Mean Multipath    :     0.38
+
+> 2022 06 21 00 00  0.0000000 50  0.5
+G08   0.00    0.00   9  L1C .. 44.1  C1C  . 0.58  C1W  . 0.59  L2W .. 40.6  C2W  . 0.77  L2L .. 37.3  C2L  . 0.74  L5Q .. 45.3  C5Q  . 0.33
+G10  32.29   79.31   9  L1C .. 49.6  C1C  . 0.16  C1W  . 0.16  L2W .. 44.0  C2W  . 0.09  L2L .. 48.2  C2L  . 0.11  L5Q .. 51.6  C5Q  . 0.09
+G16  54.18 -127.22   5  L1C .. 47.1  C1C  . 0.21  C1W  . 0.21  L2W .. 39.4  C2W  . 0.10
+G21  15.13  -68.49   5  L1C .. 41.8  C1C  . 0.53  C1W  . 0.53  L2W .. 25.6  C2W  . 0.27
+G22  26.49  158.25   5  L1C .. 44.6  C1C  . 0.27  C1W  . 0.27  L2W .. 30.1  C2W  . 0.29
+G23   0.00    0.00  11  L1C .. 45.3  C1C  . 0.33  C1W  . 0.33  L2W .. 33.9  C2W  . 0.17  L2L .. 42.5  C2L  . 0.24  L5Q .. 46.3  C5Q  . 0.25  L1L .. 45.7  C1L  . 0.27
+G26   0.00    0.00   9  L1C .. 46.7  C1C  . 0.28  C1W  . 0.29  L2W .. 36.8  C2W  . 0.09  L2L .. 43.7  C2L  . 0.21  L5Q .. 48.6  C5Q  . 0.10
+G27   0.00    0.00   9  L1C .. 48.8  C1C  . 0.23  C1W  . 0.23  L2W .. 43.4  C2W  . 0.17  L2L .. 48.2  C2L  . 0.15  L5Q .. 51.9  C5Q  . 0.10
+G31   0.00    0.00   7  L1C .. 35.7  C1C  . 4.35  C1W  . 4.31  L2W .. 18.4  C2W  . 4.31  L2L s. 31.1  C2L  . 0.00
+G32   0.00    0.00   9  L1C .. 49.2  C1C  . 0.32  C1W  . 0.32  L2W .. 39.9  C2W  . 0.15  L2L .. 44.6  C2L  . 0.16  L5Q .. 48.0  C5Q  . 0.09
+R03  28.32   36.60   8  L1C .. 51.6  C1C  . 0.48  L1P .. 51.5  C1P  . 0.44  L2P .. 46.6  C2P  . 0.27  L2C .. 46.7  C2C  . 0.29
+R04  67.08   99.63   8  L1C .. 52.3  C1C  . 0.29  L1P .. 52.5  C1P  . 0.23  L2P .. 49.3  C2P  . 0.08  L2C .. 49.4  C2C  . 0.13
+R05  35.15 -178.38   8  L1C .. 52.8  C1C  . 0.33  L1P .. 52.9  C1P  . 0.29  L2P .. 47.2  C2P  . 0.12  L2C .. 46.5  C2C  . 0.22
+R09  20.70  -90.25   8  L1C .. 48.6  C1C  . 0.93  L1P .. 48.4  C1P  . 0.44  L2P .. 42.9  C2P  . 0.46  L2C .. 44.3  C2C  . 0.61
+R10   6.26  -47.08   4  L1C .. 39.0  C1C  . 0.00  L1P .. 38.3  C1P  . 0.00
+R17   1.93   99.86   3  L1C .. 27.5  C1C  . 0.00  C2C  . 0.00
+R18  30.07   60.84   8  L1C .. 52.0  C1C  . 0.21  L1P .. 51.7  C1P  . 0.20  L2P .. 46.4  C2P  . 0.15  L2C .. 46.0  C2C  . 0.17
+R19  34.86    5.26   8  L1C .. 40.9  C1C  . 0.48  L1P .. 40.0  C1P  . 0.42  L2P .. 44.8  C2P  . 0.29  L2C .. 44.9  C2C  . 0.33
+R20   5.06  -48.82   8  L1C .. 34.6  C1C  . 2.67  L1P .. 32.8  C1P  . 2.55  L2P .. 36.2  C2P  . 2.19  L2C .. 34.3  C2C  . 2.24
+E02  43.91 -107.45  10  L1C .. 47.6  C1C  . 0.27  L6C .. 50.3  C6C  . 0.00  L5Q .. 48.5  C5Q  . 0.11  L7Q .. 48.8  C7Q  . 0.14  L8Q .. 51.7  C8Q  . 0.00
+E03   2.45 -161.42  10  L1C .. 37.7  C1C  . 0.74  L6C .. 37.4  C6C  . 0.00  L5Q .. 36.9  C5Q  . 0.14  L7Q .. 37.6  C7Q  . 0.18  L8Q .. 40.3  C8Q  . 0.00
+E04   8.83   44.72   7  C1C  . 0.00  C6C  . 0.00  L5Q .. 28.5  C5Q  . 0.00  C7Q  . 0.00  L8Q .. 31.2  C8Q  . 0.00
+E05  37.64  160.08  10  L1C .. 46.5  C1C  . 0.13  L6C .. 49.7  C6C  . 0.00  L5Q .. 47.0  C5Q  . 0.12  L7Q .. 47.5  C7Q  . 0.10  L8Q .. 50.3  C8Q  . 0.00
+E09  42.44   89.19  10  L1C .. 47.7  C1C  . 0.20  L6C .. 50.7  C6C  . 0.00  L5Q .. 48.1  C5Q  . 0.09  L7Q .. 48.9  C7Q  . 0.19  L8Q .. 51.5  C8Q  . 0.00
+E11  20.61   64.05  10  L1C .. 41.7  C1C  . 0.14  L6C .. 42.8  C6C  . 0.00  L5Q .. 39.0  C5Q  . 0.14  L7Q .. 39.2  C7Q  . 0.12  L8Q .. 42.1  C8Q  . 0.00
+E25  29.05 -169.12  10  L1C .. 44.2  C1C  . 0.36  L6C .. 47.6  C6C  . 0.00  L5Q .. 45.0  C5Q  . 0.13  L7Q .. 46.0  C7Q  . 0.20  L8Q .. 48.5  C8Q  . 0.00
+E30  18.32  -53.65  10  L1C .. 42.8  C1C  . 0.34  L6C .. 46.1  C6C  . 0.00  L5Q .. 42.7  C5Q  . 0.26  L7Q .. 43.5  C7Q  . 0.32  L8Q .. 46.1  C8Q  . 0.00
+E34  26.84  -52.94  10  L1C .. 45.5  C1C  . 0.36  L6C .. 46.7  C6C  . 0.00  L5Q .. 44.1  C5Q  . 0.22  L7Q .. 44.6  C7Q  . 0.21  L8Q .. 47.4  C8Q  . 0.00
+E36  44.38   10.32  10  L1C .. 47.1  C1C  . 0.23  L6C .. 50.4  C6C  . 0.00  L5Q .. 48.4  C5Q  . 0.18  L7Q .. 49.1  C7Q  . 0.13  L8Q .. 51.7  C8Q  . 0.00
+J02  25.68  -71.42  12  L1C .. 43.6  C1C  . 0.60  L2L .. 40.0  C2L  . 0.83  L5Q .. 44.4  C5Q  . 0.00  L1L .. 43.6  C1L  . 0.71  L1Z .. 43.4  C1Z  . 0.64  L5P .. 40.8  C5P  . 0.00
+J03  18.88  -66.71  12  L1C .. 41.0  C1C  . 0.45  L2L .. 40.3  C2L  . 0.58  L5Q .. 42.9  C5Q  . 0.00  L1L .. 41.7  C1L  . 0.49  L1Z .. 41.4  C1Z  . 0.47  L5P .. 39.4  C5P  . 0.00
+J04   6.08 -127.48  12  L1C .. 39.3  C1C  . 1.18  L2L .. 38.2  C2L  . 1.45  L5Q .. 39.2  C5Q  . 0.00  L1L .. 38.7  C1L  . 1.31  L1Z .. 40.4  C1Z  . 1.21  L5P .. 35.0  C5P  . 0.00
+J07   3.70  -94.81  11  C1C  . 0.51  L2L .. 37.0  C2L  . 0.20  L5Q .. 39.5  C5Q  . 0.00  L1L .. 32.7  C1L  . 0.21  L1Z .. 38.9  C1Z  . 0.25  L5P .. 30.9  C5P  . 0.00
+C01  20.30 -102.21   6  L2I .. 41.8  C2I  . 0.28  L7I .. 42.6  C7I  . 0.00  L6I .. 40.1  C6I  . 0.08
+C04  35.59 -109.87   6  L2I .. 44.5  C2I  . 0.09  L7I .. 45.4  C7I  . 0.00  L6I .. 44.6  C6I  . 0.04
+C11  18.91  -42.10   6  L2I .. 39.0  C2I  . 1.22  L7I .. 46.1  C7I  . 0.00  L6I .. 44.6  C6I  . 0.45
+C12  51.55    8.60   6  L2I .. 48.5  C2I  . 0.36  L7I .. 51.5  C7I  . 0.00  L6I .. 50.9  C6I  . 0.14
+C14   7.32 -150.82   6  L2I .. 37.8  C2I  . 2.35  L7I .. 40.9  C7I  . 0.00  L6I .. 41.4  C6I  . 0.25
+C21  75.79  138.30  10  L1P .. 49.0  C1P  . 0.00  L5P .. 51.9  C5P  . 0.00  L2I .. 50.8  C2I  . 0.25  L6I .. 52.5  C6I  . 0.07  L7D .. 51.0  C7D  . 0.00
+C22  36.50   44.63  10  L1P .. 47.4  C1P  . 0.00  L5P .. 47.4  C5P  . 0.00  L2I .. 49.6  C2I  . 0.24  L6I .. 49.9  C6I  . 0.25  L7D .. 47.3  C7D  . 0.00
+C24  16.27 -139.62  10  L1P .. 43.9  C1P  . 0.00  L5P .. 42.8  C5P  . 0.00  L2I .. 44.7  C2I  . 0.69  L6I .. 43.5  C6I  . 0.17  L7D .. 42.6  C7D  . 0.00
+C25   8.87  -85.45  10  L1P .. 38.0  C1P  . 0.00  L5P .. 40.3  C5P  . 0.00  L2I .. 41.7  C2I  . 1.90  L6I .. 41.5  C6I  . 0.39  L7D .. 39.8  C7D  . 0.00
+C26   4.25  177.77  10  L1P .. 40.0  C1P  . 0.00  L5P .. 37.8  C5P  . 0.00  L2I .. 41.7  C2I  . 0.58  L6I .. 40.5  C6I  . 0.22  L7D .. 37.7  C7D  . 0.00
+C34  36.24  -28.48  10  L1P .. 46.7  C1P  . 0.00  L5P .. 42.5  C5P  . 0.00  L2I .. 48.9  C2I  . 0.43  L6I .. 48.1  C6I  . 0.22  L7D .. 42.3  C7D  . 0.00
+C35  16.68  103.11  10  L1P .. 41.8  C1P  . 0.00  L5P .. 41.5  C5P  . 0.00  L2I .. 43.3  C2I  . 0.37  L6I .. 43.0  C6I  . 0.19  L7D .. 40.9  C7D  . 0.00
+C40  10.26  -34.76  10  L1P .. 42.4  C1P  . 0.00  L5P .. 37.4  C5P  . 0.00  L2I .. 43.1  C2I  . 0.49  L6I .. 39.4  C6I  . 0.53  L7D .. 38.4  C7D  . 0.00
+C42  30.61 -156.42  10  L1P .. 46.0  C1P  . 0.00  L5P .. 46.6  C5P  . 0.00  L2I .. 47.7  C2I  . 0.42  L6I .. 48.1  C6I  . 0.08  L7D .. 46.1  C7D  . 0.00
+C44  53.90   52.53  10  L1P .. 48.1  C1P  . 0.00  L5P .. 49.4  C5P  . 0.00  L2I .. 50.9  C2I  . 0.32  L6I .. 50.9  C6I  . 0.15  L7D .. 48.9  C7D  . 0.00
+C57   0.00    0.00   4  L2I .. 48.1  C2I  . 0.26  L6I .. 48.2  C6I  . 0.09
+C59  15.79 -100.68   6  L2I .. 43.8  C2I  . 0.15  L6I .. 41.7  C6I  . 0.14  L7D .. 41.5  C7D  . 0.00
+> 2022 06 21 00 00 30.0000000 49  0.5
 ...
-</pre>
-</p>
+</p>
+</pre>
 
 <p>
@@ -1980,5 +2097,5 @@
 </p>
 <pre>
-> 2015 09 09 13 04 50.0000000 23  1.2
+> 2022 06 21 00 00 30.0000000 49  0.5
 </pre>
 <p>
@@ -2000,5 +2117,5 @@
 </p>
 <pre>
-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
+E05  37.64  160.08  10  L1C .. 46.5  C1C  . 0.13  L6C .. 49.7  C6C  . 0.00  L5Q .. 47.0  C5Q  . 0.12  L7Q .. 47.5  C7Q  . 0.10  L8Q .. 50.3  C8Q  . 0.00
 </pre>
 <p>
@@ -2015,5 +2132,5 @@
 </p>
 <pre>
-L1C s. 34.3
+L1C .. 46.5
 </pre>
 <p>
@@ -2021,11 +2138,10 @@
 </p>
 <pre>
-C1P  . 0.52
-</pre>
-<p>
-contains
-</p>
-<ul>
-  <li>RINEX Version 3 observation code </li>
+C1C  . 0.13
+</pre>
+<p>
+contains the RINEX Version 3/4 observation code and
+</p>
+<ul>
   <li>for a carrier phase observation: </li>
   <ul>
@@ -2040,5 +2156,6 @@
 </ul>
 <p>
-With respect to the summary note, that in addition to cycle slips recorded in the RINEX 'file', cycle slips identified by BNC are reported as 'found'.
+With respect to the summary note, that in addition to cycle slips recorded in the RINEX 'file',
+cycle slips identified by BNC are reported as 'found'.
 </p>
 
@@ -2049,12 +2166,12 @@
 and tracking mode or channel must be separated by ampersand character '&'. Specifications for each navigation systems must be separated by blank character ' '.
 
-<p>Examples for 'Plots for signals' option:<ul><li> G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5 <br>
+<p>Examples for 'Plots for signals' option:<ul><li> G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
 (Plots will be based on GPS observations on 1st, 2nd and 5th frequency, GLONASS observations on 1st, 2nd and 3rd frequency,
 QZSS observations on 1st and 2nd frequency, Galileo observations on 1st and 7th frequency, BeiDou observations on
-1st and 6th frequency, SBAS observations on 1st frequency.)
+2end and 6th frequency, SBAS observations on 1st frequency.)
 </li>
-<li>G:1C&5X<br>(Plots will be based on GPS observations on 1st frequency in C tracking mode and GPS observations on 5th frequency in X tracking mode.)
+<li>G:1C&5X (Plots will be based on GPS observations on 1st frequency in C tracking mode and GPS observations on 5th frequency in X tracking mode.)
 </li>
-<li>C:6I&7I<br>(Plots will be based on BeiDou observations on 6th frequency in I tracking mode and BeiDou observations on 7th frequency in I tracking mode.)
+<li>C:6I&7I (Plots will be based on BeiDou observations on 6th frequency in I tracking mode and BeiDou observations on 7th frequency in I tracking mode.)
 </ul>
 </p>
Index: trunk/BNC/src/bncmain.cpp
===================================================================
--- trunk/BNC/src/bncmain.cpp	(revision 9847)
+++ trunk/BNC/src/bncmain.cpp	(revision 9850)
@@ -126,5 +126,5 @@
       "   rnxOnlyWithSKL {Using RINEX skeleton file is mandatory [integer number: 0=no,2=yes]}\n"
       "   rnxScript      {File upload script, full path [character string]}\n"
-      "   rnxV2Priority  {Priority of signal attributes [character string, list separated by blank character, example: G:12&PWCSLXYN G:5&IQX C:IQX]}\n"
+      "   rnxV2Priority  {Priority of signal attributes [character string, list separated by blank character, example: G:12&PWCSLXYN G:5&IQX C:267&IQX]}\n"
       "   rnxVersion     {Specifies the RINEX version of the file contents [integer number: 2|3|4 ]}\n"
       "\n"
@@ -143,5 +143,5 @@
       "   reqcOutLogFile        {Output logfile, full path [character string]}\n"
       "   reqcLogSummaryOnly    {Output only summary of logfile [integer number: 0=no,2=yes]}\n"
-      "   reqcSkyPlotSignals    {Observation signals [character string, list separated by blank character, example: C:2&7 E:1&5 G:1&2 J:1&2 R:1&2 S:1&5 I:5&9]}\n"
+      "   reqcSkyPlotSignals    {Observation signals [character string, list separated by blank character, example: C:2&6 E:1&5 G:1&2 J:1&2 R:1&2 S:1&5 I:5&9]}\n"
       "   reqcPlotDir           {QC plots directory [character string]}\n"
       "   reqcRnxVersion        {RINEX version [integer number: 2|3]}\n"
Index: trunk/BNC/src/bncsettings.cpp
===================================================================
--- trunk/BNC/src/bncsettings.cpp	(revision 9847)
+++ trunk/BNC/src/bncsettings.cpp	(revision 9850)
@@ -132,5 +132,5 @@
     setValue_p("reqcNewReceiverNumber", "");
     setValue_p("reqcUseObsTypes",     "");
-    setValue_p("reqcV2Priority",      "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX");
+    setValue_p("reqcV2Priority",      "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX");
     // SP3
     setValue_p("sp3CompFile",         "");
Index: trunk/BNC/src/bncwindow.cpp
===================================================================
--- trunk/BNC/src/bncwindow.cpp	(revision 9847)
+++ trunk/BNC/src/bncwindow.cpp	(revision 9850)
@@ -257,5 +257,5 @@
   QString hlp = settings.value("rnxV2Priority").toString();
   if (hlp.isEmpty()) {
-    hlp = "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX";
+    hlp = "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX";
   }
   _rnxV2Priority = new QLineEdit(hlp);
@@ -1394,5 +1394,5 @@
   _rnxFileCheckBox->setWhatsThis(tr("<p>Tick check box 'Skeleton mandatory' in case you want that RINEX files are only produced if 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><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 therefore enforce BNC to only save a default set of RINEX 3 observation types. <i>[key: rnxOnlyWithSKL]</i></p>"));
   _rnxScrpLineEdit->setWhatsThis(tr("<p>Whenever a RINEX Observation file is finally saved, you may want to compress, copy or upload it immediately, for example via FTP. BNC allows you to execute a script/batch file to carry out such operation.</p><p>Specify the full path of a script or batch file. BNC will pass the full RINEX Observation file path to the script as command line parameter (%1 on Windows systems, $1 on Unix/Linux/Mac systems). <i>[key: rnxScript]</i></p>"));
-  _rnxV2Priority->setWhatsThis(tr("<p>Specify a priority list of characters defining signal attributes as defined in RINEX Version 3. Priorities will be used to map observations with RINEX Version 3 attributes from incoming streams to Version 2. The underscore character '_' stands for undefined attributes. A question mark '?' can be used as wildcard which represents any one character.</p><p>Signal priorities can be specified as equal for all systems, as system specific or as system and freq. specific. For example: </li><ul><li>'CWPX_?' (General signal priorities valid for all GNSS) </li><li>'I:ABCX' (System specific signal priorities for IRNSS) </li><li>'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities) </li></ul>Default is the following priority list 'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX'. <i>[key: rnxV2Priority]</i></p>"));
+  _rnxV2Priority->setWhatsThis(tr("<p>Specify a priority list of characters defining signal attributes as defined in RINEX Version 3. Priorities will be used to map observations with RINEX Version 3 attributes from incoming streams to Version 2. The underscore character '_' stands for undefined attributes. A question mark '?' can be used as wildcard which represents any one character.</p><p>Signal priorities can be specified as equal for all systems, as system specific or as system and freq. specific. For example: </li><ul><li>'CWPX_?' (General signal priorities valid for all GNSS) </li><li>'I:ABCX' (System specific signal priorities for IRNSS) </li><li>'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities) </li></ul>Default is the following priority list 'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX'. <i>[key: rnxV2Priority]</i></p>"));
   _rnxVersComboBox->setWhatsThis(tr("<p>Select the format for RINEX Observation files. <i>[key: rnxVersion]</i></p>"));
 
Index: trunk/BNC/src/reqcdlg.cpp
===================================================================
--- trunk/BNC/src/reqcdlg.cpp	(revision 9847)
+++ trunk/BNC/src/reqcdlg.cpp	(revision 9850)
@@ -148,5 +148,5 @@
   QString hlp = settings.value("reqcV2Priority").toString();
   if (hlp.isEmpty()) {
-    hlp = "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX";
+    hlp = "G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX";
   }
   _reqcV2Priority = new QLineEdit(hlp);
@@ -242,5 +242,5 @@
   _reqcRnxVersion->setWhatsThis(tr("<p>Select version number of emerging new RINEX file.</p><p>Note the following:</p><p>When converting <u>RINEX Version 2 to Version 3 </u>Observation files, the tracking mode or channel information (signal attribute, see RINEX Version 3 documentation) in the (last out of the three characters) observation code is left blank if unknown.</p><p>When converting <u>RINEX Version 3 to Version 2</u>, the mapping of observations follows a 'Signal priority list' with signal attributes as defined in RINEX Version 3. <i>[key: reqcRnxVersion]</i></p>"));
   _reqcSampling->setWhatsThis(tr("<p>Select sampling rate of emerging new RINEX Observation file. <i>[key: reqcSampling]</i></p>"));
-  _reqcV2Priority->setWhatsThis(tr("<p>Specify a priority list of characters defining signal attributes as defined in RINEX Version 3. Priorities will be used to map observations with RINEX Version 3 attributes from incoming streams to Version 2. The underscore character '_' stands for undefined attributes. A question mark '?' can be used as wildcard which represents any one character.</p><p>Signal priorities can be specified as equal for all systems, as system specific or as system and freq. specific. For example: </li><ul><li>'CWPX_?' (General signal priorities valid for all GNSS) </li><li>'C:IQX I:ABCX' (System specific signal priorities for BDS and IRNSS) </li><li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities) </li></ul>Default is the following priority list 'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:128&DPX C:7&DPZ I:ABCX S:1&C S:5&IQX'. <i>[key: reqcV2Priority]</i></p>"));
+  _reqcV2Priority->setWhatsThis(tr("<p>Specify a priority list of characters defining signal attributes as defined in RINEX Version 3. Priorities will be used to map observations with RINEX Version 3 attributes from incoming streams to Version 2. The underscore character '_' stands for undefined attributes. A question mark '?' can be used as wildcard which represents any one character.</p><p>Signal priorities can be specified as equal for all systems, as system specific or as system and freq. specific. For example: </li><ul><li>'CWPX_?' (General signal priorities valid for all GNSS) </li><li>'C:IQX I:ABCX' (System specific signal priorities for BDS and IRNSS) </li><li>'G:12&PWCSLXYN G:5&IQX R:12&PC R:3&IQX' (System and frequency specific signal priorities) </li></ul>Default is the following priority list 'G:12&PWCSLX G:5&IQX R:12&PC R:3&IQX R:46&ABX E:16&BCXZ E:578&IQX J:1&SLXCZ J:26&SLX J:5&IQX C:267&IQX C:18&DPX I:ABCX S:1&C S:5&IQX'. <i>[key: reqcV2Priority]</i></p>"));
   _reqcStartDateTime->setWhatsThis(tr("<p>Specify begin of emerging new RINEX Observation file. <i>[key: reqcStartDateTime]</i></p>"));
   _reqcEndDateTime->setWhatsThis(tr("<p>Specify end of emerging new RINEX Observation file. <i>[key: reqcEndDateTime]</i></p>"));
Index: trunk/BNC/src/upload/bncuploadcaster.cpp
===================================================================
--- trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 9847)
+++ trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 9850)
@@ -308,7 +308,9 @@
     delete _outSocket; _outSocket = 0;
     int l = ans.indexOf("\r\n", 0);
-    emit(newMessage("Broadcaster: Connection broken for " + _mountpoint.toLatin1() + ": " + ans.left(l), true));
-  } else {
-    emit(newMessage("Broadcaster: Connection opened for " + _mountpoint.toLatin1(), true));
+    emit(newMessage("Broadcaster " + _casterOutHost.toLatin1() + ":" + QString("%1").arg(_casterOutPort).toLatin1() +
+                    ": Connection broken for " + _mountpoint.toLatin1() + ": " + ans.left(l), true));
+  } else {
+    emit(newMessage("Broadcaster" +   _casterOutHost.toLatin1() + ":" + QString("%1").arg(_casterOutPort).toLatin1() +
+                    ": Connection opened for " + _mountpoint.toLatin1(), true));
     _sOpenTrial = 0;
   }
@@ -323,5 +325,6 @@
     if (!_outSocket->waitForEncrypted(timeOut)) {
       emit(newMessage(
-          "Broadcaster: Connect timeout for " + _mountpoint.toLatin1() + " ("
+           "Broadcaster " + _casterOutHost.toLatin1() + ":" + QString("%1").arg(_casterOutPort).toLatin1() +
+           ": Connect timeout for " + _mountpoint.toLatin1() + " ("
               + outHost.toLatin1() + ":"
               + QString("%1) ").arg(outPort).toLatin1()
@@ -330,11 +333,12 @@
       return false;
     } else {
-      emit(newMessage("Broadcaster: SSL handshake completed for " + _mountpoint.toLatin1(), true));
+      emit(newMessage("Broadcaster " + _casterOutHost.toLatin1() + ":" + QString("%1").arg(_casterOutPort).toLatin1() +
+                      ": SSL handshake completed for " + _mountpoint.toLatin1(), true));
     }
   } else {
     _outSocket->connectToHost(outHost, outPort);
     if (!_outSocket->waitForConnected(timeOut)) {
-      emit(newMessage(
-          "Broadcaster: Connect timeout for " + _mountpoint.toLatin1() + " ("
+      emit(newMessage("Broadcaster " + _casterOutHost.toLatin1() + ":" + QString("%1").arg(_casterOutPort).toLatin1() +
+                      ": Connect timeout for " + _mountpoint.toLatin1() + " ("
               + outHost.toLatin1() + ":"
               + QString("%1) ").arg(outPort).toLatin1()
