Help restoring boot from external storage

After having trouble with the software setup on my new Framework 16 I had to set it aside for a while, and now that I’m coming back to it I can’t pick up where I left off.

Where I left off was having installed an OS on an external USB-C storage device[1], which I was able to boot from at the time. Coming back to it now I can’t get it to boot from the same external storage.

Following the instructions at How do I boot from a USB drive? I don’t see any boot options at all. Unplugging the external storage and plugging it back in did get the light on the storage device to come on, but did not get it to appear on the F12 screen (including after rebooting). The link from that page that says it goes to a workaround for this situation goes to How do I enter the BIOS on the Framework Laptop? , which does not describe a workaround. The BIOS only shows the two internal storage devices, not the external.

Does anyone know what I need to do to restore the ability to boot from my external storage again?

I have not (yet) enabled any of the boot security options in the BOIS.


  1. (I had trouble getting the installer to set up the partitioning I wanted; I plan to use the external to partition the internal storage in advance, then have the installer use the pre-made partitions. Once that’s working the external can be a rescue drive.) ↩︎

Which OS do you have installed?

The OS installed on the external before the BIOS stopped recognizing it is Debian 13. You think Debian somehow broke the BIOS?

Normally I would say no, but it is in beta, so I guess it’s a possibility?

Supposing it was that, any suggestions for how to fix it?

Use a usb to live boot a distro, and check your grub entries. You may have to re-install grub, I would follow this guide if you do: https://help.ubuntu.com/community/Grub2/Installing#via_ChRoot

The storage I installed to was a USB, which the BIOS has stopped detecting. I don’t see how grub entries on a device the BIOS doesn’t detect could be the thing that prevents the BIOS from detecting the device

Ok, there are several things in this page that you can try: https://askubuntu.com/questions/285539/detect-and-mount-devices

All of those depend on being able to boot to the OS, which is what I’m unable to do.

Support eventually decided to replace the mainboard. The replacement also fails to detect the portable drive - a Western Digital P40 Game Drive model WDBAWY5000ABK-WESN, which you may want to avoid if you want a portable to use with a Framework. The replacement does detect the USB-C thumbdrive I put the installer image on, but won’t boot to it.

I’m starting to think Framework computers may just not work with USB-C storage devices in general, which is going to make some things unnecessarily difficult. The least of which is just having a bootable installer that can go faster than USB-A. Nevermind having a bootable rescue drive.

You can’t boot to a Live Linux OS in a USB Stick?

Correct. When the Framework 16 first arrived I was able to boot from the USB-C thumbdrive with the installer (not a live distro, but AFAIK booting is the same), and then to install from the thumbdrive to the larger USB-C portable drive, and then to boot to the portable. After setting it aside for a while and coming back to it, the BIOS didn’t detect either of those drives, much less boot from either of them. Now the replacement mainboard detects but will not boot from the thumbdrive, and doesn’t detect the portable.

Do you have a USB-A thumbdrive you can use to test booting into a live distro? Also, I think this topic might be helpful: Connectivity problems with external drive when connecting over USB-C - #30 by brianshmrian

Did you by any chance try using a different port?

Yes, I’ve tried every port. Now I’ve bought another thumbdrive (another USB-C thumbdrive, because I’m not going to use 0.48M/s instead of 200M/s), and since Framework Support refuses to believe any other Linux could ever run on their computer (despite Debian working perfectly fine until the BIOS decided the drive doesn’t exist) I put a Fedora image on the new thumbdrive and it boots just fine, of course it does, just like the older device should and did before the BIOS decided it didn’t exist.

The extra weird thing is that once booted to the new thumbdrive, it has no trouble seeing the drive the BIOS doesn’t even recognize as connected.

So apparently the Framework BIOS goes out of its way to hide some storage devices from its list of storage devices, which is completely unacceptable. If this sort of thing had happened back when I was building desktops all the time, I would have written off the brand as unusable because their BIOS can’t even detect a storage device, and swapped out the mainboard for one that works.

Any idea where I could find a spec for when the Framework BIOS will hide a storage device from its list?

Hm, no idea, I would ask support. I did find a topic that seems related to your issue: Booting from USB drive handling

I wonder if this is somehow related to this FW13 issue: AMD Framework and NVMe SSD Enclosure Compatibility Investigation - #97 by Craig_Hesling

Support seems to think it’s not a real problem and I just need to reinstall from a freshly written installer on a thumbdrive. So I tried that with Debian again from another new thumbdrive trying to install to a new M.2 SSD in an external enclosure, one that was detected (as attached but not bootable) every time I rechecked that the detection problems were limited to the portable drive, but when I booted to the installed the enclosure (& storage) had not only stopped being detected by the BIOS but this time it also became inaccessible by the installer. So, just trying again on a different drive didn’t help at all.

The second link seems to be about data transfer problems, which I doubt are related to BIOS detection problems, and certainly weren’t happening while the original installation was successful.

I’m not sure about the first link, it sounds like the solution there was to install a separate boot manager on the internal drive that gives a boot menu that includes OSs installed onto other drives, but I’m not planning on using a boot manager other than the BIOS. The thing I’m not sure about is what ATi means by “turning off” and “re-enabling” drives as boot targets in the BIOS; it looks to me like the BIOS is detecting which drives are bootable according to EFI standards, is there an option to tell the BIOS which drives are bootable?

1 Like