Index: trunk/BNC/src/RTCM3/RTCM3Decoder.cpp
===================================================================
--- trunk/BNC/src/RTCM3/RTCM3Decoder.cpp	(revision 11028)
+++ trunk/BNC/src/RTCM3/RTCM3Decoder.cpp	(revision 11029)
@@ -2263,5 +2263,5 @@
       if ((id >= 1057 && id <= 1068) ||
           (id >= 1240 && id <= 1270) ||
-          (id > 0     && id <= 100) ||
+         // (id > 0     && id <= 100) ||
           (id == 4076)) {
         if (!_coDecoders.contains(_staID.toLatin1())) {
@@ -2271,5 +2271,6 @@
           }
           else {
-            _coDecoders[_staID.toLatin1()]->initSsrFormatType(RTCM3coDecoder::RTCMnewssr);
+           // _coDecoders[_staID.toLatin1()]->initSsrFormatType(RTCM3coDecoder::RTCMnewssr);
+            _coDecoders[_staID.toLatin1()]->initSsrFormatType(RTCM3coDecoder::RTCMssr);
           }
         }
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp	(revision 11028)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp	(revision 11029)
@@ -665,5 +665,14 @@
               return GCOBR_NOPHASEBIASPARAMETER;
             pb->messageType = igstype;
-            D_GPS_EPOCH_TIME_CHECK(pb->EpochTime[s], pb->NumberOfSat[s])
+            /* pb->NumberOfSat[s] is no longer cleared by the caller between
+             * messages (kept intact so a subsequent Extended Phase Bias
+             * message in new RTCM-SSR format can correlate against it), 
+             * so this decode must start
+             * each fresh message with an empty satellite list itself rather
+             * than relying on D_GPS_EPOCH_TIME_CHECK's stale-data check,
+             * which would otherwise reject every message but the first with
+             * GCOBR_TIMEMISMATCH. */
+            pb->NumberOfSat[s] = 0;
+            D_GPS_EPOCH_TIME(pb->EpochTime[s])
             D_SSR_UPDATE_INTERVAL(pb->UpdateInterval)
             D_MULTIPLE_MESSAGE_INDICATOR(mmi)
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp	(revision 11028)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp	(revision 11029)
@@ -588,4 +588,11 @@
         return GCOBR_NOPHASEBIASPARAMETER;
       pb->messageType = type;
+      /* pb->NumberOfSat[s] is no longer cleared by the caller between
+       * messages (kept intact so a subsequent Extended Phase Bias message
+       * can correlate against it), so this decode must start each fresh
+       * message with an empty satellite list itself rather than relying
+       * on D_..._EPOCH_TIME_CHECK's stale-data check, which would
+       * otherwise reject every message but the first with GCOBR_TIMEMISMATCH. */
+      pb->NumberOfSat[s] = 0;
       switch (s) {
         case CLOCKORBIT_SATGPS:
@@ -594,8 +601,8 @@
         case CLOCKORBIT_SATSBAS:
         case CLOCKORBIT_SATBDS:
-          D_GPS_EPOCH_TIME_CHECK(pb->EpochTime[s], pb->NumberOfSat[s])
+          D_GPS_EPOCH_TIME(pb->EpochTime[s])
           break;
         case CLOCKORBIT_SATGLONASS:
-          D_GLONASS_EPOCH_TIME_CHECK(pb->EpochTime[s], pb->NumberOfSat[s])
+          D_GLONASS_EPOCH_TIME(pb->EpochTime[s])
           break;
       }
