diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC1_MCAST_PduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC1_MCAST_PduSender.java
index 4c1fb2bcae5f71ce548d52ab22d1c7c28f5424b5..48d124afe78f22b4f2d11e857249de64177d2a62 100755
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC1_MCAST_PduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC1_MCAST_PduSender.java
@@ -96,7 +96,7 @@ public class BRE_KNO_MCC_PC1_MCAST_PduSender
             ArrayList<VariableDatum> payloadList = new ArrayList<VariableDatum>();
 
             ArrayList<String> commentsList = new ArrayList<>();
-            commentsList.add("Chuck Norris is comming to tow! " + "Warning " + i+1 + intervall*5);
+            commentsList.add("Chuck Norris is comming to town! " + "Warning " + i+1 + intervall*5);
 
             for (String comment : commentsList)
             {
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_Controller.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_Controller.java
index 3e4623ff4e7049b8dc41f3e5845aaf1cfe000b65..4fe8b8c7f2ff53208b9822470f199f6ce8c7396f 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_Controller.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_Controller.java
@@ -9,8 +9,7 @@ import java.util.logging.Logger;
 
 public class BRE_KNO_MCC_PC2_Controller
 {
-
-    static boolean keepRunningMainThread = false;
+    static boolean keepRunningMainThread = true;
     static BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver pc2_pc1_receiver;
     static BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender pc2_pc3_sender;
     static BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver pc2_pc3_receiver;
@@ -31,35 +30,32 @@ public class BRE_KNO_MCC_PC2_Controller
         pc2_pc1_receiver.resetMcastMessagesToSend();
         pc2_pc1_receiver.resetSavedMCASTMessagesList();
         pc2_pc1_receiver.setKeepRunning(true); //use this to terminate thread instead of killing it by hard
-        pc2_pc1_receiver.run(mcastIPPC1, portPC1);
+        pc2_pc1_receiver.setNetworkData(mcastIPPC1, portPC1);
+        pc2_pc1_receiver.start();   
 
         pc2_pc3_sender = new BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender();
+        pc2_pc3_sender.setNetworkSettinigs(ipPC3, portPC3);
+        pc2_pc3_sender.start();
+        
         pc2_pc3_receiver = new BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver();
-        pc2_pc3_receiver.run(portPC3);
-
-        //start main thread
-        keepRunningMainThread = true;
-        run();
-    }
+        pc2_pc3_receiver.setNetworkSettings(portPC3);
+        pc2_pc3_receiver.start();
 
-    public static void run()
-    {
+        
         while (keepRunningMainThread)
-        {
+        {         
             List<Pdu> tempSet = pc2_pc1_receiver.getMCASTMessagesToSend();
-            if (tempSet != null && !tempSet.isEmpty())
+            if (!tempSet.isEmpty())
             {
                 pc2_pc3_sender.setKeepRunning(true);
                 pc2_pc3_sender.setListToSend(tempSet);
 
-                if (!pc2_pc3_sender.getIsRunning())
-                {
-                    pc2_pc3_sender.run(ipPC3, portPC3);
+                if (!pc2_pc3_sender.isAlive())
+                {                    
                 }
 
-                if (!pc2_pc3_receiver.getIsRunning())
+                if (!pc2_pc3_receiver.isAlive())
                 {
-                    pc2_pc3_receiver.run(portPC3);
                 }
             }
             else
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
index 56bb51e7c3ca2cbf103fdf0177909bae7c8d4d26..fadd1bb5febe6b2587113280c867abb730d2b524 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
@@ -12,7 +12,7 @@ import java.util.List;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
-public class BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver
+public class BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver extends Thread
 {
 
     public static final boolean USE_FAST_ESPDU = false;
@@ -21,21 +21,17 @@ public class BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver
     static Mutex mutex = new Mutex();
     static boolean keepRunning = false;
     static boolean isRunning = false;
+    
+    PduFactory factory;
+    MulticastSocket socket;
+    InetAddress address;
+    DatagramPacket packet;
 
-    public static void run(InetAddress addr, int port)
+    public void run()
     {
-        PduFactory factory;
-        MulticastSocket socket;
-        InetAddress address;
-        DatagramPacket packet;
-
         try
         {
             isRunning = true;
-            address = addr;
-            socket = new MulticastSocket(port);
-            socket.joinGroup(address);
-
             factory = new PduFactory();
 
             while (keepRunning)
@@ -97,6 +93,20 @@ public class BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver
         return isRunning;
     }
 
+    public void setNetworkData(InetAddress addr, int port)
+    {
+        try
+        {
+            address = addr;
+            socket = new MulticastSocket(port);
+            socket.joinGroup(address);
+        }
+        catch (IOException ex)
+        {
+            Logger.getLogger(BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.class.getName()).log(Level.SEVERE, null, ex);
+        }
+    }
+
     public void setKeepRunning(boolean k)
     {
         keepRunning = k;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver.java
index 2d2e16806926ecc00355cc5bc525792349ebb655..73804f6087728c39047dddb46062de8929700795 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver.java
@@ -5,7 +5,7 @@ import java.net.DatagramPacket;
 import java.net.DatagramSocket;
 import java.net.SocketException;
 
-public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver
+public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver extends Thread
 {
 
     static boolean keepRunning = false;
@@ -13,12 +13,11 @@ public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver
 
     static int portPC3;
 
-    public static void run(int port)
+    public void run()
     {
-        portPC3 = port;
         isRunning = true;
 
-        try (DatagramSocket socket = new DatagramSocket(port))
+        try (DatagramSocket socket = new DatagramSocket(portPC3))
         {
 
             byte[] buffer = new byte[65507];
@@ -50,4 +49,8 @@ public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduReceiver
     public boolean getIsRunning(){
         return isRunning;
     }
+    
+    public void setNetworkSettings(int port){
+        portPC3 = port;
+    }
 }
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender.java
index b4a80d14e7c932af6517460278c205621eb8a715..09d1c0b278b24055e170393b19548f6b849b1ac5 100755
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender.java
@@ -14,7 +14,7 @@ import java.net.InetAddress;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
-public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender
+public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender extends Thread
 {
 
     static Mutex mutex = new Mutex();
@@ -25,13 +25,10 @@ public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender
     static InetAddress pc3IP;
     static int portPC3;
 
-    public static void run(InetAddress address, int port)
+    public void run()
     {
         isRunning = true;
 
-        pc3IP = address;
-        portPC3 = port;
-
         while (keepRunning)
         {
             try
@@ -90,6 +87,12 @@ public class BRE_KNO_MCC_PC2_PC3_UNICAST_PduSender
         }
     }
 
+    public void setNetworkSettinigs(InetAddress address, int port)
+    {
+        pc3IP = address;
+        portPC3 = port;
+    }
+
     public boolean getIsRunning()
     {
         return isRunning;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC3_PC2_UNICAST_PduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC3_PC2_UNICAST_PduReceiver.java
index 99512720b737b8da5633e7c832b89482149755a2..56fc85b510ba151970cef92ee3cf9d3ce098bd6a 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC3_PC2_UNICAST_PduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/BRE_KNO_MCC/BRE_KNO_MCC_PC3_PC2_UNICAST_PduReceiver.java
@@ -12,13 +12,13 @@ import java.util.logging.Logger;
 public class BRE_KNO_MCC_PC3_PC2_UNICAST_PduReceiver
 {
 
-    static boolean keepRunning = false;
+    static boolean keepRunning = true;
     static boolean isRunning = false;
 
     static int portPC3;
     static InetAddress ipPC2;
 
-    public static void main()
+    public static void main(String[] args)
     {
 
         portPC3 = 2343;
diff --git a/examples/src/OpenDis7Examples/AllPduSender.java b/examples/src/OpenDis7Examples/AllPduSender.java
index 130aeb917ab4aa27b23e74bf7706c5d8286dd559..dee5834a6097217bf2b1253ce017291d36c13174 100755
--- a/examples/src/OpenDis7Examples/AllPduSender.java
+++ b/examples/src/OpenDis7Examples/AllPduSender.java
@@ -21,7 +21,7 @@ public class AllPduSender
     public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
 	
     /** Default multicast port used, matches Wireshark DIS capture default */
-    public static final int    DEFAULT_MULTICAST_PORT    = 3000;
+    public static final int    DEFAULT_MULTICAST_PORT    = 2342;
 	
     private int port;
     InetAddress multicastAddress;