diff --git a/src/main/java/tmltranslator/HwNoC.java b/src/main/java/tmltranslator/HwNoC.java
index e64bd92abda8abb8f00e9ba5ba2e1a65051e78fb..e97c1e1ab2a05e5571440d798187909f3367d6ad 100755
--- a/src/main/java/tmltranslator/HwNoC.java
+++ b/src/main/java/tmltranslator/HwNoC.java
@@ -187,6 +187,16 @@ public class HwNoC extends HwCommunicationNode  {
         return map;
     }
 
+    public String getHwExecutionNode(int x, int y) {
+        for(String s: placementMap.keySet()) {
+            Point p = placementMap.get(s);
+            if (p.x == x && p.y == y) {
+                return s;
+            }
+        }
+        return null;
+    }
+
 
 
 
diff --git a/src/main/java/tmltranslator/TMLArchitecture.java b/src/main/java/tmltranslator/TMLArchitecture.java
index 25c439c9a638dba33bde437e619f422245054a8b..ac349bc629bd028e27608a9f544618dac5d534ba 100755
--- a/src/main/java/tmltranslator/TMLArchitecture.java
+++ b/src/main/java/tmltranslator/TMLArchitecture.java
@@ -306,6 +306,9 @@ public class TMLArchitecture {
     }
 
     public HwCPU getHwCPUByName(String _name) {
+        if (_name == null) {
+            return null;
+        }
         for (HwNode node : hwnodes) {
             if (node.getName().equals(_name)) {
                 if (node instanceof HwCPU) {
@@ -316,6 +319,21 @@ public class TMLArchitecture {
         return null;
     }
 
+    public HwExecutionNode getHwExecutionNodeByName(String _name) {
+        if (_name == null) {
+            return null;
+        }
+
+        for (HwNode node : hwnodes) {
+            if (node.getName().equals(_name)) {
+                if (node instanceof HwExecutionNode) {
+                    return (HwExecutionNode) node;
+                }
+            }
+        }
+        return null;
+    }
+
     public HwBus getHwBusByName(String _name) {
         for (HwNode node : hwnodes) {
             if (node.getName().equals(_name)) {
diff --git a/src/main/java/tmltranslator/tonetwork/TaskNetworkInterface.java b/src/main/java/tmltranslator/tonetwork/TaskNetworkInterface.java
index 53d9b93e8eaf05f69cd6b1354bd20f831afe0664..b978a9a192161ca4521fb952d3bb65cede5695d8 100644
--- a/src/main/java/tmltranslator/tonetwork/TaskNetworkInterface.java
+++ b/src/main/java/tmltranslator/tonetwork/TaskNetworkInterface.java
@@ -122,7 +122,7 @@ public class TaskNetworkInterface extends TMLTask {
         loop.setInfinite(true);
         addElement(start, loop);
 
-        TMLActionState state = new TMLActionState("LoopExitSeeting", referenceObject);
+        TMLActionState state = new TMLActionState("LoopExitSetting", referenceObject);
         state.setAction("loopexit = 2");
         addElement(loop, state);
 
@@ -158,7 +158,7 @@ public class TaskNetworkInterface extends TMLTask {
             TMLChoice testingEvt = new TMLChoice("testingEvtVC", referenceObject);
             addElement(notifiedEvent, testingEvt);
 
-            TMLStopState endOfLoopNotified = new TMLStopState("NoEvetNorispkt", referenceObject);
+            TMLStopState endOfLoopNotified = new TMLStopState("NoEventNorispkt", referenceObject);
             addElement(testingEvt, endOfLoopNotified);
             testingEvt.addGuard("(nEvt == 0) and (ispkt" + i + " == 0)");
 
@@ -216,10 +216,14 @@ public class TaskNetworkInterface extends TMLTask {
 
             // No feedback
             TMLActionState noFeedbackAction = new TMLActionState("noFeedbackAction", referenceObject);
-            state.setAction("loopexit = 2");
+            noFeedbackAction.setAction("loopexit = 2");
             addElement(testOnFeedback, noFeedbackAction);
             testOnFeedback.addGuard("else");
 
+            TMLStopState endOfNoFeedback = new TMLStopState("endOfNoFeedback", referenceObject);
+            addElement(noFeedbackAction, endOfNoFeedback);
+
+
             // Feedback present
             TMLWriteChannel sendingSample = new TMLWriteChannel("SendingSample", referenceObject);
             sendingSample.addChannel(outputChannel);
diff --git a/src/main/java/tmltranslator/tonetwork/TranslatedRouter.java b/src/main/java/tmltranslator/tonetwork/TranslatedRouter.java
index c6b92f616cc2189ffc944c65b39debe37f376e9c..275658098c5aedd51834076a1b81e48cc8a5804b 100644
--- a/src/main/java/tmltranslator/tonetwork/TranslatedRouter.java
+++ b/src/main/java/tmltranslator/tonetwork/TranslatedRouter.java
@@ -91,9 +91,10 @@ public class TranslatedRouter<E>  {
 
 
         // MUX for the different writing tasks
-
-
-
+        // For each writing channel of the corresponding CPU, we need MUX to be created.
+        // We first get the corresponding CPU
+        String nameOfExecNode = noc.getHwExecutionNode(xPos, yPos);
+        HwExecutionNode execNode = tmlmap.getTMLArchitecture().getHwExecutionNodeByName(nameOfExecNode);
 
 
         // VC DISPATCHERS