diff --git a/Appl/CEP/CS1/CS1_BGLProc/src/AsyncTranspose.cc b/Appl/CEP/CS1/CS1_BGLProc/src/AsyncTranspose.cc
index af80214695899d0f104ae8ef80d3397f034d60af..ef1d874a957769ff92455ec4ed4b4ae07a02aaae 100644
--- a/Appl/CEP/CS1/CS1_BGLProc/src/AsyncTranspose.cc
+++ b/Appl/CEP/CS1/CS1_BGLProc/src/AsyncTranspose.cc
@@ -113,11 +113,11 @@ template <typename SAMPLE_TYPE> void AsyncTranspose<SAMPLE_TYPE>::waitForAllSend
   itsAsyncComm->waitForAllWrites();
 }
 
-#endif // MPI
-
 template class AsyncTranspose<i4complex>;
 template class AsyncTranspose<i8complex>;
 template class AsyncTranspose<i16complex>;
 
+#endif // MPI
+
 } // namespace CS1
 } // namespace LOFAR
diff --git a/Appl/CEP/CS1/CS1_BGLProc/src/BGL_Processing.cc b/Appl/CEP/CS1/CS1_BGLProc/src/BGL_Processing.cc
index 71eda0b57a01a4655187372e37a5f10bc46bf0b3..d8437604dcf322d281f1516e499a2db646ff8aa5 100644
--- a/Appl/CEP/CS1/CS1_BGLProc/src/BGL_Processing.cc
+++ b/Appl/CEP/CS1/CS1_BGLProc/src/BGL_Processing.cc
@@ -357,6 +357,7 @@ template <typename SAMPLE_TYPE> void BGL_Processing<SAMPLE_TYPE>::process()
 
     static NSTimer readTimer("receive timer", true);
 
+#if defined HAVE_MPI	
     if(itsDoAsyncCommunication) {
       NSTimer asyncSendTimer("async send", LOG_CONDITION);
 
@@ -364,17 +365,20 @@ template <typename SAMPLE_TYPE> void BGL_Processing<SAMPLE_TYPE>::process()
 	readTimer.start();
 	itsInputData->readOne(itsStream); // Synchronously read 1 subband from my IO node.
 	readTimer.stop();
-#if defined HAVE_MPI	
 	asyncSendTimer.start();
 	itsAsyncTranspose->asyncSend(i, itsInputData); // Asynchronously send one subband to another pset.
 	asyncSendTimer.stop();
-#endif
       }
     } else { // Synchronous
 	readTimer.start();
 	itsInputData->read(itsStream);
 	readTimer.stop();
     }
+#else // NO MPI
+    readTimer.start();
+    itsInputData->read(itsStream);
+    readTimer.stop();
+#endif
   } // itsIsTransposeInput
 
 #if defined HAVE_MPI
@@ -401,7 +405,6 @@ template <typename SAMPLE_TYPE> void BGL_Processing<SAMPLE_TYPE>::process()
 #if defined HAVE_MPI
     if (LOG_CONDITION)
       std::clog << std::setprecision(12) << "core " << itsLocationInfo.rank() << ": start processing at " << MPI_Wtime() << '\n';
-#endif // HAVE_MPI
 
     if(itsDoAsyncCommunication) {
       NSTimer asyncReceiveTimer("wait for any async receive", LOG_CONDITION);
@@ -424,6 +427,14 @@ template <typename SAMPLE_TYPE> void BGL_Processing<SAMPLE_TYPE>::process()
 	computeTimer.stop();
       }
     }
+#else // NO MPI
+    for (unsigned stat = 0; stat < itsNrStations; stat ++) {
+      computeTimer.start();
+      itsPPF->computeFlags(stat, itsTransposedData, itsFilteredData);
+      itsPPF->filter(stat, itsCenterFrequencies[itsCurrentSubband], itsTransposedData, itsFilteredData);
+      computeTimer.stop();
+    }
+#endif // HAVE_MPI
 
     computeTimer.start();
     itsCorrelator->computeFlagsAndCentroids(itsFilteredData, itsCorrelatedData);
@@ -440,12 +451,14 @@ template <typename SAMPLE_TYPE> void BGL_Processing<SAMPLE_TYPE>::process()
     itsCorrelatedData->write(itsStream);
     writeTimer.stop();
 
+#if defined HAVE_MPI
     if(itsDoAsyncCommunication && itsIsTransposeInput) {
       NSTimer waitAsyncSendTimer("wait for all async sends", LOG_CONDITION);
       waitAsyncSendTimer.start();
       itsAsyncTranspose->waitForAllSends();
       waitAsyncSendTimer.stop();
     }
+#endif
   } // itsIsTransposeOutput
 
 #if defined HAVE_MPI
diff --git a/Appl/CEP/CS1/CS1_BGLProc/src/Transpose.cc b/Appl/CEP/CS1/CS1_BGLProc/src/Transpose.cc
index 0f27ca9685e0bd675341f650f58f12e67d011922..7fd86b1ec4f8aa20c9cede007ee9df38f28c22e5 100644
--- a/Appl/CEP/CS1/CS1_BGLProc/src/Transpose.cc
+++ b/Appl/CEP/CS1/CS1_BGLProc/src/Transpose.cc
@@ -242,12 +242,13 @@ template <typename SAMPLE_TYPE> void Transpose<SAMPLE_TYPE>::transposeMetaData(c
 #endif
 }
 
-#endif
-
 template class Transpose<i4complex>;
 template class Transpose<i8complex>;
 template class Transpose<i16complex>;
 
+#endif // HAVE_MPI
+
+
 
 } // namespace CS1
 } // namespace LOFAR