Index: trunk/BNC/src/PPP_SSR_I/pppFilter.cpp
===================================================================
--- trunk/BNC/src/PPP_SSR_I/pppFilter.cpp	(revision 7040)
+++ trunk/BNC/src/PPP_SSR_I/pppFilter.cpp	(revision 7050)
@@ -1007,5 +1007,5 @@
 
     for (int iPhase = 0; iPhase <= (usePhase ? 1 : 0); iPhase++) {
-    
+
       // Status Prediction
       // -----------------
@@ -1017,4 +1017,13 @@
       unsigned nObs = 0;
       nObs = epoData->sizeAll();
+      bool useObs = false;
+      char additionalSys[] ={'R', 'E', 'C'};
+      for (unsigned ii = 0; ii < sizeof(additionalSys); ii++) {
+        const char s = additionalSys[ii];
+        (iPhase == 0) ? useObs = OPT->codeLCs(s).size() : useObs = OPT->ambLCs(s).size();
+        if (!useObs) {
+          nObs -= epoData->sizeSys(s);
+        }
+      }
       
       // Prepare first-design Matrix, vector observed-computed
@@ -1030,5 +1039,9 @@
         t_satData* satData = it.value();
         QString prn = satData->prn;
-        addObs(iPhase, iObs, satData, AA, ll, PP);
+        char sys =   satData->system();
+        (iPhase == 0) ? useObs = OPT->codeLCs(sys).size() : useObs = OPT->ambLCs(sys).size();
+        if (sys == 'G' || useObs) {
+          addObs(iPhase, iObs, satData, AA, ll, PP);
+        }
       }
 
