diff --git a/tc/obsw_tc_service3.py b/tc/obsw_tc_service3.py
index 3f85dc1b1cc4a08fec8d6667183f19bdfb07527d..6e7226a0767296f9851c96f899980f90a7720ad7 100644
--- a/tc/obsw_tc_service3.py
+++ b/tc/obsw_tc_service3.py
@@ -50,7 +50,7 @@ def pack_custom_tests(tc_queue: Deque):
     command = PusTelecommand(service=3, subservice=5, ssc=3101, app_data=sid_thermalsensor)
     tc_queue.appendleft(command.pack_command_tuple())
 
-    tc_queue.appendleft(("wait", 6))
+    tc_queue.appendleft(("wait", 4))
 
     new_interval = 1.2
     interval_app_data = sid_thermalsensor + make_interval(new_interval)
@@ -70,6 +70,7 @@ def pack_custom_tests(tc_queue: Deque):
 
 
 def pack_internal_error_reporter_tests(tc_queue: Deque):
+    tc_queue.appendleft(("print", "Testing internal error reporter (diagnostic): "))
     new_interval = 3.0
     interval_app_data = sid_internal_err_rprtr + make_interval(new_interval)
     tc_queue.appendleft(("print", "Setting internal error reporter interval to 3.0 second: "))
@@ -82,6 +83,40 @@ def pack_internal_error_reporter_tests(tc_queue: Deque):
 
     tc_queue.appendleft(("wait", 3))
 
+    tc_queue.appendleft(("print", "Disabling internal error reporter generation: "))
+    command = PusTelecommand(service=3, subservice=8, ssc=3107, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    tc_queue.appendleft(("print", "Generate one shot internal error report: "))
+    command = PusTelecommand(service=3, subservice=28, ssc=3108, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    tc_queue.appendleft(("print", "Generate structure report: "))
+    command = PusTelecommand(service=3, subservice=11, ssc=3109, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    tc_queue.appendleft(("print", "Enabling internal error reporter generation: "))
+    command = PusTelecommand(service=3, subservice=7, ssc=3106, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    new_interval = 8.0
+    interval_app_data = sid_internal_err_rprtr + make_interval(new_interval)
+    tc_queue.appendleft(("print", "Setting internal error reporter interval to 8.0 second: "))
+    command = PusTelecommand(service=3, subservice=32, ssc=3105, app_data=interval_app_data)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    tc_queue.appendleft(("print", "Generate structure report: "))
+    command = PusTelecommand(service=3, subservice=11, ssc=3109, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+    tc_queue.appendleft(("print", "Disabling internal error reporter generation: "))
+    command = PusTelecommand(service=3, subservice=8, ssc=3107, app_data=sid_internal_err_rprtr)
+    tc_queue.appendleft(command.pack_command_tuple())
+
+
+
+
+