Index: trunk/BNC/Example_Configs/00_Readme.txt
===================================================================
--- trunk/BNC/Example_Configs/00_Readme.txt	(revision 10697)
+++ trunk/BNC/Example_Configs/00_Readme.txt	(revision 10753)
@@ -220,10 +220,14 @@
 with an update rate of 5 seconds.
 
-20. Configuration File 'CompareSp3.bnc'
+20. Configuration File 'UploadRaw.bnc'
+Purpose: Forward the stream contents of the incoming stream BCEP00BKG0 
+from products.igs-ip.net to another caster.
+
+21. Configuration File 'CompareSp3.bnc'
 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.
 
-21. Configuration File 'Empty.bnc'
+22. Configuration File 'Empty.bnc'
 Purpose: Provide an empty example configuration file for BNC which only
 contains the default settings.
@@ -237,5 +241,5 @@
 The scripts expect 'Example_Configs' to be the current working directory.
 
-22. Shell Script 'RinexQC.sh'
+23. Shell Script 'RinexQC.sh'
 Purpose: Equals configuration file example 'RinexQC.bnc', checks the quality of
 a RINEX Version 4 file by means of a multipath analysis. The platform offscreen
@@ -243,5 +247,5 @@
 All results are saved on disk.
 
-23. Shell Script 'RinexConcat.sh'
+24. Shell Script 'RinexConcat.sh'
 Purpose: Equals configuration file example 'RinexConcat.bnc', concatenates
 several RINEX Version 3 files to produce one compiled file and edit the marker
@@ -249,5 +253,5 @@
 offline.
 
-24. Shell Script 'RinexEph.sh'
+25. Shell Script 'RinexEph.sh'
 Purpose: Equals configuration file example 'RinexEph.bnc', converts a RTCM
 stream with navigation messages to RINEX Navigation files. The configuration
@@ -258,5 +262,5 @@
 Ephemeris resources.
 
-25. Shell Script 'ScanLate.sh'
+26. Shell Script 'ScanLate.sh'
 Purpose: Scan an observation stream for contained RTCM message types, print
 observation latencies. The output is saved in a logfile. Latencies are
@@ -264,5 +268,5 @@
 seconds.
 
-26. Shell Script 'RinexObs.sh'
+27. Shell Script 'RinexObs.sh'
 Purpose: Equals configuration file example 'RinexObs.bnc', converts RTCM
 streams to RINEX Observation files. The configuration pulls streams from two
@@ -280,5 +284,5 @@
 always overrule options contained in the configuration file.
 
-27. Shell Script 'CompareSp3.sh'
+28. Shell Script 'CompareSp3.sh'
 Purpose: Equals configuration file example 'CompareSp3.bnc', compares two SP3
 files to calculate RMS values for orbit and clock differences. However, instead
@@ -288,6 +292,2 @@
 in a logfile.
 
-Andrea Stuerze, BKG
-Frankfurt, September 2022
-igs-ip@bkg.bund.de
-
Index: trunk/BNC/Example_Configs/01_RinexObs.bnc
===================================================================
--- trunk/BNC/Example_Configs/01_RinexObs.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/01_RinexObs.bnc	(revision 10753)
@@ -128,4 +128,5 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
 uploadSamplClkRnx=5
Index: trunk/BNC/Example_Configs/02_RinexEph.bnc
===================================================================
--- trunk/BNC/Example_Configs/02_RinexEph.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/02_RinexEph.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/03_BrdcCorr.bnc
===================================================================
--- trunk/BNC/Example_Configs/03_BrdcCorr.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/03_BrdcCorr.bnc	(revision 10753)
@@ -128,9 +128,11 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
 uploadSamplSp3=30 sec
+
 [PPP]
 antexFile=
Index: trunk/BNC/Example_Configs/04_RinexConcat.bnc
===================================================================
--- trunk/BNC/Example_Configs/04_RinexConcat.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/04_RinexConcat.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/05_RinexQC.bnc
===================================================================
--- trunk/BNC/Example_Configs/05_RinexQC.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/05_RinexQC.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/06_RTK.bnc
===================================================================
--- trunk/BNC/Example_Configs/06_RTK.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/06_RTK.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/07_FeedEngine.bnc
===================================================================
--- trunk/BNC/Example_Configs/07_FeedEngine.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/07_FeedEngine.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/08_PPP.bnc
===================================================================
--- trunk/BNC/Example_Configs/08_PPP.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/08_PPP.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/09_PPPNet.bnc
===================================================================
--- trunk/BNC/Example_Configs/09_PPPNet.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/09_PPPNet.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/10_PPPQuickStart.bnc
===================================================================
--- trunk/BNC/Example_Configs/10_PPPQuickStart.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/10_PPPQuickStart.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/11_PPPPostProc.bnc
===================================================================
--- trunk/BNC/Example_Configs/11_PPPPostProc.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/11_PPPPostProc.bnc	(revision 10753)
@@ -128,9 +128,11 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
 uploadSamplSp3=30 sec
+
 [PPP]
 antexFile=Input/igs20.atx
Index: trunk/BNC/Example_Configs/12_PPPOsm.bnc
===================================================================
--- trunk/BNC/Example_Configs/12_PPPOsm.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/12_PPPOsm.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/13_PPPGalHAS.bnc
===================================================================
--- trunk/BNC/Example_Configs/13_PPPGalHAS.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/13_PPPGalHAS.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/14_SaveSp3.bnc
===================================================================
--- trunk/BNC/Example_Configs/14_SaveSp3.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/14_SaveSp3.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=",,,2,,,IGS20,RTCM-SSR,2,Output/BKG0MGXRTS${V3PROD}.SP3,Output/BKG0MGXRTS${V3PROD}.CLK,,,,,0 byte(s),"
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/15_Sp3ETRFPPP.bnc
===================================================================
--- trunk/BNC/Example_Configs/15_Sp3ETRFPPP.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/15_Sp3ETRFPPP.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=",,,2,,,ETRF2000,IGS-SSR,2,Output/BKG0MGXRTS${V3PROD}.SP3,Output/BKG0MGXRTS${V3PROD}.CLK,,,,,0 byte(s),"
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/16_Upload.bnc
===================================================================
--- trunk/BNC/Example_Configs/16_Upload.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/16_Upload.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut="products.igs-ip.net,2101,CLOCK,2,user,pass,IGS20,IGS-SSR,0,Output/BKG0MGXRTS${V3PROD}.SP3,Output/BKG0MGXRTS${V3PROD}.CLK,Output/BKG0MGXRTS${V3PROD}.BIA,,,,0 byte(s),"
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=0 sec
Index: trunk/BNC/Example_Configs/17_Combi.bnc
===================================================================
--- trunk/BNC/Example_Configs/17_Combi.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/17_Combi.bnc	(revision 10753)
@@ -128,4 +128,5 @@
 uploadIntr=1 day
 uploadMountpointsOut="products.igs-ip.net,2101,SSRA02IGS1_T,2,,,IGS20,IGS-SSR,2,Output/BKG0MGXRTS${V3PROD}.SP3,Output/BKG0MGXRTS${V3PROD}.CLK,Output/BKG0MGXRTS${V3PROD}.BIA,,,,0 byte(s),"
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
 uploadSamplClkRnx=5
Index: trunk/BNC/Example_Configs/18_CombiPPP.bnc
===================================================================
--- trunk/BNC/Example_Configs/18_CombiPPP.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/18_CombiPPP.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut="products.igs-ip.net,2101,SSRA02IGS1_T,2,,,IGS20,IGS-SSR,2,Output/BKG0MGXRTS${V3PROD}.SP3,Output/BKG0MGXRTS${V3PROD}.CLK,Output/BKG0MGXRTS${V3PROD}.BIA,,,,0 byte(s),"
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=0 sec
Index: trunk/BNC/Example_Configs/19_UploadEph.bnc
===================================================================
--- trunk/BNC/Example_Configs/19_UploadEph.bnc	(revision 10697)
+++ trunk/BNC/Example_Configs/19_UploadEph.bnc	(revision 10753)
@@ -128,6 +128,7 @@
 uploadIntr=1 day
 uploadMountpointsOut=
+uploadRawMountpointsOut=
 uploadSamplBiaSnx=5
-uploadSamplClkRnx5
+uploadSamplClkRnx=0
 uploadSamplRtcmEph=5
 uploadSamplRtcmEphCorr=5 sec
Index: trunk/BNC/Example_Configs/20_CompareSp3.bnc
===================================================================
--- trunk/BNC/Example_Configs/20_CompareSp3.bnc	(revision 10697)
+++ 	(revision )
@@ -1,180 +1,0 @@
-[General]
-adviseFail=15
-adviseObsRate=
-adviseReco=5
-adviseScript=
-autoStart=0
-casterUrlList=http://user:pass@euref-ip.net:2101, http://user:pass@igs-ip.net:2101, http://user:pass@products.igs-ip.net:2101
-cmbBds=2
-cmbBsxFile=
-cmbGal=2
-cmbGlo=2
-cmbGps=2
-cmbLogpath=
-cmbMaxdisplacement=
-cmbMaxres=
-cmbMethod=Kalman Filter
-cmbNavic=0
-cmbQzss=0
-cmbSampl=1 sec
-cmbSbas=0
-cmbStreams=
-corrIntr=1 day
-corrPath=
-corrPort=
-ephIntr=1 day
-ephOutPort=
-ephPath=
-ephVersion=3
-font=
-logFile=
-miscIntr=
-miscMount=
-miscPort=
-miscScanRTCM=0
-mountPoints=@Invalid()
-ntripVersion=2
-onTheFlyInterval=no
-outFile=
-outLockTime=0
-outPort=
-outSampl=1 sec
-outUPort=
-outWait=5
-proxyHost=
-proxyPort=
-rawOutFile=
-reqcAction=
-reqcComment=
-reqcEndDateTime=2099-01-01T00:00:00
-reqcLogSummaryOnly=0
-reqcNavFile=
-reqcNewAntennaName=
-reqcNewAntennaNumber=
-reqcNewAntennadE=
-reqcNewAntennadN=
-reqcNewAntennadU=
-reqcNewMarkerName=
-reqcNewReceiverName=
-reqcNewReceiverNumber=
-reqcObsFile=
-reqcOldAntennaName=
-reqcOldAntennaNumber=
-reqcOldAntennadE=
-reqcOldAntennadN=
-reqcOldAntennadU=
-reqcOldMarkerName=
-reqcOldReceiverName=
-reqcOldReceiverNumber=
-reqcOutLogFile=
-reqcOutNavFile=
-reqcOutObsFile=
-reqcPlotDir=
-reqcRnxVersion=
-reqcRunBy=
-reqcSampling=1 sec
-reqcSkyPlotSignals=G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
-reqcStartDateTime=1967-11-02T00:00:00
-reqcUseObsTypes=
-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
-rnxAppend=0
-rnxIntr=1 day
-rnxOnlyWithSKL=0
-rnxPath=
-rnxSampl=1 sec
-rnxScript=
-rnxSkel=skl
-rnxSkelPath=
-rnxV2Priority=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
-rnxVersion=3
-serialAutoNMEA=Auto
-serialBaudRate=9600
-serialDataBits=8
-serialFileNMEA=
-serialFlowControl=OFF
-serialHeightNMEA=
-serialManualNMEASampling=10
-serialMountPoint=
-serialNMEASampling=0
-serialParity=NONE
-serialPortName=
-serialStopBits=1
-sp3CompExclude="G05,R18"
-sp3CompFile="Input/CNE1MGXRTS_20222410000_01D_05S_ORB.SP3,Input/BKG1MGXRTS_20222410000_01D_05S_ORB.SP3"
-sp3CompOutLogFile=Output/Sp3Comparison.log
-sp3CompSummaryOnly=0
-sslCaCertPath=
-sslClientCertPath=
-sslIgnoreErrors=0
-startTab=5
-statusTab=0
-trafo_dx=
-trafo_dxr=
-trafo_dy=
-trafo_dyr=
-trafo_dz=
-trafo_dzr=
-trafo_ox=
-trafo_oxr=
-trafo_oy=
-trafo_oyr=
-trafo_oz=
-trafo_ozr=
-trafo_sc=
-trafo_scr=
-trafo_t0=
-uploadAntexFile=
-uploadEphMountpointsOut=
-uploadIntr=1 day
-uploadMountpointsOut=
-uploadSamplBiaSnx=5
-uploadSamplClkRnx5
-uploadSamplRtcmEph=5
-uploadSamplRtcmEphCorr=5 sec
-uploadSamplSp3=30 sec
-
-[PPP]
-antexFile=
-audioResponse=
-blqFile=
-constraints=no
-corrFile=
-corrMount=
-corrWaitTime=0
-crdFile=
-dataSource=
-eleWgtCode=0
-eleWgtPhase=0
-ionoFile=
-ionoMount=
-lcBDS=Pi&Li
-lcGLONASS=Pi&Li
-lcGPS=Pi&Li
-lcGalileo=Pi&Li
-logPath=
-mapSpeedSlider=100
-mapWinDotColor=red
-mapWinDotSize=
-maxResC1=3.0
-maxResGIM=3.0
-maxResL1=0.03
-minEle=0
-minObs=4
-modelObs=Uncombined PPP
-nmeaPath=
-plotCoordinates=
-pseudoObs=no
-rinexNav=
-rinexObs=
-seedingTime=0
-sigmaC1=2.0
-sigmaGIM=5.0
-sigmaL1=0.02
-snxtroAc=
-snxtroCampId=
-snxtroIntr=1 hour
-snxtroPath=
-snxtroSampl=1 sec
-snxtroSolId=
-snxtroSolType=
-staTable=",,,,,,,,,,,"
Index: trunk/BNC/Example_Configs/20_UploadRaw.bnc
===================================================================
--- trunk/BNC/Example_Configs/20_UploadRaw.bnc	(revision 10753)
+++ trunk/BNC/Example_Configs/20_UploadRaw.bnc	(revision 10753)
@@ -0,0 +1,181 @@
+[General]
+adviseFail=15
+adviseObsRate=
+adviseReco=5
+adviseScript=
+autoStart=0
+casterUrlList=http://Example:Configs@products.igs-ip.net:2101, http://Example:Configs@euref-ip.net:2101
+cmbBds=2
+cmbBsxFile=
+cmbGal=2
+cmbGlo=2
+cmbGps=2
+cmbLogpath=
+cmbMaxdisplacement=
+cmbMaxres=
+cmbMethod=Kalman Filter
+cmbNavic=0
+cmbQzss=0
+cmbSampl=1 sec
+cmbSbas=0
+cmbStreams=
+corrIntr=1 day
+corrPath=
+corrPort=
+ephIntr=1 day
+ephOutPort=
+ephPath=
+ephVersion=3
+font=
+logFile=Output/UploadEph.log
+miscIntr=
+miscMount=
+miscPort=
+miscScanRTCM=0
+mountPoints=//Example:Configs@products.igs-ip.net:2101/BCEP00BKG0 RTCM_3.3 DEU 50.09 8.66 no 2
+ntripVersion=2
+onTheFlyInterval=no
+outFile=
+outLockTime=0
+outPort=
+outSampl=1 sec
+outUPort=
+outWait=5
+proxyHost=
+proxyPort=
+rawOutFile=
+reqcAction=
+reqcComment=
+reqcEndDateTime=2099-01-01T00:00:00
+reqcLogSummaryOnly=0
+reqcNavFile=
+reqcNewAntennaName=
+reqcNewAntennaNumber=
+reqcNewAntennadE=
+reqcNewAntennadN=
+reqcNewAntennadU=
+reqcNewMarkerName=
+reqcNewReceiverName=
+reqcNewReceiverNumber=
+reqcObsFile=
+reqcOldAntennaName=
+reqcOldAntennaNumber=
+reqcOldAntennadE=
+reqcOldAntennadN=
+reqcOldAntennadU=
+reqcOldMarkerName=
+reqcOldReceiverName=
+reqcOldReceiverNumber=
+reqcOutLogFile=
+reqcOutNavFile=
+reqcOutObsFile=
+reqcPlotDir=
+reqcRnxVersion=
+reqcRunBy=
+reqcSampling=1 sec
+reqcSkyPlotSignals=G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
+reqcStartDateTime=1967-11-02T00:00:00
+reqcUseObsTypes=
+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
+rnxAppend=0
+rnxIntr=1 day
+rnxOnlyWithSKL=0
+rnxPath=
+rnxSampl=1 sec
+rnxScript=
+rnxSkel=skl
+rnxSkelPath=
+rnxV2Priority=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
+rnxVersion=3
+serialAutoNMEA=Auto
+serialBaudRate=9600
+serialDataBits=8
+serialFileNMEA=
+serialFlowControl=OFF
+serialHeightNMEA=
+serialManualNMEASampling=10
+serialMountPoint=
+serialNMEASampling=0
+serialParity=NONE
+serialPortName=
+serialStopBits=1
+sp3CompExclude=
+sp3CompFile=
+sp3CompOutLogFile=
+sp3CompSummaryOnly=0
+sslCaCertPath=
+sslClientCertPath=
+sslIgnoreErrors=0
+startTab=18
+statusTab=0
+trafo_dx=
+trafo_dxr=
+trafo_dy=
+trafo_dyr=
+trafo_dz=
+trafo_dzr=
+trafo_ox=
+trafo_oxr=
+trafo_oy=
+trafo_oyr=
+trafo_oz=
+trafo_ozr=
+trafo_sc=
+trafo_scr=
+trafo_t0=
+uploadAntexFile=
+uploadEphMountpointsOut=
+uploadIntr=1 day
+uploadMountpointsOut=
+uploadRawMountpointsOut="BCEP00BKG0,igs-ip.net,2101,BCEP00BKG0,2,usr,pass,0 byte(s),"
+uploadSamplBiaSnx=5
+uploadSamplClkRnx=0
+uploadSamplRtcmEph=5
+uploadSamplRtcmEphCorr=5 sec
+uploadSamplSp3=30 sec
+
+[PPP]
+antexFile=
+audioResponse=
+blqFile=
+constraints=no
+corrFile=
+corrMount=
+corrWaitTime=0
+crdFile=
+dataSource=
+eleWgtCode=0
+eleWgtPhase=0
+ionoFile=
+ionoMount=
+lcBDS=Pi&Li
+lcGLONASS=Pi&Li
+lcGPS=Pi&Li
+lcGalileo=Pi&Li
+logPath=
+mapSpeedSlider=100
+mapWinDotColor=red
+mapWinDotSize=
+maxResC1=3.0
+maxResGIM=3.0
+maxResL1=0.03
+minEle=0
+minObs=4
+modelObs=Uncombined PPP
+nmeaPath=
+plotCoordinates=
+pseudoObs=no
+rinexNav=
+rinexObs=
+seedingTime=0
+sigmaC1=2.0
+sigmaGIM=2.0
+sigmaL1=0.02
+snxtroAc=
+snxtroCampId=
+snxtroIntr=1 hour
+snxtroPath=
+snxtroSampl=1 sec
+snxtroSolId=
+snxtroSolType=
+staTable=",,,,,,,,,,,"
Index: trunk/BNC/Example_Configs/21_CompareSp3.bnc
===================================================================
--- trunk/BNC/Example_Configs/21_CompareSp3.bnc	(revision 10753)
+++ trunk/BNC/Example_Configs/21_CompareSp3.bnc	(revision 10753)
@@ -0,0 +1,181 @@
+[General]
+adviseFail=15
+adviseObsRate=
+adviseReco=5
+adviseScript=
+autoStart=0
+casterUrlList=http://user:pass@euref-ip.net:2101, http://user:pass@igs-ip.net:2101, http://user:pass@products.igs-ip.net:2101
+cmbBds=2
+cmbBsxFile=
+cmbGal=2
+cmbGlo=2
+cmbGps=2
+cmbLogpath=
+cmbMaxdisplacement=
+cmbMaxres=
+cmbMethod=Kalman Filter
+cmbNavic=0
+cmbQzss=0
+cmbSampl=1 sec
+cmbSbas=0
+cmbStreams=
+corrIntr=1 day
+corrPath=
+corrPort=
+ephIntr=1 day
+ephOutPort=
+ephPath=
+ephVersion=3
+font=
+logFile=
+miscIntr=
+miscMount=
+miscPort=
+miscScanRTCM=0
+mountPoints=@Invalid()
+ntripVersion=2
+onTheFlyInterval=no
+outFile=
+outLockTime=0
+outPort=
+outSampl=1 sec
+outUPort=
+outWait=5
+proxyHost=
+proxyPort=
+rawOutFile=
+reqcAction=
+reqcComment=
+reqcEndDateTime=2099-01-01T00:00:00
+reqcLogSummaryOnly=0
+reqcNavFile=
+reqcNewAntennaName=
+reqcNewAntennaNumber=
+reqcNewAntennadE=
+reqcNewAntennadN=
+reqcNewAntennadU=
+reqcNewMarkerName=
+reqcNewReceiverName=
+reqcNewReceiverNumber=
+reqcObsFile=
+reqcOldAntennaName=
+reqcOldAntennaNumber=
+reqcOldAntennadE=
+reqcOldAntennadN=
+reqcOldAntennadU=
+reqcOldMarkerName=
+reqcOldReceiverName=
+reqcOldReceiverNumber=
+reqcOutLogFile=
+reqcOutNavFile=
+reqcOutObsFile=
+reqcPlotDir=
+reqcRnxVersion=
+reqcRunBy=
+reqcSampling=1 sec
+reqcSkyPlotSignals=G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
+reqcStartDateTime=1967-11-02T00:00:00
+reqcUseObsTypes=
+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
+rnxAppend=0
+rnxIntr=1 day
+rnxOnlyWithSKL=0
+rnxPath=
+rnxSampl=1 sec
+rnxScript=
+rnxSkel=skl
+rnxSkelPath=
+rnxV2Priority=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
+rnxVersion=3
+serialAutoNMEA=Auto
+serialBaudRate=9600
+serialDataBits=8
+serialFileNMEA=
+serialFlowControl=OFF
+serialHeightNMEA=
+serialManualNMEASampling=10
+serialMountPoint=
+serialNMEASampling=0
+serialParity=NONE
+serialPortName=
+serialStopBits=1
+sp3CompExclude="G05,R18"
+sp3CompFile="Input/CNE1MGXRTS_20222410000_01D_05S_ORB.SP3,Input/BKG1MGXRTS_20222410000_01D_05S_ORB.SP3"
+sp3CompOutLogFile=Output/Sp3Comparison.log
+sp3CompSummaryOnly=0
+sslCaCertPath=
+sslClientCertPath=
+sslIgnoreErrors=0
+startTab=5
+statusTab=0
+trafo_dx=
+trafo_dxr=
+trafo_dy=
+trafo_dyr=
+trafo_dz=
+trafo_dzr=
+trafo_ox=
+trafo_oxr=
+trafo_oy=
+trafo_oyr=
+trafo_oz=
+trafo_ozr=
+trafo_sc=
+trafo_scr=
+trafo_t0=
+uploadAntexFile=
+uploadEphMountpointsOut=
+uploadIntr=1 day
+uploadMountpointsOut=
+uploadRawMountpointsOut=
+uploadSamplBiaSnx=5
+uploadSamplClkRnx=0
+uploadSamplRtcmEph=5
+uploadSamplRtcmEphCorr=5 sec
+uploadSamplSp3=30 sec
+
+[PPP]
+antexFile=
+audioResponse=
+blqFile=
+constraints=no
+corrFile=
+corrMount=
+corrWaitTime=0
+crdFile=
+dataSource=
+eleWgtCode=0
+eleWgtPhase=0
+ionoFile=
+ionoMount=
+lcBDS=Pi&Li
+lcGLONASS=Pi&Li
+lcGPS=Pi&Li
+lcGalileo=Pi&Li
+logPath=
+mapSpeedSlider=100
+mapWinDotColor=red
+mapWinDotSize=
+maxResC1=3.0
+maxResGIM=3.0
+maxResL1=0.03
+minEle=0
+minObs=4
+modelObs=Uncombined PPP
+nmeaPath=
+plotCoordinates=
+pseudoObs=no
+rinexNav=
+rinexObs=
+seedingTime=0
+sigmaC1=2.0
+sigmaGIM=5.0
+sigmaL1=0.02
+snxtroAc=
+snxtroCampId=
+snxtroIntr=1 hour
+snxtroPath=
+snxtroSampl=1 sec
+snxtroSolId=
+snxtroSolType=
+staTable=",,,,,,,,,,,"
Index: trunk/BNC/Example_Configs/21_Empty.bnc
===================================================================
--- trunk/BNC/Example_Configs/21_Empty.bnc	(revision 10697)
+++ 	(revision )
@@ -1,177 +1,0 @@
-[General]
-adviseFail=15
-adviseObsRate=
-adviseReco=5
-adviseScript=
-autoStart=0
-casterUrlList=http://user:pass@euref-ip.net:2101, http://user:pass@igs-ip.net:2101, http://user:pass@products.igs-ip.net:2101, http://user:pass@mgex.igs-ip.net:2101
-cmbBds=2
-cmbBsxFile=
-cmbGal=2
-cmbGlo=2
-cmbGps=2
-cmbLogpath=
-cmbMaxdisplacement=
-cmbMaxres=
-cmbMethod=Kalman Filter
-cmbNavic=0
-cmbQzss=0
-cmbSampl=10 sec
-cmbSbas=0
-cmbStreams=
-corrIntr=1 day
-corrPath=
-corrPort=
-ephIntr=1 day
-ephOutPort=
-ephPath=
-ephVersion=3
-font=
-logFile=
-miscIntr=
-miscMount=
-miscPort=
-miscScanRTCM=0
-mountPoints=@Invalid()
-ntripVersion=2
-onTheFlyInterval=no
-outFile=
-outLockTime=0
-outPort=
-outSampl=1 sec
-outUPort=
-outWait=5
-proxyHost=
-proxyPort=
-rawOutFile=
-reqcAction=
-reqcComment=
-reqcEndDateTime=2099-01-01T00:00:00
-reqcLogSummaryOnly=0
-reqcNavFile=
-reqcNewAntennaName=
-reqcNewAntennaNumber=
-reqcNewAntennadE=
-reqcNewAntennadN=
-reqcNewAntennadU=
-reqcNewMarkerName=
-reqcNewReceiverName=
-reqcNewReceiverNumber=
-reqcObsFile=
-reqcOldAntennaName=
-reqcOldAntennaNumber=
-reqcOldAntennadE=
-reqcOldAntennadN=
-reqcOldAntennadU=
-reqcOldMarkerName=
-reqcOldReceiverName=
-reqcOldReceiverNumber=
-reqcOutLogFile=
-reqcOutNavFile=
-reqcOutObsFile=
-reqcPlotDir=
-reqcRnxVersion=
-reqcRunBy=
-reqcSampling=1 sec
-reqcSkyPlotSignals=G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
-reqcStartDateTime=1967-11-02T00:00:00
-reqcUseObsTypes=
-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
-rnxAppend=0
-rnxIntr=1 day
-rnxOnlyWithSKL=0
-rnxPath=
-rnxSampl=1 sec
-rnxScript=
-rnxSkel=skl
-rnxSkelPath=
-rnxV2Priority=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
-rnxVersion=3
-serialAutoNMEA=Auto
-serialBaudRate=9600
-serialDataBits=8
-serialFileNMEA=
-serialFlowControl=OFF
-serialHeightNMEA=
-serialMountPoint=
-serialNMEASampling=10
-serialParity=NONE
-serialPortName=
-serialStopBits=1
-sp3CompExclude=
-sp3CompFile=
-sp3CompOutLogFile=
-sp3CompSummaryOnly=0
-sslCaCertPath=
-sslClientCertPath=
-sslIgnoreErrors=0
-startTab=0
-statusTab=0
-trafo_dx=
-trafo_dxr=
-trafo_dy=
-trafo_dyr=
-trafo_dz=
-trafo_dzr=
-trafo_ox=
-trafo_oxr=
-trafo_oy=
-trafo_oyr=
-trafo_oz=
-trafo_ozr=
-trafo_sc=
-trafo_scr=
-trafo_t0=
-uploadAntexFile=
-uploadEphMountpointsOut=
-uploadIntr=1 day
-uploadMountpointsOut=
-uploadSamplBiaSnx=5
-uploadSamplClkRnx=5
-uploadSamplRtcmEph=5
-uploadSamplRtcmEphCorr=5 sec
-uploadSamplSp3=30 sec
-
-[PPP]
-antexFile=
-audioResponse=
-blqFile=
-constraints=no
-corrFile=
-corrMount=
-corrWaitTime=0
-crdFile=
-dataSource=
-eleWgtCode=0
-eleWgtPhase=0
-ionoFile=
-ionoMount=
-lcBDS=Pi&Li
-lcGLONASS=Pi&Li
-lcGPS=Pi&Li
-lcGalileo=Pi&Li
-logPath=
-mapSpeedSlider=100
-mapWinDotColor=red
-mapWinDotSize=
-maxResC1=3.0
-maxResGIM=3.0
-maxResL1=0.03
-minEle=0
-minObs=4
-nmeaPath=
-plotCoordinates=
-rinexNav=
-rinexObs=
-seedingTime=0
-sigmaC1=1.0
-sigmaGIM=1.0
-sigmaL1=0.01
-snxtroAc=
-snxtroCampId=
-snxtroIntr=1 hour
-snxtroPath=
-snxtroSampl=1 sec
-snxtroSolId=
-snxtroSolType=
-staTable=@Invalid()
Index: trunk/BNC/Example_Configs/22_Empty.bnc
===================================================================
--- trunk/BNC/Example_Configs/22_Empty.bnc	(revision 10753)
+++ trunk/BNC/Example_Configs/22_Empty.bnc	(revision 10753)
@@ -0,0 +1,178 @@
+[General]
+adviseFail=15
+adviseObsRate=
+adviseReco=5
+adviseScript=
+autoStart=0
+casterUrlList=http://user:pass@euref-ip.net:443, http://user:pass@igs-ip.net:443, http://user:pass@products.igs-ip.net:443, http://user:pass@mgex.igs-ip.net:443
+cmbBds=2
+cmbBsxFile=
+cmbGal=2
+cmbGlo=2
+cmbGps=2
+cmbLogpath=
+cmbMaxdisplacement=
+cmbMaxres=
+cmbMethod=Kalman Filter
+cmbNavic=0
+cmbQzss=0
+cmbSampl=10 sec
+cmbSbas=0
+cmbStreams=
+corrIntr=1 day
+corrPath=
+corrPort=
+ephIntr=1 day
+ephOutPort=
+ephPath=
+ephVersion=3
+font=
+logFile=
+miscIntr=
+miscMount=
+miscPort=
+miscScanRTCM=0
+mountPoints=@Invalid()
+ntripVersion=2s
+onTheFlyInterval=no
+outFile=
+outLockTime=0
+outPort=
+outSampl=1 sec
+outUPort=
+outWait=5
+proxyHost=
+proxyPort=
+rawOutFile=
+reqcAction=
+reqcComment=
+reqcEndDateTime=2099-01-01T00:00:00
+reqcLogSummaryOnly=0
+reqcNavFile=
+reqcNewAntennaName=
+reqcNewAntennaNumber=
+reqcNewAntennadE=
+reqcNewAntennadN=
+reqcNewAntennadU=
+reqcNewMarkerName=
+reqcNewReceiverName=
+reqcNewReceiverNumber=
+reqcObsFile=
+reqcOldAntennaName=
+reqcOldAntennaNumber=
+reqcOldAntennadE=
+reqcOldAntennadN=
+reqcOldAntennadU=
+reqcOldMarkerName=
+reqcOldReceiverName=
+reqcOldReceiverNumber=
+reqcOutLogFile=
+reqcOutNavFile=
+reqcOutObsFile=
+reqcPlotDir=
+reqcRnxVersion=
+reqcRunBy=
+reqcSampling=1 sec
+reqcSkyPlotSignals=G:1&2&5 R:1&2&3 E:1&7 C:2&6 J:1&2 I:5&9 S:1&5
+reqcStartDateTime=1967-11-02T00:00:00
+reqcUseObsTypes=
+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
+rnxAppend=0
+rnxIntr=1 day
+rnxOnlyWithSKL=0
+rnxPath=
+rnxSampl=1 sec
+rnxScript=
+rnxSkel=skl
+rnxSkelPath=
+rnxV2Priority=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
+rnxVersion=3
+serialAutoNMEA=Auto
+serialBaudRate=9600
+serialDataBits=8
+serialFileNMEA=
+serialFlowControl=OFF
+serialHeightNMEA=
+serialMountPoint=
+serialNMEASampling=10
+serialParity=NONE
+serialPortName=
+serialStopBits=1
+sp3CompExclude=
+sp3CompFile=
+sp3CompOutLogFile=
+sp3CompSummaryOnly=0
+sslCaCertPath=
+sslClientCertPath=
+sslIgnoreErrors=0
+startTab=0
+statusTab=0
+trafo_dx=
+trafo_dxr=
+trafo_dy=
+trafo_dyr=
+trafo_dz=
+trafo_dzr=
+trafo_ox=
+trafo_oxr=
+trafo_oy=
+trafo_oyr=
+trafo_oz=
+trafo_ozr=
+trafo_sc=
+trafo_scr=
+trafo_t0=
+uploadAntexFile=
+uploadEphMountpointsOut=
+uploadIntr=1 day
+uploadMountpointsOut=
+uploadRawMountpointsOut=
+uploadSamplBiaSnx=5
+uploadSamplClkRnx=5
+uploadSamplRtcmEph=5
+uploadSamplRtcmEphCorr=5 sec
+uploadSamplSp3=30 sec
+
+[PPP]
+antexFile=
+audioResponse=
+blqFile=
+constraints=no
+corrFile=
+corrMount=
+corrWaitTime=0
+crdFile=
+dataSource=
+eleWgtCode=0
+eleWgtPhase=0
+ionoFile=
+ionoMount=
+lcBDS=Pi&Li
+lcGLONASS=Pi&Li
+lcGPS=Pi&Li
+lcGalileo=Pi&Li
+logPath=
+mapSpeedSlider=100
+mapWinDotColor=red
+mapWinDotSize=
+maxResC1=3.0
+maxResGIM=3.0
+maxResL1=0.03
+minEle=0
+minObs=4
+nmeaPath=
+plotCoordinates=
+rinexNav=
+rinexObs=
+seedingTime=0
+sigmaC1=1.0
+sigmaGIM=1.0
+sigmaL1=0.01
+snxtroAc=
+snxtroCampId=
+snxtroIntr=1 hour
+snxtroPath=
+snxtroSampl=1 sec
+snxtroSolId=
+snxtroSolType=
+staTable=@Invalid()
Index: trunk/BNC/Example_Configs/22_RinexQC.sh
===================================================================
--- trunk/BNC/Example_Configs/22_RinexQC.sh	(revision 10697)
+++ 	(revision )
@@ -1,11 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf /dev/null -display :1 --platform offscreen\
-       -key reqcAction Analyze \
-       -key reqcObsFile Input/BRUX00BEL_R_20250750000_01D_30S_MO.rnx \
-       -key reqcNavFile Input/BRUX00BEL_R_20250750000_01D_MN.rnx \
-       -key reqcSkyPlotSignals "G:1&2&5 R:1&2&3 E:1&5&6&7&8 C:1&2&5&6&7" \
-       -key reqcOutLogFile Output/RinexQc.log \
-       -key reqcPlotDir Output 2>/dev/null
-
-
Index: trunk/BNC/Example_Configs/23_RinexConcat.sh
===================================================================
--- trunk/BNC/Example_Configs/23_RinexConcat.sh	(revision 10697)
+++ 	(revision )
@@ -1,13 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf /dev/null \
-       -key reqcAction Edit/Concatenate \
-       -key reqcObsFile Input/BRUX00BEL_S_2021125\*_15M_01S_MO.rnx \
-       -key reqcRnxVersion 3 \
-       -key reqcSampling 30 \
-       -key reqcStartDateTime 1967-11-02T00:00:00 \
-       -key reqcEndDateTime 2099-01-01T00:00:00 \
-       -key reqcNewMarkerName BRUX_MARKER \
-       -key reqcOutLogFile Output/RinexConcat.log \
-       -key reqcOutObsFile Output/BRUX00BEL_S_20211251100_01H_01S_MO.rnx
-
Index: trunk/BNC/Example_Configs/23_RinexQC.sh
===================================================================
--- trunk/BNC/Example_Configs/23_RinexQC.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/23_RinexQC.sh	(revision 10753)
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+../bnc -nw -conf /dev/null -display :1 --platform offscreen\
+       -key reqcAction Analyze \
+       -key reqcObsFile Input/BRUX00BEL_R_20250750000_01D_30S_MO.rnx \
+       -key reqcNavFile Input/BRUX00BEL_R_20250750000_01D_MN.rnx \
+       -key reqcSkyPlotSignals "G:1&2&5 R:1&2&3 E:1&5&6&7&8 C:1&2&5&6&7" \
+       -key reqcOutLogFile Output/RinexQc.log \
+       -key reqcPlotDir Output 2>/dev/null
+
+
Index: trunk/BNC/Example_Configs/24_RinexConcat.sh
===================================================================
--- trunk/BNC/Example_Configs/24_RinexConcat.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/24_RinexConcat.sh	(revision 10753)
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+../bnc -nw -conf /dev/null \
+       -key reqcAction Edit/Concatenate \
+       -key reqcObsFile Input/BRUX00BEL_S_2021125\*_15M_01S_MO.rnx \
+       -key reqcRnxVersion 3 \
+       -key reqcSampling 30 \
+       -key reqcStartDateTime 1967-11-02T00:00:00 \
+       -key reqcEndDateTime 2099-01-01T00:00:00 \
+       -key reqcNewMarkerName BRUX_MARKER \
+       -key reqcOutLogFile Output/RinexConcat.log \
+       -key reqcOutObsFile Output/BRUX00BEL_S_20211251100_01H_01S_MO.rnx
+
Index: trunk/BNC/Example_Configs/24_RinexEph.sh
===================================================================
--- trunk/BNC/Example_Configs/24_RinexEph.sh	(revision 10697)
+++ 	(revision )
@@ -1,13 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf /dev/null \
-       -key mountPoints "//Example:Configs@products.igs-ip.net:2101/BCEP00BKG0 RTCM_3.3 DEU 50.09 8.66 no 2"\
-       -key ephPath Output \
-       -key logFile Output/RinexEph.log \
-       -key ephIntr "1 hour" \
-       -key ephVersion 4 &
-
-psID=`echo $!`
-sleep 10
-kill $psID
-
Index: trunk/BNC/Example_Configs/25_RinexEph.sh
===================================================================
--- trunk/BNC/Example_Configs/25_RinexEph.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/25_RinexEph.sh	(revision 10753)
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+../bnc -nw -conf /dev/null \
+       -key mountPoints "//Example:Configs@products.igs-ip.net:2101/BCEP00BKG0 RTCM_3.3 DEU 50.09 8.66 no 2"\
+       -key ephPath Output \
+       -key logFile Output/RinexEph.log \
+       -key ephIntr "1 hour" \
+       -key ephVersion 4 &
+
+psID=`echo $!`
+sleep 10
+kill $psID
+
Index: trunk/BNC/Example_Configs/25_ScanLate.sh
===================================================================
--- trunk/BNC/Example_Configs/25_ScanLate.sh	(revision 10697)
+++ 	(revision )
@@ -1,13 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf /dev/null \
-       -key mountPoints "//Example:Configs@euref-ip.net:2101/KIR000SWE0 RTCM_3.3 SWE 67.88 21.06 no 2" \
-       -key miscMount KIR000SWE0 \
-       -key miscScanRTCM 2 \
-       -key miscIntr "2 sec" \
-       -key logFile Output/SCAN.log &
-
-psID=`echo $!`
-sleep 20
-kill $psID
-
Index: trunk/BNC/Example_Configs/26_RinexObs.sh
===================================================================
--- trunk/BNC/Example_Configs/26_RinexObs.sh	(revision 10697)
+++ 	(revision )
@@ -1,15 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf /dev/null \
-       -key mountPoints "//Example:Configs@euref-ip.net:2101/KIR000SWE0 RTCM_3.3 SWE 67.88 21.06 no 2;//Example:Configs@euref-ip.net:2101/FFMJ00DEU0 RTCM_3.3 DEU 50.09 8.66 no 2" \
-       -key logFile Output/RinexObs.log \
-       -key rnxPath Output \
-       -key rnxIntr "15 min" \
-       -key rnxSkel SKL \
-       -key rnxSampl "1 sec"\
-       -key rnxVersion 4 &
-
-psID=`echo $!`
-sleep 10
-kill $psID
-
Index: trunk/BNC/Example_Configs/26_ScanLate.sh
===================================================================
--- trunk/BNC/Example_Configs/26_ScanLate.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/26_ScanLate.sh	(revision 10753)
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+../bnc -nw -conf /dev/null \
+       -key mountPoints "//Example:Configs@euref-ip.net:2101/KIR000SWE0 RTCM_3.3 SWE 67.88 21.06 no 2" \
+       -key miscMount KIR000SWE0 \
+       -key miscScanRTCM 2 \
+       -key miscIntr "2 sec" \
+       -key logFile Output/SCAN.log &
+
+psID=`echo $!`
+sleep 20
+kill $psID
+
Index: trunk/BNC/Example_Configs/27_CompareSp3.sh
===================================================================
--- trunk/BNC/Example_Configs/27_CompareSp3.sh	(revision 10697)
+++ 	(revision )
@@ -1,4 +1,0 @@
-#!/bin/bash
-
-../bnc -nw -conf 20_CompareSp3.bnc -key sp3CompExclude G06,R 
-
Index: trunk/BNC/Example_Configs/27_RinexObs.sh
===================================================================
--- trunk/BNC/Example_Configs/27_RinexObs.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/27_RinexObs.sh	(revision 10753)
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+../bnc -nw -conf /dev/null \
+       -key mountPoints "//Example:Configs@euref-ip.net:2101/KIR000SWE0 RTCM_3.3 SWE 67.88 21.06 no 2;//Example:Configs@euref-ip.net:2101/FFMJ00DEU0 RTCM_3.3 DEU 50.09 8.66 no 2" \
+       -key logFile Output/RinexObs.log \
+       -key rnxPath Output \
+       -key rnxIntr "15 min" \
+       -key rnxSkel SKL \
+       -key rnxSampl "1 sec"\
+       -key rnxVersion 4 &
+
+psID=`echo $!`
+sleep 10
+kill $psID
+
Index: trunk/BNC/Example_Configs/28_CompareSp3.sh
===================================================================
--- trunk/BNC/Example_Configs/28_CompareSp3.sh	(revision 10753)
+++ trunk/BNC/Example_Configs/28_CompareSp3.sh	(revision 10753)
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+../bnc -nw -conf 20_CompareSp3.bnc -key sp3CompExclude G06,R 
+
Index: trunk/BNC/src/bnccaster.cpp
===================================================================
--- trunk/BNC/src/bnccaster.cpp	(revision 10697)
+++ trunk/BNC/src/bnccaster.cpp	(revision 10753)
@@ -71,6 +71,7 @@
   reopenOutFile();
 
+  // FeedEngine output port
+  // ----------------------
   int port = settings.value("outPort").toInt();
-
   if (port != 0) {
     _server = new QTcpServer;
@@ -136,4 +137,8 @@
     _miscSockets = 0;
   }
+
+  // RawUploadCaster
+  _bncRawUploadCaster = new bncRawUploadCaster();
+
 }
 
@@ -162,4 +167,5 @@
   delete _miscServer;
   delete _miscSockets;
+  delete _bncRawUploadCaster;
 }
 
@@ -281,4 +287,7 @@
   connect(getThread, SIGNAL(newRawData(QByteArray, QByteArray)),
           this,      SLOT(slotNewRawData(QByteArray, QByteArray)));
+
+  connect(getThread, SIGNAL(newRawData(QByteArray, QByteArray)),
+          _bncRawUploadCaster, SLOT(slotNewRawData(QByteArray, QByteArray)));
 
   connect(getThread, SIGNAL(getThreadFinished(QByteArray)),
Index: trunk/BNC/src/bnccaster.h
===================================================================
--- trunk/BNC/src/bnccaster.h	(revision 10697)
+++ trunk/BNC/src/bnccaster.h	(revision 10753)
@@ -33,4 +33,5 @@
 
 #include "satObs.h"
+#include "upload/bncrawuploadcaster.h"
 
 class bncGetThread;
@@ -88,4 +89,5 @@
    QTcpServer*                     _miscServer;
    QList<QTcpSocket*>*             _miscSockets;
+   bncRawUploadCaster*             _bncRawUploadCaster;
    QMap<std::string, QMap<t_prn, double> > _lockTimeMap;
    QMap<std::string, QMap<t_prn, int> >    _jumpCounterMap;
Index: trunk/BNC/src/bnccore.h
===================================================================
--- trunk/BNC/src/bnccore.h	(revision 10697)
+++ trunk/BNC/src/bnccore.h	(revision 10753)
@@ -73,4 +73,5 @@
   QMap<int, bncTableItem*> _uploadTableItems;
   QMap<int, bncTableItem*> _uploadEphTableItems;
+  QMap<int, bncTableItem*> _uploadRawTableItems;
 
  public slots:
Index: trunk/BNC/src/bncgetthread.cpp
===================================================================
--- trunk/BNC/src/bncgetthread.cpp	(revision 10697)
+++ trunk/BNC/src/bncgetthread.cpp	(revision 10753)
@@ -344,5 +344,5 @@
     _decoder = new bncRtnetDecoder();
   } else {
-    emit(newMessage(_staID + ": Unknown data format " + _format, true));
+    emit(newMessage(_staID + ": Unknown data format " + _format + ". Please change the format entry to ZERO or ZERO2FILE to forward unchanged data.", true));
     _isToBeDeleted = true;
     return failure;
Index: trunk/BNC/src/bnchelp.html
===================================================================
--- trunk/BNC/src/bnchelp.html	(revision 10697)
+++ trunk/BNC/src/bnchelp.html	(revision 10753)
@@ -247,37 +247,41 @@
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.16.3 <a href=#brdcsys>Satellite System </a><br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.16.4 <a href=#brdcsmpl>Sampling</a><br>
-&nbsp; &nbsp; &nbsp; 2.17 <a href=#streams><b>Streams Canvas</b></a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.1 <a href=#streamedit>Edit Streams</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.2 <a href=#streamdelete>Delete Stream</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.3 <a href=#streamconf>Reconfigure Stream Selection On-the-fly</a><br>
-&nbsp; &nbsp; &nbsp; 2.18 <a href=#logs><b>Logging Canvas</b></a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.1 <a href=#logfile>Log</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.2 <a href=#throughput>Throughput</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.3 <a href=#latency>Latency</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.4 <a href=#ppptab>PPP Plot</a><br>
-&nbsp; &nbsp; &nbsp; 2.19 <a href=#bottom><b>Bottom Menu Bar</b></a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1 <a href=#streamadd>Add Stream</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1 <a href=#streamcaster>Add Stream - Coming from Caster</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.1 <a href=#streamhost>Caster Host and Port</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.2 <a href=#streamtable>Casters Table</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.3 <a href=#streamuser>User and Password</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.4 <a href=#gettable>Get Table</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.5 <a href=#ntripv>Ntrip Version</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.1.6 <a href=#castermap>Map</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.2 <a href=#streamip>Add Stream - Coming from TCP/IP Port</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.3 <a href=#streamudp>Add Stream - Coming from UDP Port</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1.4 <a href=#streamser>Add Stream - Coming from Serial Port</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.2 <a href=#streamsdelete>Delete Stream</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.3 <a href=#streamsmap>Map</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.4 <a href=#start>Start</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.5 <a href=#stop>Stop</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.6 <a href=#contexthelp>Help? = Shift+F1</a><br>
-&nbsp; &nbsp; &nbsp; 2.20 <a href=#cmd><b>Command Line Options</b></a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1 <a href=#cmdVersion>Version</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.2 <a href=#cmdDisplay>Display</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.3 <a href=#nw>No Window Mode</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.4 <a href=#post>File Mode</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.5 <a href=#conffile>Configuration File</a><br>
-&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.6 <a href=#confopt>Configuration Options</a><br><br>
+&nbsp; &nbsp; &nbsp; 2.17 <a href=#upraw><b>Upload Raw Data - NtripServer Functionality</b></a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.1 <a href=#rawsourcemount>Source Mountpoint</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.2 <a href=#rawserver>Host &amp; Port</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.17.3 <a href=#rawmount>Upload Mountpoint, Ntrip Version, User, Password</a><br>
+&nbsp; &nbsp; &nbsp; 2.18 <a href=#streams><b>Streams Canvas</b></a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.1 <a href=#streamedit>Edit Streams</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.2 <a href=#streamdelete>Delete Stream</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.18.3 <a href=#streamconf>Reconfigure Stream Selection On-the-fly</a><br>
+&nbsp; &nbsp; &nbsp; 2.19 <a href=#logs><b>Logging Canvas</b></a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.1 <a href=#logfile>Log</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.2 <a href=#throughput>Throughput</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.3 <a href=#latency>Latency</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.19.4 <a href=#ppptab>PPP Plot</a><br>
+&nbsp; &nbsp; &nbsp; 2.20 <a href=#bottom><b>Bottom Menu Bar</b></a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1 <a href=#streamadd>Add Stream</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1 <a href=#streamcaster>Add Stream - Coming from Caster</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.1 <a href=#streamhost>Caster Host and Port</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.2 <a href=#streamtable>Casters Table</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.3 <a href=#streamuser>User and Password</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.4 <a href=#gettable>Get Table</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.5 <a href=#ntripv>Ntrip Version</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.1.6 <a href=#castermap>Map</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.2 <a href=#streamip>Add Stream - Coming from TCP/IP Port</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.3 <a href=#streamudp>Add Stream - Coming from UDP Port</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.1.4 <a href=#streamser>Add Stream - Coming from Serial Port</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.2 <a href=#streamsdelete>Delete Stream</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.3 <a href=#streamsmap>Map</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.4 <a href=#start>Start</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.5 <a href=#stop>Stop</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.20.6 <a href=#contexthelp>Help? = Shift+F1</a><br>
+&nbsp; &nbsp; &nbsp; 2.21 <a href=#cmd><b>Command Line Options</b></a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.1 <a href=#cmdVersion>Version</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.2 <a href=#cmdDisplay>Display</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.3 <a href=#nw>No Window Mode</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.4 <a href=#post>File Mode</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.5 <a href=#conffile>Configuration File</a><br>
+&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.21.6 <a href=#confopt>Configuration Options</a><br><br>
 <b>3.</b> <a href=#annex><b>Annex</b></a><br><br>
 &nbsp; &nbsp; &nbsp; 3.1 <a href=#rtcm>RTCM Standards</a><br>
@@ -1089,4 +1093,9 @@
 </li>
 
+<li>Configuration File 'UploadRaw.bnc'<br>
+Purpose: Forward the stream contents of the incoming stream BCEP00BKG0
+from products.igs-ip.net to another caster.
+</li>
+
 <li>Configuration File 'CompareSp3.bnc'<br>
 Purpose: Compare two SP3 files to calculate RMS values for orbit and clock
@@ -1107,5 +1116,5 @@
 'Example_Configs' to be the current working directory.
 
-<ol start="22">
+<ol start="23">
 <li>Shell Script 'RinexQC.sh'<br>
 Purpose: Equals configuration file example 'RinexQC.bnc', checks the quality of
@@ -1153,5 +1162,5 @@
 For specific applications you may like to use your own set of standard configuration options from a configuration file and update some of its content via command line. When using a configuration file together with command line configuration options in one BNC call, the command line configuration options will always overrule options contained in the configuration file.
 
-<ol start="27">
+<ol start="28">
 <li>Shell Script 'CompareSp3.sh'<br>
 Purpose: Equals configuration file example 'CompareSp3.bnc', compares two SP3
@@ -5563,5 +5572,41 @@
 <p>Figure 32: BNC producing Broadcast Ephemeris streams from globally distributed RTCM streams; upload in RTCM format to an Ntrip Broadcaster</p>
 
-<p><h4 id="streams">2.17 Streams Canvas</h4></p>
+<p><h4 id="upraw">2.17 Upload Raw Data - NtripServer Functionality</h4></p>
+<p>
+BNC can upload Raw Data streams in any format like a NtripServer. To fill the 'Upload Raw Data' table, hit the 'Add Row' button.
+</p>
+<p><h4 id="rawsourcemount">2.17.1 Source Mountpoint</h4></p>
+<p>
+Within the 'Source Mountpoint' field please specify the Source of data from the 'Streams' section below, which shall be forwarded without decoding.
+If the decoder string is not an accepted one ('RTCM_2.x', 'RTCM_3.x' and 'RTNET'), please change the decoder string to
+<ul>
+<li> 'ZERO' (forward the raw data) or </li>
+<li> 'ZERO2FILE' (forward and store the raw data)</li>
+</ul> in addition.
+</p>
+<p><h4 id="rawserver">2.17.2 Host &amp; Port - optional</h4></p>
+<p>
+Specify the 'Host' IP number or URL of an Ntrip Broadcaster to upload the stream. An empty option field means that you
+do not want to upload Broadcast Ephemeris.
+</p>
+<p>
+Enter the Ntrip Broadcaster's IP 'Port' number for stream upload. Note that Ntrip Broadcasters are often configured to provide
+access through more than one port, usually ports 80 and 2101. If you experience communication problems on port 80, you should
+try to use the alternative port(s).
+</p>
+
+<p><h4 id="rawmount">2.17.3 Mountpoint, Ntrip Version, User, Password - mandatory if 'Host' is set</h4></p>
+<p>
+BNC uploads a stream to the Ntrip Broadcaster by referring it to a dedicated mountpoint that has been set by its operator.
+Specify the mountpoint based on the details you received for your stream from the operator. It is often a 9-character ID (capital letters)
+plus an integer number.
+</p>
+<p>
+For stream upload the Ntrip Version can be chosen. An Ntrip version 1 upload is protected through an upload 'Password' only.
+For an Ntrip Version 2 upload an upload 'User' is required in addition. Enter the user name and the password you received
+from the Ntrip Broadcaster operator along with the mountpoint.
+</p>
+
+<p><h4 id="streams">2.18 Streams Canvas</h4></p>
 <p>
 Each stream on an Ntrip Broadcaster (and consequently on BNC) is defined using a unique source ID called mountpoint. An Ntrip Client like BNC
@@ -5587,5 +5632,5 @@
 </table>
 </p>
-<p><h4 id="streamedit">2.17.1 Edit Streams</h4></p>
+<p><h4 id="streamedit">2.18.1 Edit Streams</h4></p>
 <ul>
   <li>BNC automatically allocates one of its internal decoders to a stream based on the stream's 'format' and 'format-details' as given in the source-table.
@@ -5614,5 +5659,5 @@
 </ul>
 
-<p><h4 id="streamdelete">2.17.2 Delete Stream</h4></p>
+<p><h4 id="streamdelete">2.18.2 Delete Stream</h4></p>
 <p>
 To remove a stream from the 'Streams' canvas in the main window, highlight it by clicking on it and hit the 'Delete Stream' button.
@@ -5620,5 +5665,5 @@
 </p>
 
-<p><h4 id="streamconf">2.17.3 Reconfigure Stream Selection On-the-fly</h4></p>
+<p><h4 id="streamconf">2.18.3 Reconfigure Stream Selection On-the-fly</h4></p>
 <p>
 The streams selection can be changed on-the-fly without interrupting uninvolved threads in the running BNC process.
@@ -5636,5 +5681,5 @@
 </p>
 
-<p><h4 id="logs">2.18 Logging Canvas</h4></p>
+<p><h4 id="logs">2.19 Logging Canvas</h4></p>
 <p>
 The 'Logging Canvas' above the bottom menu bar on the main window labeled 'Log', 'Throughput', 'Latency', and 'PPP Plot'
@@ -5643,10 +5688,10 @@
 </p>
 
-<p><h4 id="logfile">2.18.1 Log</h4></p>
+<p><h4 id="logfile">2.19.1 Log</h4></p>
 <p>
 Records of BNC's activities are shown in the 'Log' tab. They can be saved into a file when a valid path is specified in the 'Logfile (full path)' field.
 </p>
 
-<p><h4 id="throughput">2.18.2 Throughput</h4></p>
+<p><h4 id="throughput">2.19.2 Throughput</h4></p>
 <p>
 The bandwidth consumption per stream is shown in the 'Throughput' tab in bits per second (bps) or kilobits per second (kbps).
@@ -5655,5 +5700,5 @@
 <p><img src="IMG/Figure33.png"width=1000/></p>
 <p>Figure 33: Bandwidth consumption of RTCM streams received by BNC</p>
-<p><h4 id="latency">2.18.3 Latency</h4></p>
+<p><h4 id="latency">2.19.3 Latency</h4></p>
 <p>
 The latency of observations in each incoming stream is shown in the 'Latency' tab in milliseconds or seconds.
@@ -5666,5 +5711,5 @@
 <p>Figure 34: Latency of RTCM streams received by BNC</p>
 
-<p><h4 id="ppptab">2.18.4 PPP Plot</h4></p>
+<p><h4 id="ppptab">2.19.4 PPP Plot</h4></p>
 <p>
 Precise Point Positioning time series of North (red), East (green) and Up (blue) coordinate components are shown in the 'PPP Plot' tab when
@@ -5677,5 +5722,5 @@
 <p>Figure 35: Example for time series plot of displacements produced by BNC</p>
 
-<p><h4 id="bottom">2.19 Bottom Menu Bar</h4></p>
+<p><h4 id="bottom">2.20 Bottom Menu Bar</h4></p>
 <p>
 The bottom menu bar allows to add or delete streams to or from BNC's configuration and to start or stop it.
@@ -5686,10 +5731,10 @@
 <p>Figure 36: Steam input communication links accepted by BNC</p>
 
-<p><h4 id="streamadd">2.19.1 Add Stream</h4></p>
+<p><h4 id="streamadd">2.20.1 Add Stream</h4></p>
 <p>
 Button 'Add Stream' allows you to pull streams either from an Ntrip Broadcaster or from a TCP/IP port, UPD port, or serial port.
 </p>
 
-<p><h4 id="streamcaster">2.19.1.1 Add Stream - Coming from Caster</h4></p>
+<p><h4 id="streamcaster">2.20.1.1 Add Stream - Coming from Caster</h4></p>
 <p>
 Button 'Add Stream' &gt; 'Coming from Caster' opens a window that allows users to select data streams from an Ntrip Broadcaster according
@@ -5697,5 +5742,5 @@
 </p>
 
-<p><h4 id="streamhost">2.19.1.1.1 Caster Host and Port - mandatory</h4></p>
+<p><h4 id="streamhost">2.20.1.1.1 Caster Host and Port - mandatory</h4></p>
 <p>
 Enter the Ntrip Broadcaster host IP and port number. Note that EUREF and IGS operate Ntrip Broadcasters
@@ -5705,5 +5750,5 @@
 </p>
 
-<p><h4 id="streamtable">2.19.1.1.2 Casters Table - optional</h4></p>
+<p><h4 id="streamtable">2.20.1.1.2 Casters Table - optional</h4></p>
 <p>
 It may be that you are not sure about your Ntrip Broadcaster's host and port number or you are interested in other
@@ -5715,5 +5760,5 @@
 <p>Figure 37: BNC's 'Select Broadcaster' table</p>
 
-<p><h4 id="streamuser">2.19.1.1.3 User and Password - mandatory for protected streams</h4></p>
+<p><h4 id="streamuser">2.20.1.1.3 User and Password - mandatory for protected streams</h4></p>
 <p>
 Streams on Ntrip Broadcasters may be protected. Enter a valid 'User' ID and 'Password' for access to protected streams.
@@ -5723,5 +5768,5 @@
 </p>
 
-<p><h4 id="gettable">2.19.1.1.4 Get Table</h4></p>
+<p><h4 id="gettable">2.20.1.1.4 Get Table</h4></p>
 <p>
 Use the 'Get Table' button to download the source-table from the Ntrip Broadcaster. Pay attention to data fields 'format' and 'format-details'.
@@ -5761,5 +5806,5 @@
 <p>Figure 38: Broadcaster source-table shown by BNC</p>
 
-<p><h4 id="ntripv">2.19.1.1.5 Ntrip Version - mandatory</h4></p>
+<p><h4 id="ntripv">2.20.1.1.5 Ntrip Version - mandatory</h4></p>
 <p>
 Some limitations and deficiencies of the Ntrip Version 1 stream transport protocol are solved in Ntrip Version 2.
@@ -5790,5 +5835,5 @@
 a mobile Internet Service Provider may not support it.
 </p>
-<p><h4 id="castermap">2.19.1.1.6 Map - optional</h4></p>
+<p><h4 id="castermap">2.20.1.1.6 Map - optional</h4></p>
 <p>
 Button 'Map' opens a window to show a distribution map of the caster's streams. You may like to zoom in or out using the mouse.
@@ -5798,5 +5843,5 @@
 <p>Figure 39: Stream distribution map shown by BNC as derived from Ntrip Broadcaster source-table</p>
 
-<p><h4 id="streamip">2.19.1.2 Add Stream - Coming from TCP/IP Port</h4></p>
+<p><h4 id="streamip">2.20.1.2 Add Stream - Coming from TCP/IP Port</h4></p>
 <p>
 Button 'Add Stream' &gt; 'Coming from TCP/IP Port' allows to retrieve streams via TCP directly from an IP address
@@ -5818,5 +5863,5 @@
 Note that this option works only if no proxy server is involved in the communication link.
 </p>
-<p><h4 id="streamudp">2.19.1.3 Add Stream - Coming from UDP Port</h4></p>
+<p><h4 id="streamudp">2.20.1.3 Add Stream - Coming from UDP Port</h4></p>
 <p>
 Button 'Add Stream' &gt; 'Coming from UDP Port' allows to pick up streams arriving directly at one of the local host's UDP ports without using the Ntrip transport protocol. For that you:
@@ -5833,5 +5878,5 @@
 <p>
 
-<p><h4 id="streamser">2.19.1.4 Add Stream - Coming from Serial Port</h4></p>
+<p><h4 id="streamser">2.20.1.4 Add Stream - Coming from Serial Port</h4></p>
 <p>
 Button 'Add Stream' &gt; 'Coming from Serial Port' allows to retrieve streams from a GNSS receiver via serial port without using the Ntrip transport protocol. For that you:
@@ -5872,10 +5917,10 @@
 <p>Figure 40: BNC configuration for pulling a stream via serial port</p>
 
-<p><h4 id="streamsdelete">2.19.2 Delete Stream</h4></p>
+<p><h4 id="streamsdelete">2.20.2 Delete Stream</h4></p>
 <p>
 Button 'Delete Stream' allows you to delete streams previously selected for retrieval as listed under the 'Streams' canvas on BNC's main window.
 </p>
 
-<p><h4 id="streamsmap">2.19.3 Map</h4></p>
+<p><h4 id="streamsmap">2.20.3 Map</h4></p>
 <p>
 Button 'Map' opens a window to show a distribution map of the streams selected for retrieval as listed under the 'Streams' canvas.
@@ -5883,5 +5928,5 @@
 </p>
 
-<p><h4 id="start">2.19.4 Start</h4></p>
+<p><h4 id="start">2.20.4 Start</h4></p>
 <p>
 Hit 'Start' to start retrieving, decoding or converting GNSS data streams in real-time.
@@ -5890,10 +5935,10 @@
 </p>
 
-<p><h4 id="stop">2.19.5 Stop</h4></p>
+<p><h4 id="stop">2.20.5 Stop</h4></p>
 <p>
 Hit the 'Stop' button in order to stop BNC.
 </p>
 
-<p><h4 id="contexthelp">2.19.6 Help? = Shift+F1</h4></p>
+<p><h4 id="contexthelp">2.20.6 Help? = Shift+F1</h4></p>
 <p>
 BNC comes with a <i>What's This</i> help system providing information about its functionality and usage.
@@ -5902,5 +5947,5 @@
 The dialogs on some operating systems may provide a '?' button that users can click; click the relevant widget to pop up the help text.
 </p>
-<p><h4 id="cmd">2.20 Command Line Options</h4></p>
+<p><h4 id="cmd">2.21 Command Line Options</h4></p>
 <p>
 Command line options are available to run BNC in 'no window' mode or let it read previously recorded input offline from one or
@@ -5919,5 +5964,5 @@
 provides a list of all available command line options.
 </p>
-<p><h4 id="cmdVersion">2.20.1 Version - optional</h4></p>
+<p><h4 id="cmdVersion">2.21.1 Version - optional</h4></p>
 <p>
 Command line option '--version' lets BNC print its version number.
@@ -5927,5 +5972,5 @@
 &nbsp; &nbsp; &nbsp; bnc --version (MS Windows: bnc.exe --version | more)
 </p>
-<p><h4 id="cmdDisplay">2.20.2 Display - optional</h4></p>
+<p><h4 id="cmdDisplay">2.21.2 Display - optional</h4></p>
 <p>
 On systems which support graphics, command line option '--display' forces BNC to present the BNC window on the specified display.
@@ -5935,5 +5980,5 @@
 &nbsp; &nbsp; &nbsp; bnc.exe --display localhost:10.0
 </p>
-<p><h4 id="nw">2.20.3 No Window Mode - optional</h4></p>
+<p><h4 id="nw">2.21.3 No Window Mode - optional</h4></p>
 <p>
 Apart from its regular windows mode, BNC can be started on all systems as a batch job with command line option '-nw'.
@@ -5970,5 +6015,5 @@
 </p></pre>
 
-<p><h4 id="post">2.20.4 File Mode - optional</h4></p>
+<p><h4 id="post">2.21.4 File Mode - optional</h4></p>
 <p>
 Although BNC is primarily a real-time online tool, for debugging purposes it can be run offline to read data from a file
@@ -5986,5 +6031,5 @@
 <p>Note further that option '--file' forces BNC to apply the '-nw' option for running in 'no window' mode.
 </p>
-<p><h4 id="conffile">2.20.5 Configuration File - optional</h4></p>
+<p><h4 id="conffile">2.21.5 Configuration File - optional</h4></p>
 The default configuration filename is 'BNC.bnc'. You may change this name at startup time using command line option '--conf &lt;<u>confFileName</u>&gt;'. This allows running several BNC jobs in parallel on the same host using different sets of configuration options. <u>confFileName</u> stands either for the full path to a configuration file or just for a filename. If you introduce only a filename, the corresponding file will be saved in the current working directory from where BNC is started.
 </p>
@@ -5996,5 +6041,5 @@
 This leads to a BNC job using configuration file 'MyConfig.bnc'. The configuration file will be saved in the current working directory.
 </p>
-<p><h4 id="confopt">2.20.6 Configuration Options - optional</h4></p>
+<p><h4 id="confopt">2.21.6 Configuration Options - optional</h4></p>
 <p>
 BNC applies options from the configuration file but allows updating every one of them on the command line while the content of the configuration file remains unchanged. Note the following syntax for Command Line Interface (CLI) options:
@@ -6496,7 +6541,11 @@
 
 Upload Ephemeris Panel keys:
-   uploadEphMountpointsOut {Upload corrections table [character string, semicolon separated list, each element in quotation marks, example:
+   uploadEphMountpointsOut {Upload ephemeris table [character string, semicolon separated list, each element in quotation marks, example:
                            "products.igs-ip.net,443,BCEP00BKG0,2s,usr,pass,ALL;products.igs-ip.net,443,BCEP01BKG0,2s,usr,pass,G"]}
    uploadSamplRtcmEph      {Stream upload sampling rate [integer number of seconds: 0|5|10|15|20|25|30|35|40|45|50|55|60]}
+
+Upload Raw Data Panel keys:
+   uploadRawMountpointsOut {Upload raw data table [character string, semicolon separated list, each element in quotation marks, example:
+                           "TCP00DEU0,products.igs-ip.net,443,SSRA00BKG0,2s,usr,pass;TCP01DEU0,products.igs-ip.net,443,SSRA01BKG0,2s,usr,pass"]}
 
 Add Stream keys:
Index: trunk/BNC/src/bncmain.cpp
===================================================================
--- trunk/BNC/src/bncmain.cpp	(revision 10697)
+++ trunk/BNC/src/bncmain.cpp	(revision 10753)
@@ -341,7 +341,11 @@
         "\n"
         "Upload Ephemeris Panel keys:\n"
-        "   uploadEphMountpointsOut {Upload corrections table [character string, semicolon separated list, each element in quotation marks, example:\n"
+        "   uploadEphMountpointsOut {Upload ephemeris table [character string, semicolon separated list, each element in quotation marks, example:\n"
         "                           \"products.igs-ip.net,443,BCEP00BKG0,2s,usr,pass,ALL;products.igs-ip.net,443,BCEP01BKG0,2s,usr,pass,G\"]}\n"
         "   uploadSamplRtcmEph      {Stream upload sampling rate [integer number of seconds: 0|5|10|15|20|25|30|35|40|45|50|55|60]}\n"
+        "\n"
+        "Upload Raw Data Panel keys:\n"
+        "   uploadRawMountpointsOut {Upload raw data table [character string, semicolon separated list, each element in quotation marks, example:\n"
+        "                           \"TCP00DEU0,products.igs-ip.net,443,SSRA00BKG0,2s,usr,pass;TCP01DEU0,products.igs-ip.net,443,SSRA01BKG0,2s,usr,pass\"]}\n"
         "\n"
         "Add Stream keys:\n"
Index: trunk/BNC/src/bncsettings.cpp
===================================================================
--- trunk/BNC/src/bncsettings.cpp	(revision 10697)
+++ trunk/BNC/src/bncsettings.cpp	(revision 10753)
@@ -62,10 +62,10 @@
         setValue_p("font", "");
         setValue_p("casterUrlList", (QStringList()
-            << "http://user:pass@euref-ip.net:2101"
-            << "http://user:pass@igs-ip.net:2101"
-            << "http://user:pass@products.igs-ip.net:2101"
-            << "http://user:pass@mgex.igs-ip.net:2101"));
+            << "http://user:pass@euref-ip.net:443"
+            << "http://user:pass@igs-ip.net:443"
+            << "http://user:pass@products.igs-ip.net:443"
+            << "http://user:pass@mgex.igs-ip.net:443"));
         setValue_p("mountPoints", "");
-        setValue_p("ntripVersion", "2");
+        setValue_p("ntripVersion", "2s");
         // Network
         setValue_p("proxyHost", "");
@@ -181,5 +181,4 @@
         setValue_p("cmbSbas", "0");
         setValue_p("cmbNavic", "0");
-
         // Upload (clk)
         setValue_p("uploadMountpointsOut", "");
@@ -204,7 +203,9 @@
         setValue_p("trafo_scr", "");
         setValue_p("trafo_t0", "");
-        // Upload (eph)
+        // Upload Eph
         setValue_p("uploadEphMountpointsOut", "");
         setValue_p("uploadSamplRtcmEph", "5");
+        // Upload Raw
+        setValue_p("uploadRawMountpointsOut", "");
     }
 }
Index: trunk/BNC/src/bncwindow.cpp
===================================================================
--- trunk/BNC/src/bncwindow.cpp	(revision 10697)
+++ trunk/BNC/src/bncwindow.cpp	(revision 10753)
@@ -561,10 +561,10 @@
     // -------------
     _uploadTable = new QTableWidget(0, 16);
-    _uploadTable->setHorizontalHeaderLabels(QString("Host, Port, Mount, Ntrip, User, Password, System, Format, CoM, SP3 File, RNX File, BSX File, PID, SID, IOD, bytes").split(","));
+    _uploadTable->setHorizontalHeaderLabels(QString("Host, Port, Mountpoint, Ntrip, User, Password, System, Format, CoM, SP3 File, RNX File, BSX File, PID, SID, IOD, Bytes").split(","));
     _uploadTable->setSelectionMode(QAbstractItemView::ExtendedSelection);
     _uploadTable->setSelectionBehavior(QAbstractItemView::SelectRows);
     _uploadTable->horizontalHeader()->resizeSection(0, 13 * ww);
     _uploadTable->horizontalHeader()->resizeSection(1, 5 * ww);
-    _uploadTable->horizontalHeader()->resizeSection(2, 6 * ww);
+    _uploadTable->horizontalHeader()->resizeSection(2, 10 * ww);
     _uploadTable->horizontalHeader()->resizeSection(3, 6 * ww);
     _uploadTable->horizontalHeader()->resizeSection(4, 8 * ww);
@@ -657,8 +657,8 @@
     // Upload RTCM3 Ephemeris
     // ----------------------
-    _uploadEphTable = new QTableWidget(0, 6);
+    _uploadEphTable = new QTableWidget(0, 7);
     _uploadEphTable->setColumnCount(8);
     _uploadEphTable->setRowCount(0);
-    _uploadEphTable->setHorizontalHeaderLabels(QString("Host, Port, Mount,  Ntrip, User, Password, System, bytes").split(","));
+    _uploadEphTable->setHorizontalHeaderLabels(QString("Host, Port, Mountpoint,  Ntrip, User, Password, System, Bytes").split(","));
     _uploadEphTable->setSelectionMode(QAbstractItemView::ExtendedSelection);
     _uploadEphTable->setSelectionBehavior(QAbstractItemView::SelectRows);
@@ -668,7 +668,7 @@
     _uploadEphTable->horizontalHeader()->resizeSection(3, 6 * ww);
     _uploadEphTable->horizontalHeader()->resizeSection(4, 8 * ww);
-    _uploadEphTable->horizontalHeader()->resizeSection(3, 8 * ww);
-    _uploadEphTable->horizontalHeader()->resizeSection(5, 10 * ww);
-    _uploadEphTable->horizontalHeader()->resizeSection(6, 12 * ww);
+    _uploadEphTable->horizontalHeader()->resizeSection(5, 8 * ww);
+    _uploadEphTable->horizontalHeader()->resizeSection(6, 10 * ww);
+    _uploadEphTable->horizontalHeader()->resizeSection(7, 12 * ww);
 #if QT_VERSION < 0x050000
     _uploadEphTable->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
@@ -701,4 +701,35 @@
         enableWidget(false, _uploadSamplRtcmEphSpinBox);
     }
+
+    // Upload Raw data
+    // ----------------------
+    _uploadRawTable = new QTableWidget(0, 7);
+    _uploadRawTable->setColumnCount(8);
+    _uploadRawTable->setRowCount(0);
+    _uploadRawTable->setHorizontalHeaderLabels(QString("Source Mountpoint, Host, Port, Upload Mountpoint,  Ntrip, User, Password, Bytes").split(","));
+    _uploadRawTable->setSelectionMode(QAbstractItemView::ExtendedSelection);
+    _uploadRawTable->setSelectionBehavior(QAbstractItemView::SelectRows);
+    _uploadRawTable->horizontalHeader()->resizeSection(0, 13 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(1, 13 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(2, 5 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(3, 13 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(4, 6 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(5, 8 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(6, 8 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(7, 10 * ww);
+    _uploadRawTable->horizontalHeader()->resizeSection(8, 12 * ww);
+#if QT_VERSION < 0x050000
+    _uploadRawTable->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
+#else
+    _uploadRawTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive);
+#endif
+    _uploadRawTable->horizontalHeader()->setDefaultAlignment(Qt::AlignLeft);
+
+    connect(_uploadRawTable, SIGNAL(itemSelectionChanged()), SLOT(slotBncTextChanged()));
+
+    QPushButton* addUploadRawRowButton = new QPushButton("Add Row");
+    addUploadRawRowButton->setMaximumWidth(9 * ww);
+    QPushButton* delUploadRawRowButton = new QPushButton("Del Row");
+    delUploadRawRowButton->setMaximumWidth(9 * ww);
 
     // Canvas with Editable Fields
@@ -728,4 +759,5 @@
     QWidget* uploadgroup = new QWidget();
     QWidget* uploadEphgroup = new QWidget();
+    QWidget* uploadRawgroup = new QWidget();
     _aogroup->addTab(pgroup, tr("Network"));
     _aogroup->addTab(ggroup, tr("General"));
@@ -746,4 +778,5 @@
     _aogroup->addTab(uploadgroup, tr("Upload Corrections"));
     _aogroup->addTab(uploadEphgroup, tr("Upload Ephemeris"));
+    _aogroup->addTab(uploadRawgroup, tr("Upload Raw Data"));
 
     // Log Tab
@@ -1365,5 +1398,5 @@
     populateUploadTable();
 
-    uploadLayout->addWidget(new QLabel("Upload RTCM Version 3 Broadcast Corrections to caster.<br>"));
+    uploadLayout->addWidget(new QLabel("Upload RTCM Version 3 Broadcast Corrections to Broadcaster.<br>"));
     uploadLayout->addWidget(_uploadTable);
     uploadLayout->addLayout(uploadHlpLayout);
@@ -1386,5 +1419,5 @@
     populateUploadEphTable();
 
-    uploadLayoutEph->addWidget(new QLabel("Upload concatenated RTCMv3 Broadcast Ephemeris to caster.<br>"));
+    uploadLayoutEph->addWidget(new QLabel("Upload RTCM Version 3 Broadcast Ephemeris to Broadcaster.<br>"));
     uploadLayoutEph->addWidget(_uploadEphTable);
     uploadLayoutEph->addLayout(uploadHlpLayoutEph);
@@ -1392,4 +1425,23 @@
     uploadEphgroup->setLayout(uploadLayoutEph);
 
+
+    // Upload Layout (Raw Data)
+    // -------------------------
+    QGridLayout* uploadHlpLayoutRaw = new QGridLayout();
+
+    connect(addUploadRawRowButton, SIGNAL(clicked()), this, SLOT(slotAddUploadRawRow()));
+    connect(delUploadRawRowButton, SIGNAL(clicked()), this, SLOT(slotDelUploadRawRow()));
+
+    uploadHlpLayoutRaw->addWidget(addUploadRawRowButton, 0, 0);
+    uploadHlpLayoutRaw->addWidget(delUploadRawRowButton, 0, 1);
+
+    QBoxLayout* uploadLayoutRaw = new QBoxLayout(QBoxLayout::TopToBottom);
+    populateUploadRawTable();
+
+    uploadLayoutRaw->addWidget(new QLabel("Upload Raw Data to Broadcaster (Ntrip Server Functionality).<br>"));
+    uploadLayoutRaw->addWidget(_uploadRawTable);
+    uploadLayoutRaw->addLayout(uploadHlpLayoutRaw);
+
+    uploadRawgroup->setLayout(uploadLayoutRaw);
 
     // Main Layout
@@ -1503,5 +1555,5 @@
     _miscPortLineEdit->setWhatsThis(tr("<p>BNC can output an incoming stream through an IP port of your local host.</p><p>Specify a port number to activate this function. In this case, the stream content remains untouched; BNC does not decode or reformat the data for this output.</p><p> If the decoder string is not an accepted one ('RTCM_2.x', 'RTCM_3.x' and 'RTNET'), please change the decoder string to <ul>"
         "<li> 'ZERO' (forward the raw data) or </li>"
-        "<li> 'ZERO2File' (forward and store the raw data)</li> </ul> in addition. <i>[key: miscPort]</i></p>"));
+        "<li> 'ZERO2FILE' (forward and store the raw data)</li> </ul> in addition. <i>[key: miscPort]</i></p>"));
 
     // WhatsThis, PPP (1)
@@ -1606,5 +1658,5 @@
     // WhatsThis, Combine Corrections
     // ------------------------------
-    _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock correction streams in real-time to produce, encode, upload and save a combination of correctors coming from different providers. To add a line to the 'Combine Corrections' table hit the 'Add Row' button, double click on the 'Mountpoint' field to specify a Broadcast Ephemeris Correction mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Double click on the 'Weight Factor' field to enter a weight factor to be applied for this stream in the combination. A Factor greater than 1 will enlarge the sigma of the clock pseudo-observations and with it down-weight its contribution. Finally, double click on the 'Exclude Satellites' field and specify satellites, to exclude them for an individual AC. An entry 'G04,G31,R' means to excludes GPS satellites PRN 4 and 31 as well as all GLONASS satellites from one individual AC. Default is an empty option field, meaning that no satellite is excluded from this individual AC.</p><p>Note that the orbit information in the resulting combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides orbit and clock correction streams BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris Correction stream in the 'Combine Corrections' table. Instead of combining corrections BNC will then add the corrections to the Broadcast Ephemeris with the possibility to save final orbit and clock results in SP3 and/or Clock RINEX format. <i>[key: cmbStreams]</i></p>"));
+    _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock correction streams in real-time to produce, encode, upload and save a combination of correctors coming from different providers. </p><p>To add a line to the 'Combine Corrections' table hit the 'Add Row' button, double click on the 'Mountpoint' field to specify a Broadcast Ephemeris Correction mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Double click on the 'Weight Factor' field to enter a weight factor to be applied for this stream in the combination. A Factor greater than 1 will enlarge the sigma of the clock pseudo-observations and with it down-weight its contribution. Finally, double click on the 'Exclude Satellites' field and specify satellites, to exclude them for an individual AC. An entry 'G04,G31,R' means to excludes GPS satellites PRN 4 and 31 as well as all GLONASS satellites from one individual AC. Default is an empty option field, meaning that no satellite is excluded from this individual AC.</p><p>Note that the orbit information in the resulting combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides orbit and clock correction streams BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris Correction stream in the 'Combine Corrections' table. Instead of combining corrections BNC will then add the corrections to the Broadcast Ephemeris with the possibility to save final orbit and clock results in SP3 and/or Clock RINEX format. <i>[key: cmbStreams]</i></p>"));
     addCmbRowButton->setWhatsThis(tr("<p>Hit 'Add Row' button to add another line to the 'Combine Corrections' table.</p>"));
     delCmbRowButton->setWhatsThis(tr("<p>Hit 'Delete' button to delete the highlighted line(s) from the 'Combine Corrections' table.</p>"));
@@ -1625,5 +1677,5 @@
     // WhatsThis, Upload Corrections
     // -----------------------------
-    _uploadTable->setWhatsThis(tr("<p>BNC can upload clock and orbit corrections to Broadcast Ephemeris (Broadcast Corrections) as well as Code Biases in different SSR formats. You may have a situation where clocks, orbits and code biases come from an external Real-time Network Engine (1) or a situation where clock and orbit corrections are combined within BNC (2).</p><p>(1) BNC identifies a stream as coming from a Real-time Network Engine if its format is specified as 'RTNET' and hence its decoder string in the 'Streams' canvas is 'RTNET'. It encodes and uploads that stream to the specified Ntrip Broadcaster Host and Port</p><p>(2) BNC understands that it is expected to encode and upload combined Broadcast Ephemeris Corrections if you specify correction streams in the 'Combine Corrections' table.</p><p>To fill the 'Upload Corrections' table, hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an Ntrip Broadcaster and hit Enter. Select the Ntrip Version that shall be used for data upload. Then double click on the 'Port', 'Mount' and 'Password' fields to enter the Ntrip Broadcaster IP port (default is 80), the mountpoint and the stream upload password. If Ntrip Version 2 is chosen, click to the 'User' field to enter a stream upload user name. An empty 'Host' option field means that you don't want to upload corrections.</p><p>Select a target coordinate reference System (e.g. IGS20) for outgoing clock and orbit corrections.</p><p>Select a target SSR format (e.g. IGS-SSR) for outgoing clock and orbit corrections.</p><p>By default orbit and clock corrections refer to Antenna Phase Center (APC). Tick 'CoM' to refer uploaded corrections to Center of Mass instead of APC.</p><p>Specify a path for saving generated Broadcast Corrections plus Broadcast Ephemeris as SP3 orbit files. If the specified directory does not exist, BNC will not create such files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.SP3.</p><p>Specify a path for saving generated Broadcast Correction clocks plus Broadcast Ephemeris clocks as Clock RINEX files. If the specified directory does not exist, BNC will not create Clock RINEX files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.CLK.</p><p>Specify a path for saving generated Code Biases as SINEX Bias files. If the specified directory does not exist, BNC will not create SINEX Bias files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.BIA.</p><p>Note that '${V3PROD}' produces the time stamp in the filename, which is related to the RINEX version 3 filename concept.</p><p>Finally, specify a SSR Provider ID (issued by RTCM), SSR Solution ID, and SSR Issue of Data number.</p><p>In case the 'Combine Corrections' table contains only one Broadcast Correction stream, BNC will add that stream content to the Broadcast Ephemeris to save results in files specified via SP3 and/or Clock RINEX file path. You should then define only the SP3 and Clock RINEX file path and no further option in the 'Upload Corrections' table. <i>[key: uploadMountpointsOut]</i></p>"));
+    _uploadTable->setWhatsThis(tr("<p>BNC can upload clock and orbit corrections to Broadcast Ephemeris (Broadcast Corrections) as well as Code Biases in different SSR formats. You may have a situation where clocks, orbits and code biases come from an external Real-time Network Engine (1) or a situation where clock and orbit corrections are combined within BNC (2).</p><p>(1) BNC identifies a stream as coming from a Real-time Network Engine if its format is specified as 'RTNET' and hence its decoder string in the 'Streams' canvas is 'RTNET'. It encodes and uploads that stream to the specified Ntrip Broadcaster Host and Port</p><p>(2) BNC understands that it is expected to encode and upload combined Broadcast Ephemeris Corrections if you specify correction streams in the 'Combine Corrections' table.</p><p>To fill the 'Upload Corrections' table, hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an Ntrip Broadcaster and hit Enter. Select the Ntrip Version that shall be used for data upload. Then double click on the 'Port', 'Mountpoint' and 'Password' fields to enter the Ntrip Broadcaster IP port, the mountpoint and the stream upload password. If Ntrip Version 2 is chosen, click to the 'User' field to enter a stream upload user name. An empty 'Host' option field means that you don't want to upload corrections.</p><p>Select a target coordinate reference System (e.g. IGS20) for outgoing clock and orbit corrections.</p><p>Select a target SSR format (e.g. IGS-SSR) for outgoing clock and orbit corrections.</p><p>By default orbit and clock corrections refer to Antenna Phase Center (APC). Tick 'CoM' to refer uploaded corrections to Center of Mass instead of APC.</p><p>Specify a path for saving generated Broadcast Corrections plus Broadcast Ephemeris as SP3 orbit files. If the specified directory does not exist, BNC will not create such files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.SP3.</p><p>Specify a path for saving generated Broadcast Correction clocks plus Broadcast Ephemeris clocks as Clock RINEX files. If the specified directory does not exist, BNC will not create Clock RINEX files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.CLK.</p><p>Specify a path for saving generated Code Biases as SINEX Bias files. If the specified directory does not exist, BNC will not create SINEX Bias files. The following is a path example for a Linux system: /home/user/BKG0MGXRTS${V3PROD}.BIA.</p><p>Note that '${V3PROD}' produces the time stamp in the filename, which is related to the RINEX version 3 filename concept.</p><p>Finally, specify a SSR Provider ID (issued by RTCM), SSR Solution ID, and SSR Issue of Data number.</p><p>In case the 'Combine Corrections' table contains only one Broadcast Correction stream, BNC will add that stream content to the Broadcast Ephemeris to save results in files specified via SP3 and/or Clock RINEX file path. You should then define only the SP3 and Clock RINEX file path and no further option in the 'Upload Corrections' table. <i>[key: uploadMountpointsOut]</i></p>"));
     addUploadRowButton->setWhatsThis(tr("<p>Hit 'Add Row' button to add another line to the 'Upload Corrections' table.</p>"));
     delUploadRowButton->setWhatsThis(tr("<p>Hit 'Del Row' button to delete the highlighted line(s) from the 'Upload Corrections' table.</p>"));
@@ -1638,8 +1690,17 @@
     // WhatsThis, Upload Ephemeris
     // ---------------------------
-    _uploadEphTable->setWhatsThis(tr("<p>BNC can upload Broadcast Ephemeris streams in RTCM Version 3 format. To fill the 'Upload Ephemeris' table, hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an Ntrip Broadcaster and hit Enter. Select the Ntrip Version that shall be used for data upload. Then double click on the 'Port', 'Mount' and 'Password' fields to enter the Ntrip Broadcaster IP port (default is 80), the mountpoint and the stream upload password. If Ntrip Version 2 is chosen, click to the 'User' field to enter a stream upload user name. Specify the satellite system(s) that shall be part of the uploaded stream (e.g. G for GPS or GRE for GPS+GLONASS+Galileo, or ALL). <i>[key: uploadEphHost]</i></p>"));
+    _uploadEphTable->setWhatsThis(tr("<p>BNC can upload Broadcast Ephemeris streams in RTCM Version 3 format. </p><p>To fill the 'Upload Ephemeris' table, hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an Ntrip Broadcaster and hit Enter. Select the Ntrip Version that shall be used for data upload. Then double click on the 'Port', 'Mountpoint' and 'Password' fields to enter the Ntrip Broadcaster IP port, the mountpoint and the stream upload password. If Ntrip Version 2 is chosen, click to the 'User' field to enter a stream upload user name. Specify the satellite system(s) that shall be part of the uploaded stream (e.g. G for GPS or GRE for GPS+GLONASS+Galileo, or ALL). <i>[key: uploadEphMountpointsOut]</i></p>"));
     addUploadEphRowButton->setWhatsThis(tr("<p>Hit 'Add Row' button to add another line to the 'Upload Ephemeris' table.</p>"));
     delUploadEphRowButton->setWhatsThis(tr("<p>Hit 'Del Row' button to delete the highlighted line(s) from the 'Upload Ephemeris' table.</p>"));
     _uploadSamplRtcmEphSpinBox->setWhatsThis(tr("<p>Select the Broadcast Ephemeris sampling interval in seconds.</p><p>Default is '5', meaning that a complete set of Broadcast Ephemeris is uploaded every 5 seconds. <i>[key: uploadSamplRtcmEph]</i></p>"));
+
+    // WhatsThis, Upload Raw Data
+    // ---------------------------
+    _uploadRawTable->setWhatsThis(tr("<p>BNC can upload Raw Data streams in any format like a NtripServer. </p><p>To fill the 'Upload Raw Data' table, hit the 'Add Row' button and double click on the 'Source Mountpoint' field to enter the Source of data from the 'Streams' section below, which shall be forwarded without decoding and hit Enter. Double click on the 'Host' field to enter the IP or URL of an Ntrip Broadcaster and hit Enter. Select the Ntrip Version that shall be used for data upload. Then double click on the 'Port', 'Upload Mountpoint' and 'Password' fields to enter the Ntrip Broadcaster IP port, the stream upload mountpoint and password. If Ntrip Version 2 is chosen, click to the 'User' field to enter a stream upload user name. </p><p> If the decoder string is not an accepted one ('RTCM_2.x', 'RTCM_3.x' and 'RTNET'), please change the decoder string to <ul>"
+        "<li> 'ZERO' (forward the raw data) or </li>"
+        "<li> 'ZERO2FILE' (forward and store the raw data)</li> </ul> in addition <i>[key: uploadRawMountpointsOut]</i></p>"));
+    addUploadEphRowButton->setWhatsThis(tr("<p>Hit 'Add Row' button to add another line to the 'Upload Raw Data' table.</p>"));
+    delUploadEphRowButton->setWhatsThis(tr("<p>Hit 'Del Row' button to delete the highlighted line(s) from the 'Upload Raw Data' table.</p>"));
+
 
     // WhatsThis, Streams Canvas
@@ -1781,6 +1842,7 @@
     delete _cmbNavicCheckBox;
     delete _cmbBsxFile;
+    delete _uploadSamplRtcmEphCorrComboBox;
     _uploadEphTable->deleteLater();
-    delete _uploadSamplRtcmEphCorrComboBox;
+    _uploadRawTable->deleteLater();
     _uploadTable->deleteLater();
     delete _uploadIntrComboBox;
@@ -2151,32 +2213,60 @@
     QStringList uploadEphMountpointsOut;
     for (int iRow = 0; iRow < _uploadEphTable->rowCount(); iRow++) {
-        QString hlp;
-        for (int iCol = 0; iCol < _uploadEphTable->columnCount(); iCol++) {
-            if (_uploadEphTable->cellWidget(iRow, iCol) &&
-                (iCol == 3 || iCol == 4 || iCol == 5 || iCol == 6)) {
-                if (iCol == 3) {
-                    QComboBox* ntripversion = (QComboBox*)(_uploadEphTable->cellWidget(iRow, iCol));
-                    hlp += ntripversion->currentText() + ",";
-                }
-                else if (iCol == 4) {
-                    QLineEdit* user = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
-                    hlp += user->text() + ",";
-                }
-                else if (iCol == 5) {
-                    QLineEdit* passwd = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
-                    hlp += passwd->text() + ",";
-                }
-                else if (iCol == 6) {
-                    QLineEdit* system = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
-                    hlp += system->text() + ",";
-                }
+      QString hlp;
+      for (int iCol = 0; iCol < _uploadEphTable->columnCount(); iCol++) {
+          if (_uploadEphTable->cellWidget(iRow, iCol) &&
+              (iCol == 3 || iCol == 4 || iCol == 5 || iCol == 6)) {
+              if      (iCol == 3) {
+                  QComboBox* ntripversion = (QComboBox*)(_uploadEphTable->cellWidget(iRow, iCol));
+                  hlp += ntripversion->currentText() + ",";
+              }
+              else if (iCol == 4) {
+                  QLineEdit* user = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
+                  hlp += user->text() + ",";
+              }
+              else if (iCol == 5) {
+                  QLineEdit* passwd = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
+                  hlp += passwd->text() + ",";
+              }
+              else if (iCol == 6) {
+                  QLineEdit* system = (QLineEdit*)(_uploadEphTable->cellWidget(iRow, iCol));
+                  hlp += system->text() + ",";
+              }
+          }
+          else if (_uploadEphTable->item(iRow, iCol)) {
+              hlp += _uploadEphTable->item(iRow, iCol)->text() + ",";
+          }
+      }
+      if (!hlp.isEmpty()) {
+          uploadEphMountpointsOut << hlp;
+      }
+    }
+
+    QStringList uploadRawMountpointsOut;
+    for (int iRow = 0; iRow < _uploadRawTable->rowCount(); iRow++) {
+      QString hlp;
+      for (int iCol = 0; iCol < _uploadRawTable->columnCount(); iCol++) {
+        if (_uploadRawTable->cellWidget(iRow, iCol) &&
+            (iCol == 4 || iCol == 5 || iCol == 6)) {
+            if      (iCol == 4) {
+                QComboBox* ntripversion = (QComboBox*)(_uploadRawTable->cellWidget(iRow, iCol));
+                hlp += ntripversion->currentText() + ",";
             }
-            else if (_uploadEphTable->item(iRow, iCol)) {
-                hlp += _uploadEphTable->item(iRow, iCol)->text() + ",";
+            else if (iCol == 5) {
+                QLineEdit* user = (QLineEdit*)(_uploadRawTable->cellWidget(iRow, iCol));
+                hlp += user->text() + ",";
             }
-        }
-        if (!hlp.isEmpty()) {
-            uploadEphMountpointsOut << hlp;
-        }
+            else if (iCol == 6) {
+                QLineEdit* passwd = (QLineEdit*)(_uploadRawTable->cellWidget(iRow, iCol));
+                hlp += passwd->text() + ",";
+            }
+        }
+        else if (_uploadRawTable->item(iRow, iCol)) {
+            hlp += _uploadRawTable->item(iRow, iCol)->text() + ",";
+        }
+      }
+      if (!hlp.isEmpty()) {
+          uploadRawMountpointsOut << hlp;
+      }
     }
 
@@ -2223,5 +2313,6 @@
     settings.setValue("outSampl", _outSamplComboBox->currentText());
     settings.setValue("outFile", _outFileLineEdit->text());
-    settings.setValue("outLockTime", _outLockTimeCheckBox->checkState());    settings.setValue("outUPort", _outUPortLineEdit->text());
+    settings.setValue("outLockTime", _outLockTimeCheckBox->checkState());
+    settings.setValue("outUPort", _outUPortLineEdit->text());
     // Serial Output
     settings.setValue("serialMountPoint", _serialMountPointLineEdit->text());
@@ -2303,5 +2394,11 @@
     }
     settings.setValue("uploadSamplRtcmEph", _uploadSamplRtcmEphSpinBox->value());
-
+    // Upload Raw Data
+    if (!uploadRawMountpointsOut.isEmpty()) {
+        settings.setValue("uploadRawMountpointsOut", uploadRawMountpointsOut);
+    }
+    else {
+        settings.setValue("uploadRawMountpointsOut", "");
+    }
     if (_caster) {
         _caster->readMountPoints();
@@ -2969,5 +3066,5 @@
             QComboBox* ntripversion = new QComboBox();
             ntripversion->setEditable(false);
-            ntripversion->addItems(QString("1,2,2s").split(","));
+            ntripversion->addItems(QString("2s,2,1").split(","));
             ntripversion->setFrame(false);
             _uploadTable->setCellWidget(iRow, iCol, ntripversion);
@@ -2995,4 +3092,5 @@
             QComboBox* format = new QComboBox();
             format->setEditable(false);
+            //format->addItems(QString("IGS-SSR,RTCM-SSR,RTCM-NEW-SSR").split(","));
             format->addItems(QString("IGS-SSR,RTCM-SSR").split(","));
             format->setFrame(false);
@@ -3099,4 +3197,5 @@
                 QComboBox* format = new QComboBox();
                 format->setEditable(false);
+                //format->addItems(QString("IGS-SSR,RTCM-SSR,RTCM-NEW-SSR").split(","));
                 format->addItems(QString("IGS-SSR,RTCM-SSR").split(","));
                 format->setFrame(false);
@@ -3141,5 +3240,5 @@
             QComboBox* ntripversion = new QComboBox();
             ntripversion->setEditable(false);
-            ntripversion->addItems(QString("1,2,2s").split(","));
+            ntripversion->addItems(QString("2s,2,1").split(","));
             ntripversion->setFrame(false);
             _uploadEphTable->setCellWidget(iRow, iCol, ntripversion);
@@ -3177,5 +3276,5 @@
 ////////////////////////////////////////////////////////////////////////////
 void bncWindow::slotDelUploadEphRow() {
-    BNC_CORE->_uploadTableItems.clear();
+    BNC_CORE->_uploadEphTableItems.clear();
     int nRows = _uploadEphTable->rowCount();
     std::vector <bool> flg(nRows);
@@ -3194,5 +3293,5 @@
     }
     for (int iRow = 0; iRow < _uploadTable->rowCount(); iRow++) {
-        BNC_CORE->_uploadTableItems[iRow] =
+        BNC_CORE->_uploadEphTableItems[iRow] =
             (bncTableItem*)_uploadEphTable->item(iRow, 7);
     }
@@ -3261,4 +3360,117 @@
 }
 
+//
+////////////////////////////////////////////////////////////////////////////
+void bncWindow::slotAddUploadRawRow() {
+    int iRow = _uploadRawTable->rowCount();
+    _uploadRawTable->insertRow(iRow);
+    for (int iCol = 0; iCol < _uploadRawTable->columnCount(); iCol++) {
+        if (iCol == 4) {
+            QComboBox* ntripversion = new QComboBox();
+            ntripversion->setEditable(false);
+            ntripversion->addItems(QString("2s,2,1").split(","));
+            ntripversion->setFrame(false);
+            _uploadRawTable->setCellWidget(iRow, iCol, ntripversion);
+
+        }
+        else if (iCol == 5) {
+            QLineEdit* user = new QLineEdit();
+            user->setFrame(false);
+            _uploadRawTable->setCellWidget(iRow, iCol, user);
+        }
+        else if (iCol == 6) {
+            QLineEdit* passwd = new QLineEdit();
+            passwd->setFrame(false);
+            passwd->setEchoMode(QLineEdit::PasswordEchoOnEdit);
+            _uploadRawTable->setCellWidget(iRow, iCol, passwd);
+        }
+        else if (iCol == 7) {
+            bncTableItem* bncIt = new bncTableItem();
+            bncIt->setFlags(bncIt->flags() & ~Qt::ItemIsEditable);
+            _uploadRawTable->setItem(iRow, iCol, bncIt);
+            BNC_CORE->_uploadRawTableItems[iRow] = bncIt;
+        }
+        else {
+          _uploadRawTable->setItem(iRow, iCol, new QTableWidgetItem(""));
+        }
+    }
+}
+
+//
+////////////////////////////////////////////////////////////////////////////
+void bncWindow::slotDelUploadRawRow() {
+    BNC_CORE->_uploadRawTableItems.clear();
+    int nRows = _uploadRawTable->rowCount();
+    std::vector <bool> flg(nRows);
+    for (int iRow = 0; iRow < nRows; iRow++) {
+        if (_uploadRawTable->item(iRow, 1)->isSelected()) {
+            flg[iRow] = true;
+        }
+        else {
+            flg[iRow] = false;
+        }
+    }
+    for (int iRow = nRows - 1; iRow >= 0; iRow--) {
+        if (flg[iRow]) {
+            _uploadRawTable->removeRow(iRow);
+        }
+    }
+    for (int iRow = 0; iRow < _uploadRawTable->rowCount(); iRow++) {
+        BNC_CORE->_uploadRawTableItems[iRow] =
+            (bncTableItem*)_uploadRawTable->item(iRow, 7);
+    }
+}
+
+//
+////////////////////////////////////////////////////////////////////////////
+void bncWindow::populateUploadRawTable() {
+    for (int iRow = _uploadRawTable->rowCount() - 1; iRow >= 0; iRow--) {
+      _uploadRawTable->removeRow(iRow);
+    }
+
+    bncSettings settings;
+
+    int iRow = -1;
+    QListIterator<QString> it(settings.value("uploadRawMountpointsOut").toStringList());
+    while (it.hasNext()) {
+        QStringList hlp = it.next().split(",");
+        if (hlp.size() > 6) {
+            ++iRow;
+            _uploadRawTable->insertRow(iRow);
+        }
+        for (int iCol = 0; iCol < hlp.size(); iCol++) {
+            if (iCol == 4) {
+                QComboBox* ntripversion = new QComboBox();
+                ntripversion->setEditable(false);
+                ntripversion->addItems(QString("1,2,2s").split(","));
+                ntripversion->setFrame(false);
+                ntripversion->setCurrentIndex(ntripversion->findText(hlp[iCol]));
+                _uploadRawTable->setCellWidget(iRow, iCol, ntripversion);
+            }
+            else if (iCol == 5) {
+                QLineEdit* user = new QLineEdit();
+                user->setFrame(false);
+                user->setText(hlp[iCol]);
+                _uploadRawTable->setCellWidget(iRow, iCol, user);
+            }
+            else if (iCol == 6) {
+                QLineEdit* passwd = new QLineEdit();
+                passwd->setFrame(false);
+                passwd->setEchoMode(QLineEdit::PasswordEchoOnEdit);
+                passwd->setText(hlp[iCol]);
+                _uploadRawTable->setCellWidget(iRow, iCol, passwd);
+            }
+            else if (iCol == 7) {
+                bncTableItem* bncIt = new bncTableItem();
+                bncIt->setFlags(bncIt->flags() & ~Qt::ItemIsEditable);
+                _uploadRawTable->setItem(iRow, iCol, bncIt);
+                BNC_CORE->_uploadRawTableItems[iRow] = bncIt;
+            }
+            else {
+              _uploadRawTable->setItem(iRow, iCol, new QTableWidgetItem(hlp[iCol]));
+            }
+        }
+    }
+}
 
 // Progress Bar Change
Index: trunk/BNC/src/bncwindow.h
===================================================================
--- trunk/BNC/src/bncwindow.h	(revision 10697)
+++ trunk/BNC/src/bncwindow.h	(revision 10753)
@@ -96,4 +96,6 @@
     void slotAddUploadEphRow();
     void slotDelUploadEphRow();
+    void slotAddUploadRawRow();
+    void slotDelUploadRawRow();
     void slotSetUploadTrafo();
     void slotReqcEditOption();
@@ -110,4 +112,5 @@
     void populateUploadTable();
     void populateUploadEphTable();
+    void populateUploadRawTable();
     void enableWidget(bool enable, QWidget* widget);
     void startRealTime();
@@ -243,4 +246,6 @@
     QSpinBox* _uploadSamplRtcmEphSpinBox;
 
+    QTableWidget* _uploadRawTable;
+
     bncCaster* _caster;
     bncEphUploadCaster* _casterEph;
Index: trunk/BNC/src/src.pri
===================================================================
--- trunk/BNC/src/src.pri	(revision 10697)
+++ trunk/BNC/src/src.pri	(revision 10753)
@@ -54,6 +54,7 @@
           bncbiassinex.h                                              \
           bncbytescounter.h bncsslconfig.h reqcdlg.h                  \
+          ephemeris.h t_prn.h satObs.h                                \
           upload/bncrtnetdecoder.h upload/bncuploadcaster.h           \
-          ephemeris.h t_prn.h satObs.h                                \
+          upload/bncrawuploadcaster.h                                 \
           upload/bncrtnetuploadcaster.h upload/bnccustomtrafo.h       \
           upload/bncephuploadcaster.h qtfilechooser.h                 \
@@ -68,4 +69,5 @@
           RTCM3/clock_and_orbit/clock_orbit_igs.h                     \
           RTCM3/clock_and_orbit/clock_orbit_rtcm.h                    \
+          RTCM3/clock_and_orbit/clock_orbit_rtcm_new.h                \
           rinex/rnxobsfile.h                                          \
           rinex/rnxnavfile.h       rinex/corrfile.h                   \
@@ -93,7 +95,8 @@
           bncoutf.cpp bncclockrinex.cpp bncsp3.cpp bncsinextro.cpp    \
           bncbiassinex.cpp                                            \
+          ephemeris.cpp t_prn.cpp satObs.cpp                          \
           bncbytescounter.cpp bncsslconfig.cpp reqcdlg.cpp            \
-          ephemeris.cpp t_prn.cpp satObs.cpp                          \
           upload/bncrtnetdecoder.cpp upload/bncuploadcaster.cpp       \
+          upload/bncrawuploadcaster.cpp                               \
           upload/bncrtnetuploadcaster.cpp upload/bnccustomtrafo.cpp   \
           upload/bncephuploadcaster.cpp qtfilechooser.cpp             \
@@ -106,6 +109,8 @@
           RTCM3/RTCM3coDecoder.cpp RTCM3/ephEncoder.cpp               \
           RTCM3/crsEncoder.cpp                                        \
+          RTCM3/clock_and_orbit/clock_orbit.cpp                       \
           RTCM3/clock_and_orbit/clock_orbit_igs.cpp                   \
           RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp                  \
+          RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp              \
           rinex/rnxobsfile.cpp                                        \
           rinex/rnxnavfile.cpp     rinex/corrfile.cpp                 \
Index: trunk/BNC/src/upload/bncrawuploadcaster.cpp
===================================================================
--- trunk/BNC/src/upload/bncrawuploadcaster.cpp	(revision 10753)
+++ trunk/BNC/src/upload/bncrawuploadcaster.cpp	(revision 10753)
@@ -0,0 +1,77 @@
+/*
+ * bncrawuploadcaster.cpp
+ *
+ *  Created on: Aug 26, 2025
+ *      Author: stuerze
+ */
+
+/* -------------------------------------------------------------------------
+ * BKG NTRIP Server
+ * -------------------------------------------------------------------------
+ *
+ * Class:      bncRawUploadCaster
+ *
+ * Purpose:    Connection to NTRIP Caster for Ephemeris
+ *
+ * Author:     L. Mervart
+ *
+ * Created:    03-Apr-2011
+ *
+ * Changes:
+ *
+ * -----------------------------------------------------------------------*/
+
+#include <iostream>
+#include <math.h>
+#include "bncrawuploadcaster.h"
+#include "bncsettings.h"
+
+using namespace std;
+
+// Constructor
+////////////////////////////////////////////////////////////////////////////
+bncRawUploadCaster::bncRawUploadCaster() {
+  bncSettings settings;
+
+  // List of upload casters
+  // ----------------------
+  int iRow = -1;
+  QListIterator<QString> it(settings.value("uploadRawMountpointsOut").toStringList());
+  while (it.hasNext()) {
+    QStringList hlp = it.next().split(",");
+    if (hlp.size() > 5) {
+      ++iRow;
+      QString sourceMount = hlp[0];
+      int  outPort = hlp[2].toInt();
+      bncUploadCaster* newCaster = new bncUploadCaster(hlp[3], hlp[1], outPort,
+                                                       hlp[4], hlp[5],
+                                                       hlp[6], iRow, 0);
+
+      connect(newCaster, SIGNAL(newBytes(QByteArray,double)),
+              this, SIGNAL(newBytes(QByteArray,double)));
+
+      newCaster->start();
+      _casters[sourceMount] = newCaster;
+    }
+  }
+}
+
+// Destructor
+////////////////////////////////////////////////////////////////////////////
+bncRawUploadCaster::~bncRawUploadCaster() {
+  QMapIterator<QString,bncUploadCaster*>it(_casters);
+  while (it.hasNext()) {
+    it.next();
+    it.value()->deleteSafely();
+  }
+  _casters.clear();
+}
+
+// Output into the raw upload socket
+////////////////////////////////////////////////////////////////////////////
+void bncRawUploadCaster::slotNewRawData(QByteArray staID, QByteArray data) {
+
+    if (_casters.contains(QString(staID))) {
+      _casters[QString(staID)]->setOutBuffer(data);
+    }
+}
Index: trunk/BNC/src/upload/bncrawuploadcaster.h
===================================================================
--- trunk/BNC/src/upload/bncrawuploadcaster.h	(revision 10753)
+++ trunk/BNC/src/upload/bncrawuploadcaster.h	(revision 10753)
@@ -0,0 +1,27 @@
+/*
+ * bncrawuploadcaster.h
+ *
+ *  Created on: Aug 26, 2025
+ *      Author: stuerze
+ */
+
+#ifndef SRC_UPLOAD_BNCRAWUPLOADCASTER_H_
+#define SRC_UPLOAD_BNCRAWUPLOADCASTER_H_
+
+#include "bncuploadcaster.h"
+#include "bncsettings.h"
+
+class bncRawUploadCaster : public QObject {
+ Q_OBJECT
+ public:
+  bncRawUploadCaster();
+  virtual ~bncRawUploadCaster();
+ signals:
+  void newBytes(QByteArray staID, double nbyte);
+  public slots:
+  void slotNewRawData(QByteArray staID, QByteArray data);
+ private:
+  QMap<QString, bncUploadCaster*> _casters;
+};
+
+#endif /* SRC_UPLOAD_BNCRAWUPLOADCASTER_H_ */
Index: trunk/BNC/src/upload/bncuploadcaster.cpp
===================================================================
--- trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 10697)
+++ trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 10753)
@@ -57,4 +57,5 @@
             SLOT(slotNewBytes(const QByteArray,double)));
   }
+
   if (BNC_CORE->_uploadEphTableItems.find(_iRow) != BNC_CORE->_uploadEphTableItems.end()) {
     connect(this, SIGNAL(newBytes(QByteArray,double)),
@@ -62,4 +63,11 @@
             SLOT(slotNewBytes(const QByteArray,double)));
   }
+
+  if (BNC_CORE->_uploadRawTableItems.find(_iRow) != BNC_CORE->_uploadRawTableItems.end()) {
+    connect(this, SIGNAL(newBytes(QByteArray,double)),
+            BNC_CORE->_uploadRawTableItems.value(iRow),
+            SLOT(slotNewBytes(const QByteArray,double)));
+  }
+
 
   _sslIgnoreErrors = (Qt::CheckState(settings.value("sslIgnoreErrors").toInt()) == Qt::Checked);
