diff --git a/MAC/GCF/TM/src/Port/GCF_Port.cc b/MAC/GCF/TM/src/Port/GCF_Port.cc
index 9dd5d57e700329818e150261cf5822d0ff322300..c0e1da20c0d9a62abb9ec54c2293279546dab208 100644
--- a/MAC/GCF/TM/src/Port/GCF_Port.cc
+++ b/MAC/GCF/TM/src/Port/GCF_Port.cc
@@ -242,6 +242,15 @@ bool GCFPort::setRemoteAddr(const string& remotetask, const string& remoteport)
 
 ssize_t GCFPort::send(GCFEvent& e)
 {
+  if (!_pSlave || !isConnected()) 
+  {
+    LOG_ERROR(formatString (
+        "Port '%s' on task '%s' not connected! Event not sent!",
+        getName().c_str(),
+        getTask()->getName().c_str()));
+    return 0;
+  }
+
   if (SPP == _type)
   {
     if (!(F_EVT_INOUT(e) & F_OUT))