diff --git a/CEP/BB/BBSControl/include/BBSControl/KernelProcessControl.h b/CEP/BB/BBSControl/include/BBSControl/KernelProcessControl.h
index e54b974e440f32f14a8350fad025d33a95d9991b..a057de7f3b2c85daef19f9dec2ba474503162031 100644
--- a/CEP/BB/BBSControl/include/BBSControl/KernelProcessControl.h
+++ b/CEP/BB/BBSControl/include/BBSControl/KernelProcessControl.h
@@ -34,6 +34,7 @@
 #include <BBSControl/BlobStreamableConnection.h>
 #include <BBSKernel/Prediffer.h>
 #include <BBSControl/KernelCommandControl.h>
+#include <BBSControl/CommandQueue.h>
 #include <BBSControl/BBSStructs.h>
 
 namespace LOFAR
@@ -43,6 +44,7 @@ namespace LOFAR
 
   namespace BBS
   {
+    //class CommandQueue;
 /*
     //# Forward declations
     class BBSStep;
@@ -96,6 +98,9 @@ namespace LOFAR
       // Command controller.
       KernelCommandControl itsCommandController;
 
+      // Command Queue
+      scoped_ptr<CommandQueue> itsCommandQueue;
+
       // Parameter set for this process controller.
       ACC::APS::ParameterSet itsParameterSet;
 
@@ -103,7 +108,7 @@ namespace LOFAR
       scoped_ptr<Prediffer> itsPrediffer;
       
       // Connections
-      scoped_ptr<BlobStreamableConnection> itsControllerConnection;
+      //scoped_ptr<BlobStreamableConnection> itsControllerConnection;
       scoped_ptr<BlobStreamableConnection> itsSolverConnection;
       
       // Region of interest
diff --git a/CEP/BB/BBSControl/src/KernelProcessControl.cc b/CEP/BB/BBSControl/src/KernelProcessControl.cc
index f68c205e258239091e2af2bd8911e3d0e235d595..1f8c8d5e1a901956b9360d2328d01a48862d2024 100644
--- a/CEP/BB/BBSControl/src/KernelProcessControl.cc
+++ b/CEP/BB/BBSControl/src/KernelProcessControl.cc
@@ -26,10 +26,10 @@
 #include <lofar_config.h>
 
 #include <BBSControl/KernelProcessControl.h>
-#include <BBSControl/Command.h>
+//#include <BBSControl/Command.h>
+#include <BBSControl/BBSStep.h>
 /*
 #include <BBSControl/BBSStrategy.h>
-#include <BBSControl/BBSStep.h>
 #include <BBSControl/BBSPredictStep.h>
 #include <BBSControl/BBSSubtractStep.h>
 #include <BBSControl/BBSCorrectStep.h>
@@ -89,9 +89,11 @@ namespace BBS
         LOG_DEBUG("KernelProcessControl::define()");
 
         try {
+/*
             itsControllerConnection.reset(new BlobStreamableConnection(
                     globalParameterSet()->getString("Controller.Host"),
                     globalParameterSet()->getString("Controller.Port")));
+*/
 
             char *user = getenv("USER");
             ASSERT(user);
@@ -116,6 +118,7 @@ namespace BBS
         LOG_DEBUG("KernelProcessControl::init()");
 
         try {
+/*
             LOG_DEBUG_STR("Trying to connect to controller@"
                 << globalParameterSet()->getString("Controller.Host") << ":"
                 << globalParameterSet()->getString("Controller.Port"   )
@@ -127,6 +130,9 @@ namespace BBS
                 return false;
             }
             LOG_DEBUG("+ ok");
+*/
+            itsCommandQueue.reset(new
+CommandQueue(globalParameterSet()->getString("BBDB.DBName")));
 
             LOG_DEBUG("Trying to connect to solver@localhost");
             if(!itsSolverConnection->connect())
@@ -154,13 +160,16 @@ namespace BBS
         try
         {
             // Receive the next message
-            scoped_ptr<BlobStreamable> message(itsControllerConnection->recvObject());
-            Command *command = dynamic_cast<
-Command*>(message.get());
-
-            if(command)
+            scoped_ptr<BBSStep>
+step(const_cast<BBSStep*>(itsCommandQueue->getNextStep()));
+            //scoped_ptr<BlobStreamable>
+//message(itsControllerConnection->recvObject());
+            //Command *command = dynamic_cast<
+//Command*>(message.get());
+
+            if(step)
             {
-                command->accept(itsCommandController);
+                step->accept(itsCommandController);
                 return true;
             }
             else
@@ -169,7 +178,8 @@ Command*>(message.get());
         catch(Exception& e)
         {
             LOG_ERROR_STR(e);
-            itsControllerConnection->sendObject(BBSStatus(BBSStatus::ERROR, e.message()));
+//            itsControllerConnection->sendObject(BBSStatus(BBSStatus::ERROR,
+//e.message()));
             return false;
         }
     }