diff --git a/TestITM b/TestITM
index 943735bde26ee783030e5ef6ce26057a0db932c1..9218b20e39a7a0175482e436e7f11ed923fab2fd 100644
--- a/TestITM
+++ b/TestITM
@@ -1,17 +1,15 @@
-Ok 97
-Ok 471
-Error 83
-Error Overrun
-Ok 471
-Error 84
-bare9
-goto sleep
-woken..
-data 97
-goto sleep
-woken..
-data 13
-goto sleep
-woken..
-data 97
-goto sleep
+data 97
+UsartReceiveOverflow
+data 13
+data 97
+UsartReceiveOverflow
+data 97
+UsartReceiveOverflow
+data 97
+UsartReceiveOverflow
+data 100
+RingBufferOverflow
+data 115
+RingBufferOverflow
+data 13
+UsartReceiveOverflow
diff --git a/examples/bare10.rs b/examples/bare10.rs
index 5d3882e8dbfceb0a8babcc4218f30e3872f5dc54..28104453614e197c841aa383e790288763be3b89 100644
--- a/examples/bare10.rs
+++ b/examples/bare10.rs
@@ -83,10 +83,10 @@ const APP: () = {
     fn trace_data(byte: u8) {
         let stim = &mut resources.ITM.stim[0];
         iprintln!(stim, "data {}", byte);
-        // for _ in 0..10000 {
-        //     asm::nop();
-        // }
-    }
+        for _ in 0..10000 {
+             asm::nop();
+        }
+    } 
 
     #[task(priority = 1, resources = [ITM])]
     fn trace_error(error: Error) {
@@ -145,15 +145,16 @@ const APP: () = {
 //
 //    Did you loose any data (was the data correctly echoed)?
 //
-//    ** your answer here **
+//    Yes
 //
 //    Was the data correctly traced over the ITM?
 //
-//    ** your answer here **
+//    No, it got usartrecieveoverflow
 //
 //    Why did you loose trace information?
 //
-//    ** your asnwer here **
+//    It was because of the loop that is implemented in the trace function.
+//    When the loop has been implemented, the function will be called again when it already is doing some work.
 //
 //    Commit your answers (bare10_1)
 //