diff --git a/preload/menu.py b/preload/menu.py
index 44238f520cc16e691535f74b9f89ff9473bae291..8e1eb4a9447f88ac5e361b638f3e8b3cf303ba32 100644
--- a/preload/menu.py
+++ b/preload/menu.py
@@ -82,7 +82,7 @@ def usb_mode(disp):
         pass
 
     # Wait for any button to be pressed and disable USB storage again
-    while buttons.read() == 0:
+    while buttons.read() == 0 and not os.fs_is_attached():
         pass
 
     os.usbconfig(os.USB_SERIAL)