Index: /trunk/BNC/bnccaster.cpp
===================================================================
--- /trunk/BNC/bnccaster.cpp	(revision 2310)
+++ /trunk/BNC/bnccaster.cpp	(revision 2311)
@@ -49,6 +49,4 @@
 #include "RTCM/GPSDecoder.h"
 
-static const int MAXRATE = 20; // Hz
-
 // Constructor
 ////////////////////////////////////////////////////////////////////////////
@@ -161,6 +159,6 @@
   obs->_status = t_obs::received;
 
-  long iSecXrate    = long(floor(obs->_o.GPSWeeks * MAXRATE + 0.5));
-  long newTimeXrate = obs->_o.GPSWeek * 7*24*3600 * MAXRATE + iSecXrate;
+  long iSecXrate    = long(floor(obs->_o.GPSWeeks * _maxRate + 0.5));
+  long newTimeXrate = obs->_o.GPSWeek * 7*24*3600 * _maxRate + iSecXrate;
 
   // Rename the Station
@@ -213,8 +211,8 @@
            !settings.value("outPort").toString().isEmpty() ) { 
 
-	QTime enomtime = QTime(0,0,0).addMSecs(iSecXrate/MAXRATE/1000);
+	QTime enomtime = QTime(0,0,0).addMSecs(iSecXrate/_maxRate/1000);
 
         emit( newMessage(QString("%1: Old epoch %2 (%3) thrown away")
-			 .arg(staID.data()).arg(iSecXrate/MAXRATE)
+			 .arg(staID.data()).arg(iSecXrate/_maxRate)
 			 .arg(enomtime.toString("HH:mm:ss"))
 			 .toAscii(), true) );
@@ -417,6 +415,10 @@
   // Reread several options
   // ----------------------
+  _maxRate = settings.value("maxRate").toInt();
+  if (_maxRate < 1) {
+    _maxRate = 1;
+  }
   _samplingRate  = settings.value("binSampl").toInt();
-  _waitTimeXrate = settings.value("waitTime").toInt() * MAXRATE; 
+  _waitTimeXrate = settings.value("waitTime").toInt() * _maxRate; 
   if (_waitTimeXrate < 1) {
     _waitTimeXrate = 1;
Index: /trunk/BNC/bnccaster.h
===================================================================
--- /trunk/BNC/bnccaster.h	(revision 2310)
+++ /trunk/BNC/bnccaster.h	(revision 2311)
@@ -80,4 +80,5 @@
    QMutex                  _mutex;
    int                     _confInterval;
+   int                     _maxRate;
 };
 
