Thanks, Ron. It may be that the T5 SSD needs init/spin-up time before it comes ready … just guessing. I’ll try mine out later.
What I do when I want to boot an external (USB, NVMe) device is I fully boot via SD/eMMC, then just copy that fully initialized/installed rootfs/OS over while on the target (I think our docs say to do it on the host using the BSP rootfs). That way it should behave the same as if you’d booted from SD/eMMC, although you have to remember to tell the kernel (via the APPEND line in extlinux.conf ON THE EXTERNAL DEVICE) where to find the rootfs via the ‘root=/dev/sda1’, etc. kernel arg. On a fresh copy of extlinux.conf from the SD/eMMC rootfs, it’ll say ‘root=/dev/mmcblk0p1’, etc., so that needs to change when you copy /boot/extlinux/extlinux.conf to the external USB drive. I do believe that’s documented in our L4T docs.
Note: If you want a longer boot delay (for the T5) on your Nano, you can change the bootdelay env variable in U-Boot, and save it for subsequent boots:
printenv bootdelay ← s/b 2
setenv bootdelay 10 ← or whatever works for you, in seconds
saveenv ← saves the new env out to QSPI, so U-Boot will pick it up on next boot
Tom