diff --git a/src/main/jastadd/engine/balloonMarking/BalloonExecution.jadd b/src/main/jastadd/engine/balloonMarking/BalloonExecution.jadd
index d5a593a20a1e57be3e576546242af433b1f6815d..451a87973ecbf60dfea1e4f80845603dbcb83c99 100644
--- a/src/main/jastadd/engine/balloonMarking/BalloonExecution.jadd
+++ b/src/main/jastadd/engine/balloonMarking/BalloonExecution.jadd
@@ -45,6 +45,8 @@ aspect BalloonExecution{
                       if((clauseValuesDefinition.getDefs().size() > 0) &&
                               (!transition.asDinerosTransition().getStaticTransitionInformation().
                                       asSignalTransitionInformation().getClause().evalClause(clauseValuesDefinition))){
+
+                          System.out.println("Signals, do not allow to fire transition!");
                           return Optional.of(this);
                       }
                   }
diff --git a/src/main/java/de/tudresden/inf/st/pnml/engine/Main.java b/src/main/java/de/tudresden/inf/st/pnml/engine/Main.java
index 447e07d9a6a1109022826f7cdc1dd263105b9367..648bc62e642f6cbe5338ab63ae2359b33e320224 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/engine/Main.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/engine/Main.java
@@ -60,11 +60,7 @@ public class Main {
         java.lang.String pnmlPath = "../pnml-relast-engine/src/main/resources/nets/NodeNetSignalTest.pnml";
         PetriNet petriNet = PnmlParser.parsePnml(pnmlPath).get(0);
 
-        for(Transition t : petriNet.allTransitions()){
-
-        }
-
-     /*   nodeConfiguration.setMasterUri(URI.create("http://localhost:11311"));
+        nodeConfiguration.setMasterUri(URI.create("http://localhost:11311"));
 
         DinerosTestNode diNeRosNode = new DinerosTestNode("TestNode", petriNet);
 
@@ -80,7 +76,7 @@ public class Main {
             Thread.sleep(2000);
         } catch (InterruptedException e) {
             e.printStackTrace();
-        }*/
+        }
     }
 
     /*
diff --git a/src/main/java/de/tudresden/inf/st/pnml/engine/ros/DiNeRosNode.java b/src/main/java/de/tudresden/inf/st/pnml/engine/ros/DiNeRosNode.java
index c0e520cd4290616db0e5b549ab86096d453ccf74..425542c1558b67772acd642af7d054cbf6e6fe26 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/engine/ros/DiNeRosNode.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/engine/ros/DiNeRosNode.java
@@ -1,5 +1,6 @@
 package de.tudresden.inf.st.pnml.engine.ros;
 
+import de.tudresden.inf.st.pnml.base.data.ClauseValuesDefinition;
 import de.tudresden.inf.st.pnml.engine.transform.PetriNetInitializer;
 import de.tudresden.inf.st.pnml.jastadd.model.*;
 import org.jetbrains.annotations.NotNull;
@@ -73,25 +74,57 @@ public abstract class DiNeRosNode extends AbstractNodeMain {
 
     public void notify(java.lang.String notificationType){
 
+        Set<Transition> signalFilteredTransitions = getSignalFilteredTransitions();
+
         if (notificationType.equals(NOTIFICATION_MARKING_CHANGE)) {
-            onMarkingChangeInternal(marking.enabledBalloonTransitions());
+            onMarkingChangeInternal(signalFilteredTransitions);
         } else if (notificationType.equals(NOTIFICATION_SIGNAL_CHANGE)) {
             System.out.println("NOTIFICATION_SIGNAL_CHANGE");
-            onSignalChangeInternal(marking.enabledBalloonTransitions());
+            onSignalChangeInternal(signalFilteredTransitions);
         } else if (notificationType.equals(NOTIFICATION_WAIT_ENDED)) {
-            onWaitEndedInternal(marking.enabledBalloonTransitions());
+            onWaitEndedInternal(signalFilteredTransitions);
         } else if (notificationType.equals(NOTIFICATION_STARTUP_ENDED)) {
-            onStartupEndedInternal(marking.enabledBalloonTransitions());
+            onStartupEndedInternal(signalFilteredTransitions);
         }
 
     }
 
+    @NotNull
+    private Set<Transition> getSignalFilteredTransitions() {
+        Set<Transition> signalFilteredTransitions = new HashSet<>();
+
+        ClauseValuesDefinition clauseValuesDefinition = new ClauseValuesDefinition();
+
+        for(Transition transition : marking.enabledBalloonTransitions()) {
+            if (transition.asDinerosTransition().getStaticTransitionInformation()
+                    .asSignalTransitionInformation().getClause() != null) {
+                for (String signalId : transition.asDinerosTransition().getStaticTransitionInformation()
+                        .asSignalTransitionInformation().getClause().signals()) {
+                    for (SignalConnection sc : inputSignalConnector.getSignalConnections()) {
+                        if (signalId.equals(sc.getId())) {
+                            clauseValuesDefinition.addDef(sc.getId(), sc.getCurrentValue());
+                            break;
+                        }
+                    }
+                }
+
+                if ((clauseValuesDefinition.getDefs().size() == 0) ||
+                        (transition.asDinerosTransition().getStaticTransitionInformation().
+                                asSignalTransitionInformation().getClause().evalClause(clauseValuesDefinition))) {
+
+                    signalFilteredTransitions.add(transition);
+                }
+            }
+        }
+        return signalFilteredTransitions;
+    }
+
     @NotNull
     private TransitionSelectionResult getTransitionSelectionResult(TransitionSelectionResult res) {
         if (res.isFiringSelectionWait()) {
             try {
                 TimeUnit.MILLISECONDS.sleep(res.asFiringSelectionWait().getWaitingTime());
-                onWaitEndedInternal(marking.enabledBalloonTransitions());
+                onWaitEndedInternal(getSignalFilteredTransitions());
                 return res;
             } catch (InterruptedException e) {
                 e.printStackTrace();
diff --git a/src/main/java/de/tudresden/inf/st/pnml/engine/testNodes/DinerosTestNode.java b/src/main/java/de/tudresden/inf/st/pnml/engine/testNodes/DinerosTestNode.java
index bed0679e71c8a327ff549780ebc605bbe8a391db..b39ed23d0c285d17eb6669d6ecaf9177b8b2f0f8 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/engine/testNodes/DinerosTestNode.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/engine/testNodes/DinerosTestNode.java
@@ -16,7 +16,7 @@ public class DinerosTestNode extends DiNeRosNode {
     }
 
     public DinerosTestNode(String nodeName, PetriNet petriNet, BalloonMarking marking, BalloonCallbackStorage callbackStorage) {
-        super(nodeName, petriNet, "localhost", "mqtt");
+        super(nodeName, petriNet, "localhost:2000", "mqtt");
         this.marking = marking;
         this.callbackStorage = callbackStorage;
     }
diff --git a/src/main/java/de/tudresden/inf/st/pnml/engine/transform/PetriNetInitializer.java b/src/main/java/de/tudresden/inf/st/pnml/engine/transform/PetriNetInitializer.java
index 83bfcbf86d80387ad1ad7cdf49f99500045dfa0e..089696d9f5e0abff908621eb125baaec52bc1f20 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/engine/transform/PetriNetInitializer.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/engine/transform/PetriNetInitializer.java
@@ -22,7 +22,7 @@ public class PetriNetInitializer {
             SignalTransitionInformation ti = new SignalTransitionInformation();
             ti.setSubNet(dt.getStaticTransitionInformation().getSubNet() + usedSuffix);
             ti.setNode(dt.getStaticTransitionInformation().getNode());
-            ti.setClause(dt.getStaticTransitionInformation().asSignalTransitionInformation().getClause().deepCopy());
+            //ti.setClause(dt.getStaticTransitionInformation().asSignalTransitionInformation().getClause().deepCopy());
             target.setMutableTransitionInformation(ti);
         } else if (dt.getStaticTransitionInformation().isTopicTransitionInformation()) {
             deepCopyTopicTransitionInformation(target, dt, usedSuffix);
diff --git a/src/main/java/de/tudresden/inf/st/pnml/engine/transform/ServiceTransformer.java b/src/main/java/de/tudresden/inf/st/pnml/engine/transform/ServiceTransformer.java
index beb8fa14a8ece849ce1f35a0816da9f78a96f3a5..1ebb0845e9e6ee3670cb32c53f04ef5233f52f4d 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/engine/transform/ServiceTransformer.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/engine/transform/ServiceTransformer.java
@@ -77,7 +77,7 @@ public class ServiceTransformer {
             SignalTransitionInformation sti = new SignalTransitionInformation();
             sti.setNode(t.asDinerosTransition().getStaticTransitionInformation().getNode());
             sti.setSubNet(t.asDinerosTransition().getStaticTransitionInformation().getSubNet() + "-" + suffix);
-            sti.setClause(t.asDinerosTransition().getStaticTransitionInformation().asSignalTransitionInformation().getClause().deepCopy());
+            //sti.setClause(t.asDinerosTransition().getStaticTransitionInformation().asSignalTransitionInformation().getClause().deepCopy());
             copy.setMutableTransitionInformation(sti);
 
             copy.getName().setText(t.getName().getText());