diff --git a/tools/tacle-check/lib/tb_wcet.py b/tools/tacle-check/lib/tb_wcet.py
index 4cae5e60637bac529838ca7daf02546e0fe0695d..e2dc20ccd8b8547045996441cf8395e0854f548a 100644
--- a/tools/tacle-check/lib/tb_wcet.py
+++ b/tools/tacle-check/lib/tb_wcet.py
@@ -627,7 +627,19 @@ def process_arm_benchmark(benchmark_name, files, out_dir, patmos_clang, patmos_c
     # 6.) create helper script
     script = os.path.join(result_dir, 'flash.sh')
     with open(script, 'w') as outfile:
-        outfile.write("ARM_FlashProgrammer -device MKL46Z256M4 -execute -program "+s19)
+        outfile.write("#! /bin/bash\n\n")
+        outfile.write("DIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd)\"\n")
+        outfile.write("\nif command -v ARM_FlashProgrammer >/dev/null 2>&1; then\n")
+        outfile.write("	FLASHER=`command -v ARM_FlashProgrammer`\n")
+        outfile.write("elif command -v UsbdmFlashProgrammer >/dev/null 2>&1; then\n")
+        outfile.write("	FLASHER=`command -v UsbdmFlashProgrammer`\n")
+        outfile.write("else\n")
+        outfile.write("	echo \"No suitable flash program found.\"\n")
+        outfile.write("	exit 1\n")
+        outfile.write("fi\n\n")
+        outfile.write("CMD=\"${FLASHER} -device MKL46Z256M4 -execute -program ${DIR}/"+benchmark_name+".s19\"\n")
+        outfile.write("echo $CMD\neval $CMD\n")
+    os.chmod(script, 0o744)
     
     # for platin & pasim
     entry = benchmark_name + "_main"