diff --git a/tc/obsw_tc_service5_17.py b/tc/obsw_tc_service5_17.py
index 49be65b936313cebff94a540189c0b5d388306f0..4b4a94aacc0d3ebf71bd1d5f036812adf38a891f 100644
--- a/tc/obsw_tc_service5_17.py
+++ b/tc/obsw_tc_service5_17.py
@@ -60,6 +60,8 @@ def pack_service17_test_into(tc_queue: TcQueueT, op_code: int) -> TcQueueT:
         pack_enable_periodic_print_packet(tc_queue, True, 0)
     elif op_code == 129:
         pack_enable_periodic_print_packet(tc_queue, False, 0)
+    elif op_code == 150:
+        pack_trigger_exception_packet(tc_queue, 0)
     return tc_queue
 
 
@@ -69,4 +71,10 @@ def pack_enable_periodic_print_packet(tc_queue: TcQueueT, enable: bool, ssc: int
         command = PusTelecommand(service=17, subservice=128, ssc=ssc)
     else:
         command = PusTelecommand(service=17, subservice=129, ssc=ssc)
-    tc_queue.appendleft(command.pack_command_tuple())
\ No newline at end of file
+    tc_queue.appendleft(command.pack_command_tuple())
+
+
+def pack_trigger_exception_packet(tc_queue: TcQueueT, ssc: int):
+    tc_queue.appendleft(("print", "Triggering software exception"))
+    command = PusTelecommand(service=17, subservice=150, ssc=ssc)
+    tc_queue.appendleft(command.pack_command_tuple())