Argon Neo 5 NVMe Not Recongnized After Setup Scripts

As the title says I am having issues with the NVMe drive. What is unique about my situation is that the NVMe drive was showing up using “lsblk” before I ran both the setup scripts and rebooted.

I booted off of a USB loaded with Ubuntu 23.04. Upon logging in I ran lsblk which had the nvme drive. I then ran the following commands:

curl https://download.argon40.com/argon-eeprom.sh | bash 
# command hung after installation when promoting to restart, so I hard cycled power
# ran the command again and it said everything was installed

curl https://download.argon40.com/argonneo5.sh | bash
sudo shutdown -r now

After the scripts and rebooting, I ran lsblk again only to find that the NVMe no longer shows up.

My boss had ordered an Argon NEO 5 too and let me test my pi and argon with his to diagnosis if it was a hardware issue. After swapping around the nvme blade, raspberry pi 5, and pcie ribbon. The nvme blade and ribbon both function correctly when put on a fresh raspberry pi.

My hunch is something changed in one of the bash scripts is incompatible with my NVMe blade. Is there any fix outside of factory resetting raspberry pi firmware?

NVMe Blade: KingSpec SSD 1TB Internal Solid State Drive M.2 NVMe 2280 PCIe Gen 3.0X4

Thank you for the report. It could confirm my suspicion that only the last bootloader update triggers this problem in its spread.

Can you please check which version of the bootloader was delivered with the functioning RPI5?

Unfortunately only the date information gives a hint about the release:
rpi-eeprom-update

should show up some information.

It should be possible to rollback to an older version if you do it manually on your own risk.
rpi-eeprom-update -d -f /tmp/pieeprom

Attention: If you trying to downgrade, it could be safer to ensure that you use the default config like described here and a date/version which supports RPi5 !:

Ubuntu does not update the rpi-eeprom package very often, so running the Argon scripts probably downgraded the EEPROM on your board.

Here’s what you can do to bring your board firmware up-to-date.

Download a copy of the latest “default” firmware to your board from the rpi-eeprom package repository. As I write this the latest is pieeprom-2024-02-16.bin. This is what I’m running on my Pi 5 in my NEO 5.

Create a text file containing the EEPROM parameters recommended by Argon. For this example let’s call the text file eeprom.conf:

[all]
BOOT_UART=1
WAKE_ON_GPIO=0
POWER_OFF_ON_HALT=1
BOOT_ORDER=0xf416
PCIE_PROBE=1

Apply these parameters to the downloaded firmware file:

sudo rpi-eeprom-config --apply eeprom.conf pieeprom-2024-02-16.bin

This command also arranges for the modified firmware to be installed at the next boot. So, reboot your board. It will apply the firmware and then reboot again.

Once you log back in, verify the firmware version:

rpi-eeprom-update 

Also, verify that the EEPROM parameters were applied correctly:

rpi-eeprom-config

Ubuntu users probably shouldn’t be using the Argon scripts.

rpi-eeprom-update
BOOTLOADER: up to date
CURRENT: Mon Sep 25 10:44:03 UTC 2023 (1695638643)
LATEST: Mon Sep 25 10:44:03 UTC 2023 (1695638643)

If the latest release was February 16th 2024 then Ubuntu 23.04 is behind. I am curious though, Instead of manually patching the latest firmware as demyers suggests, would I be able to temporarily boot off of raspian run the argon shell scripts, restart and boot from Ubuntu?

UPDATE*
Booting off of the latest version of Raspian updated the rpi-eeprom to a later version (from November). When I rebooted it, it booted straight off of the NVMe that had Ubuntu 23.04 on it.

When I check the rpi-eeprom-config to see what the parameters where they were as follows:

BOOT_UART=1
WAKE_ON_GPIO=0
POWER_OFF_ON_HALT=1
BOOT_ORDER=0xf416
PCIE_PROBE=1

My Pi 5 came with Dec 06 2023 so your board might still have ended up with the firmware downgraded, but if it’s working then that’s good.