Index: /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp
===================================================================
--- /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 5576)
+++ /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 5577)
@@ -77,4 +77,7 @@
           BNC_CORE, SLOT(slotNewCorrLine(QString, QString, bncTime)));
 
+  connect(this, SIGNAL(providerIDChanged(QString)), 
+          BNC_CORE, SIGNAL(providerIDChanged(QString)));
+
   connect(this, SIGNAL(newMessage(QByteArray,bool)), 
           BNC_CORE, SLOT(slotMessage(const QByteArray,bool)));
@@ -446,4 +449,5 @@
     
   if (alreadySet && different) {
+    emit providerIDChanged(_staID);
     emit newMessage("RTCM3coDecoder: Provider Changed\n", true);
   }
Index: /trunk/BNC/src/RTCM3/RTCM3coDecoder.h
===================================================================
--- /trunk/BNC/src/RTCM3/RTCM3coDecoder.h	(revision 5576)
+++ /trunk/BNC/src/RTCM3/RTCM3coDecoder.h	(revision 5577)
@@ -52,4 +52,5 @@
   void newCorrLine(QString line, QString staID, bncTime coTime);
   void newMessage(QByteArray msg, bool showOnScreen);
+  void providerIDChanged(QString staID);
 
  private:
Index: /trunk/BNC/src/bnccore.cpp
===================================================================
--- /trunk/BNC/src/bnccore.cpp	(revision 5576)
+++ /trunk/BNC/src/bnccore.cpp	(revision 5577)
@@ -834,2 +834,3 @@
   }
 }
+
Index: /trunk/BNC/src/bnccore.h
===================================================================
--- /trunk/BNC/src/bnccore.h	(revision 5576)
+++ /trunk/BNC/src/bnccore.h	(revision 5577)
@@ -81,4 +81,5 @@
     void newEphGalileo(galileoephemeris galileoeph);
     void newCorrections(QList<QString>);
+    void providerIDChanged(QString staID);
     
  private slots:
Index: /trunk/BNC/src/bncpppclient.cpp
===================================================================
--- /trunk/BNC/src/bncpppclient.cpp	(revision 5576)
+++ /trunk/BNC/src/bncpppclient.cpp	(revision 5577)
@@ -76,4 +76,7 @@
     connect(BNC_CORE, SIGNAL(newCorrections(QList<QString>)),
             this, SLOT(slotNewCorrections(QList<QString>)));
+
+    connect(BNC_CORE, SIGNAL(providerIDChanged(QString)),
+            this, SLOT(slotProviderIDChanged(QString)));
   }
 }
@@ -528,2 +531,12 @@
 }
 
+// 
+////////////////////////////////////////////////////////////////////////////
+void bncPPPclient::slotProviderIDChanged(QString staID) {
+  QMutexLocker locker(&_mutex);
+
+  if (staID != _opt->pppCorrMount) {
+    return;
+  }
+  emit newMessage("bncPPPclient: Provider Changed\n", true);
+}
Index: /trunk/BNC/src/bncpppclient.h
===================================================================
--- /trunk/BNC/src/bncpppclient.h	(revision 5576)
+++ /trunk/BNC/src/bncpppclient.h	(revision 5577)
@@ -133,4 +133,5 @@
  public slots:
   void slotNewCorrections(QList<QString> corrList);
+  void slotProviderIDChanged(QString staID);
 
  signals:
