diff --git a/library/Osmocom_VTY_Functions.ttcn b/library/Osmocom_VTY_Functions.ttcn
index 82aff6b..042f244 100644
--- a/library/Osmocom_VTY_Functions.ttcn
+++ b/library/Osmocom_VTY_Functions.ttcn
@@ -56,7 +56,7 @@
 	}
 
 	/* wait for any of the permitted prompts; buffer + return all intermediate output */
-	function f_vty_wait_for_prompt(TELNETasp_PT pt, boolean strict := true) return charstring {
+	function f_vty_wait_for_prompt(TELNETasp_PT pt, boolean strict := true, charstring log_label := "(?)") return charstring {
 		var charstring rx, buf := "";
 		var integer fd;
 		timer T := 2.0;
@@ -68,10 +68,10 @@
 			[] pt.receive(pattern "[\w-]+\(*\)\# ") { };
 			[] pt.receive(t_vty_unknown) -> value rx {
 				if (strict) {
-					setverdict(fail, "VTY: Unknown Command");
+					setverdict(fail, "VTY: Unknown Command: " & log_label);
 					mtc.stop;
 				} else {
-					log("VTY: Unknown Command (ignored)");
+					log("VTY: Unknown Command (ignored): " & log_label);
 					buf := buf & rx;
 					repeat;
 				}
@@ -79,14 +79,14 @@
 			[] pt.receive(charstring:?) -> value rx { buf := buf & rx; repeat };
 			[] pt.receive(integer:?) -> value fd {
 				if (fd == -1) {
-					setverdict(fail, "VTY Telnet Connection Failure");
+					setverdict(fail, "VTY Telnet Connection Failure: " & log_label);
 					mtc.stop;
 				} else {
 					repeat; /* telnet connection succeeded */
 				}
 			}
 			[] T.timeout {
-				setverdict(fail, "VTY Timeout for prompt");
+				setverdict(fail, "VTY Timeout for prompt: " & log_label);
 				mtc.stop;
 				};
 		}
@@ -97,7 +97,7 @@
 	/* send a VTY command and obtain response until prompt is received */
 	function f_vty_transceive_ret(TELNETasp_PT pt, charstring tx, boolean strict := true) return charstring {
 		pt.send(tx);
-		return f_vty_wait_for_prompt(pt, strict);
+		return f_vty_wait_for_prompt(pt, strict, tx);
 	}
 
 	/* send a VTY command and obtain response until prompt is received */
