Couldn't install a NVMe drive into a Librem 13 v3

I thought this would be a quick upgrade. I got a Crucial PCIe Gen4 NVMe 2280 M.2 SSD, checking to be sure it was the right size/form-factor to fit the Librem 13 v3 I have. I opened the case, put in the drive, and dug around to find a M2 screw to mount it since there was none. When I got it back together, I tried to boot and some screen flashed by too fast, then it went to a green text screen. It looked like a BIOS kind of thing, but you could only view debugging information and there was no way to change drive order or anything.

Needless to say, I was pretty spooked and I took it apart again and got the NVMe out, put it together, and it booted fine. I’m reluctant to try again until I understand what the heck went wrong.

The broad question is, “how do I get this to work?” My assumption was that an empty drive in the slot would just show up in Gnome Disks and I could format it from there, but when it didn’t boot, I was completely befuddled. I saw another thread where they mentioned hitting ESC at boot to get to a menu, but before I do this all again, I want to know there’s a shot of this working.

It would help if you told us what firmware you are running on. PureBoot or SeaBIOS?
And what internal device is your usual boot medium (that booted normally once you had removed the offending M.2 SSD, if I understand well)

Completely different hardware and boot firmware but … I recently had a problem where an unformatted / incorrectly formatted secondary internal disk would confuse the boot firmware enough to cause problems with the boot even though the intended boot disk was fine. To resolve that might require an external enclosure so that you can just attach the new NVMe disk in an enclosure to any working booted computer and then put some sane partition table and file system on the disk, even if the file system is empty.

So following that train of thought …

It is your assumption that it is an empty drive when a lot of drives turn up with Windows-crap on them.

Without rebooting to check for absolute certainty, I am pretty sure it’s SeaBIOS (screenshots online fit with what I remember, and I definitely don’t see the ASCII-graphics “PureBoot” logo on startup.) The primary drive is a SATA SSD, and the NVMe is a newly purchased add-on for extra storage.

Thank you for your assistance!

Unfortunately, I am not familiar with SeaBIOS, so I won’t be of much help.
I was hoping maybe you’d be running PureBoot, because - if not in restricted boot mode - you can get a console before any storage device is being accessed or boot attempted. Then, you’d be running inside the payload HEADS which is still firmware, and have a running Linux environment with many tools that can be used for troubleshooting.
I agree with @irvinewade that an external enclosure would be a good solution.
Or maybe a friend’s computer that can accept NVMe M.2 SSD and see if it works and can erase it (it is a fact that new SSDs sometimes come with pre-installed Windows crap which could confuse SeaBIOS.)
Other than these suggestions, there is of course the usual bad news to consider:

  • the new part is DOA (hard to prove)
  • you fried the part while installing it without precautions for static electricity
  • for some unknown reason, it is not compatible
  • the M.2 slot on your motherboard is defective

Just to conclude this thread, I did try again. I was able to hit the escape key early enough and get to a boot menu which let me boot from my original drive. Once booted, the NVMe was available to format and mount. It appears that I need to hit escape on each boot.

I took a look through man pages and such to try and figure out how to change the default drive, but it seemed quite opaque (unclear which commands to use), complicated (rebuild grub?), and had the potential to brick my computer so I just let it be.