diff --git a/Demo/CEP/TFlopCorrelator/TFC_Generator/src/WH_Strip.cc b/Demo/CEP/TFlopCorrelator/TFC_Generator/src/WH_Strip.cc
index aa945b391e8eb08babda37df570075ca345013b6..317e5287a2d5c43486569188df5d3df7723ff591 100644
--- a/Demo/CEP/TFlopCorrelator/TFC_Generator/src/WH_Strip.cc
+++ b/Demo/CEP/TFlopCorrelator/TFC_Generator/src/WH_Strip.cc
@@ -121,7 +121,12 @@ void WH_Strip::process()
 
   cout<<"WH_Strip sending "<<myEthFrame.getPayloadSize()<<" bytes"<<endl;
   bool ret = itsTH.sendNonBlocking(myEthFrame.getPayloadp(), myEthFrame.getPayloadSize(), 0);
-  ASSERTSTR(ret, "TH couldn't send data");
+  if(!ret) {
+    cerr<<"TH couldn't send data, retrying"<<endl; // This is specifically for UDP sockets that are not really received by another process
+                                                   // The first call gives a 'connection refused' message, but a resend will really send the data
+    ret = itsTH.sendNonBlocking(myEthFrame.getPayloadp(), myEthFrame.getPayloadSize(), 0);
+  }
+
   // we handled one alarm, so decrease it
   theirNoAlarms--;
 }