Index: trunk/BNC/src/PPP/pppFilter.cpp
===================================================================
--- trunk/BNC/src/PPP/pppFilter.cpp	(revision 10218)
+++ trunk/BNC/src/PPP/pppFilter.cpp	(revision 10219)
@@ -192,5 +192,5 @@
     // Check number of observations
     // ----------------------------
-    if (!nSat) {
+    if (nSat < 3) {
       LOG << "t_pppFilter::processSystem not enough observations " << nSat << "\n";
       return failure;
@@ -268,11 +268,11 @@
       }
       if (par) {
-//        if (par->ambResetCandidate()) {
+        if (par->ambResetCandidate()) {
           resetAmb(par->prn(), obsVector, maxOutlierLC, &QSav, &xSav);
-//        }
-//        else {
-//          par->setAmbResetCandidate();
-//          obs->setOutlier();
-//        }
+        }
+        else {
+          par->setAmbResetCandidate();
+          obs->setOutlier();
+        }
       }
       else {
Index: trunk/BNC/src/PPP/pppParlist.cpp
===================================================================
--- trunk/BNC/src/PPP/pppParlist.cpp	(revision 10218)
+++ trunk/BNC/src/PPP/pppParlist.cpp	(revision 10219)
@@ -369,12 +369,16 @@
 
     else if (par->type() == t_pppParam::amb  ||
-             par->type() == t_pppParam::ion  ||
              par->type() == t_pppParam::crdX ||
              par->type() == t_pppParam::crdY ||
              par->type() == t_pppParam::crdZ) {
-      if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 10.0)) {
+      if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 60.0)) {
         remove = true;
       }
     }
+    else if (par->type() == t_pppParam::ion) {
+      if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 5.0)) {
+        remove = true;
+      }
+}
 
     if (remove) {
Index: trunk/BNC/src/PPP/pppSatObs.cpp
===================================================================
--- trunk/BNC/src/PPP/pppSatObs.cpp	(revision 10218)
+++ trunk/BNC/src/PPP/pppSatObs.cpp	(revision 10219)
@@ -416,5 +416,5 @@
 
   _model._eleSat = acos(sqrt(neu[0]*neu[0] + neu[1]*neu[1]) / _model._rho);
-  if (neu[2] < 0) {
+  if (neu[2] < 0.0) {
     _model._eleSat *= -1.0;
   }
