diff --git a/tests/pkg_libcose/tests/01-run.py b/tests/pkg_libcose/tests/01-run.py
index d4011d0fd705bfe6f3398105b4dac63592815f04..d130286d0bd7304b1110a78af2f954cbc9549abb 100755
--- a/tests/pkg_libcose/tests/01-run.py
+++ b/tests/pkg_libcose/tests/01-run.py
@@ -11,10 +11,15 @@ import sys
 from testrunner import run
 
 
+# on real hardware, this test application can take several minutes to
+# complete (~4min on microbit)
+HW_TIMEOUT = 300
+
+
 def testfunc(child):
     board = os.environ['BOARD']
     # Increase timeout on "real" hardware
-    timeout = 120 if board is not 'native' else -1
+    timeout = HW_TIMEOUT if board is not 'native' else -1
     child.expect('OK \(\d+ tests\)', timeout=timeout)