Step 1: Disabling USB Mass Storage First, create a boot.py file with the following content: import storage import usb_cdc # Disable USB mass storage storage.disable_usb_drive() # Keep USB REPL enabled to allow deploying files via REPL tools usb_cdc.enable(console=True, data=True) # Remount the filesystem so CircuitPython code can write to it storage.remount("/", readonly=False) When this code runs on boot, the CIRCUITPY drive will no longer appear on your computer. But don’t panic! Your device is still alive and kicking, and you can access it through the REPL (Read-Eval-Print Loop). Important: The boot.py file runs before code.py, and it’s where you set up USB behavior. Always keep this distinction in mind. Step 2: Accessing the REPL Even with USB mass storage disabled, the REPL remains accessible via the USB serial interface. Here’s how to connect: Open a Serial Terminal: Use a tool like Mu Editor, Thonny, or even mpremote. On Linux/macOS: Use screen (e.g., screen /dev/ttyACM0 115200). On Windows: Use a terminal program like PuTTY. Press Enter: Once connected, hit Enter to activate the REPL. Start Typing Python Code: You’re now in the CircuitPython shell, ready to command your device! Step 3: Restoring USB Mass Storage From the REPL, you can modify or delete the offending boot.py file to restore USB mass storage functionality. Here’s how to rename it (so you can keep it as a backup): import os # Rename boot.py to boot_backup.py os.rename("boot.py", "boot_backup.py") Alternatively, if you’re feeling bold, you can delete it entirely: import os # Delete boot.py os.remove("boot.py") Once you’ve made the change, reboot your device: import microcontroller # Reboot the board microcontroller.reset() And just like that, the CIRCUITPY drive will reappear! Congratulations, you’ve regained control.