Index: trunk/BNC/bncgetthread.cpp
===================================================================
--- trunk/BNC/bncgetthread.cpp	(revision 1635)
+++ trunk/BNC/bncgetthread.cpp	(revision 1636)
@@ -266,5 +266,14 @@
     }
     _serialPort->setTimeout(0,100);
-    _serialPort->setFlowControl(FLOW_OFF);
+    hlp = settings.value("serialFlowControl").toString();
+    if      (hlp == "OFF") {
+      _serialPort->setFlowControl(FLOW_OFF);    
+    }
+    else if (hlp == "XONXOFF") {
+      _serialPort->setFlowControl(FLOW_XONXOFF);    
+    }
+else if (hlp == "HARDWARE") {
+      _serialPort->setFlowControl(FLOW_HARDWARE);    
+    }
   }
   else {
Index: trunk/BNC/bncsettings.cpp
===================================================================
--- trunk/BNC/bncsettings.cpp	(revision 1635)
+++ trunk/BNC/bncsettings.cpp	(revision 1636)
@@ -72,4 +72,5 @@
     setValue("serialPortName",   "");
     setValue("serialStopBits",   "1");
+    setValue("serialFlowControl","OFF");
     setValue("startTab",         "0");
     setValue("waitTime",         "5");
Index: trunk/BNC/bncwindow.cpp
===================================================================
--- trunk/BNC/bncwindow.cpp	(revision 1635)
+++ trunk/BNC/bncwindow.cpp	(revision 1636)
@@ -267,4 +267,11 @@
   if (kk != -1) {
     _serialStopBitsComboBox->setCurrentIndex(kk);
+  }
+  _serialFlowControlComboBox = new QComboBox();
+  _serialFlowControlComboBox->setMaximumWidth(11*ww);
+  _serialFlowControlComboBox->addItems(QString("OFF,XONXOFF,HARDWARE").split(","));
+  kk = _serialFlowControlComboBox->findText(settings.value("serialFlowControl").toString());
+  if (kk != -1) {
+    _serialFlowControlComboBox->setCurrentIndex(kk);
   }
   _serialAutoNMEAComboBox  = new QComboBox();
@@ -351,4 +358,5 @@
   _serialDataBitsComboBox->setWhatsThis(tr("<p>Select the number of 'Data bits' for the serial link.</p><p>Note that your selection must equal the number of data bits configured to the serial connected device. Note further that often 8 data bits are used.</p>"));
   _serialStopBitsComboBox->setWhatsThis(tr("<p>Select the number of 'Stop bits' for the serial link.</p><p>Note that your selection must equal the number of stop bits configured to the serial connected device. Note further that often 1 stop bit is used.</p>"));
+  _serialFlowControlComboBox->setWhatsThis(tr("<p>Select a 'Flow control' for the serial link.</p><p>Note that your selection must equal the flow control configured to the serial connected device. Select 'OFF' if you don't know better.</p>"));
   _serialAutoNMEAComboBox->setWhatsThis(tr("<p>Select 'Auto' to automatically forward NMEA-GGA messages coming from your serial connected device to the NTRIP broadcaster and/or save them in a file.</p><p>Forwarding NMEA-GGA messages is a must for VRS streams. Thus, in case your serial device is no capable to provide them, the alternative for VRS streams is a 'Manual' simulation of an initial NMEA-GGA message. Its contents is based on the approximate (editable) VRS latitude/longitude from the broadcaster's sourcetable and an approximate VRS height to be specified.</p>"));
   _serialFileNMEALineEdit->setWhatsThis(tr("<p>Specify the full path to a file where NMEA messages coming from your serial connected device are saved.</p>"));
@@ -608,10 +616,12 @@
   serLayout->addWidget(new QLabel("Baud rate"),                   2,0, Qt::AlignLeft);
   serLayout->addWidget(_serialBaudRateComboBox,                   2,1);
-  serLayout->addWidget(new QLabel("               Parity  "),     2,2, Qt::AlignRight);
-  serLayout->addWidget(_serialParityComboBox,                     2,3);
+  serLayout->addWidget(new QLabel("               Flow control"), 2,2, Qt::AlignRight);
+  serLayout->addWidget(_serialFlowControlComboBox,                2,3);
   serLayout->addWidget(new QLabel("Data bits"),                   3,0, Qt::AlignLeft);
   serLayout->addWidget(_serialDataBitsComboBox,                   3,1);
-  serLayout->addWidget(new QLabel("               Stop bits  "),  3,2, Qt::AlignRight);
-  serLayout->addWidget(_serialStopBitsComboBox,                   3,3);
+  serLayout->addWidget(new QLabel("               Parity  "),     3,2, Qt::AlignRight);
+  serLayout->addWidget(_serialParityComboBox,                     3,3);
+  serLayout->addWidget(new QLabel("               Stop bits  "),  3,4, Qt::AlignRight);
+  serLayout->addWidget(_serialStopBitsComboBox,                   3,5);
   serLayout->addWidget(new QLabel("NMEA"),                        4,0);
   serLayout->addWidget(_serialAutoNMEAComboBox,                   4,1);
@@ -632,4 +642,5 @@
     _serialDataBitsComboBox->setStyleSheet("background-color: lightGray");
     _serialStopBitsComboBox->setStyleSheet("background-color: lightGray");
+    _serialFlowControlComboBox->setStyleSheet("background-color: lightGray");
     _serialAutoNMEAComboBox->setStyleSheet("background-color: lightGray");
     _serialFileNMEALineEdit->setStyleSheet("background-color: lightGray");
@@ -640,4 +651,5 @@
     _serialDataBitsComboBox->setEnabled(false);
     _serialStopBitsComboBox->setEnabled(false);
+    _serialFlowControlComboBox->setEnabled(false);
     _serialAutoNMEAComboBox->setEnabled(false);
     _serialFileNMEALineEdit->setEnabled(false);
@@ -953,4 +965,5 @@
   settings.setValue("serialPortName",  _serialPortNameLineEdit->text());
   settings.setValue("serialStopBits",  _serialStopBitsComboBox->currentText());
+  settings.setValue("serialFlowControl",_serialFlowControlComboBox->currentText());
   settings.setValue("startTab",    aogroup->currentIndex());
   settings.setValue("waitTime",    _waitTimeSpinBox->value());
@@ -1353,4 +1366,5 @@
       _serialDataBitsComboBox->setStyleSheet("background-color: white");
       _serialStopBitsComboBox->setStyleSheet("background-color: white");
+      _serialFlowControlComboBox->setStyleSheet("background-color: white");
       _serialAutoNMEAComboBox->setStyleSheet("background-color: white");
       _serialPortNameLineEdit->setEnabled(true);
@@ -1359,4 +1373,5 @@
       _serialDataBitsComboBox->setEnabled(true);
       _serialStopBitsComboBox->setEnabled(true);
+      _serialFlowControlComboBox->setEnabled(true);
       _serialAutoNMEAComboBox->setEnabled(true);
       if (_serialAutoNMEAComboBox->currentText() != "Auto" ) {
@@ -1377,4 +1392,5 @@
       _serialDataBitsComboBox->setStyleSheet("background-color: lightGray");
       _serialStopBitsComboBox->setStyleSheet("background-color: lightGray");
+      _serialFlowControlComboBox->setStyleSheet("background-color: lightGray");
       _serialAutoNMEAComboBox->setStyleSheet("background-color: lightGray");
       _serialFileNMEALineEdit->setStyleSheet("background-color: lightGray");
@@ -1385,4 +1401,5 @@
       _serialDataBitsComboBox->setEnabled(false);
       _serialStopBitsComboBox->setEnabled(false);
+      _serialFlowControlComboBox->setEnabled(false);
       _serialAutoNMEAComboBox->setEnabled(false);
       _serialHeightNMEALineEdit->setEnabled(false);
Index: trunk/BNC/bncwindow.h
===================================================================
--- trunk/BNC/bncwindow.h	(revision 1635)
+++ trunk/BNC/bncwindow.h	(revision 1636)
@@ -138,4 +138,5 @@
     QComboBox* _serialDataBitsComboBox;
     QComboBox* _serialStopBitsComboBox;
+    QComboBox* _serialFlowControlComboBox;
     QLineEdit* _serialHeightNMEALineEdit;
     QLineEdit* _serialFileNMEALineEdit;
