NVME not detected

Yesterday arrived my new ROCK PI 4A v1.4 4GB with heatsink and m2 extension board.
I bought blindly Intel 660p M.2 1 TB SSD NVMe (111€) not verifing compatibility…
Not detected in ROCK PI 4 directly or via extension board.
Tested with Armbian, Debian and Ubuntu.
Powered by QC charger.
Tomorrow i expect PD charger. I hope its just a power issue.

PS: NVMe disk works in my old PC thru cheap PCI Express board.

It works! With issues.
After 3 days of tinkering and using PD charger up to 60W .
Its does not recognize same as in M.2 NVMe Intel 1TB 660P Not reconized on Ubuntu Server
BUT after few minutes, i did restart and there it was.


Its very peculiar behaviour. After cool down nothing again (Power down for longer time). After warm up its detected again.

Posting here because I’m in the same situation… Intel 660p not being detected. If anyone figures out a reliable method, please do post it!

I guess it’s because 660P is a little too slow at cold start, like some microSD cards having similar issue RP4 will skip it at cold start (though it’s accessible once started from eMMC) but just fine when hot reboot. It could be fixable in the firmware.

No, i did not find solution how to detect it on cold boot.

Im using PD2 power brick, armbian from radxa download page and extension board as on picture:
RockPiExt

@ O635789
Its not just after restart. I need to wait few minutes (to warm up?) and then restart.
If it were normal mini PC, I would return it. But I consider it “tinkering” board, so I’m willing to accept this peculiar behaviour.

PS: I believe I saw other RK3399 board(s) with this drive working on other forums.

Interesting. For now I’ll just use a standard ssd in a USB enclosure until a stable solution appears.

Are you referring that, you need to:

  1. unplug the power adapter
  2. plug the power and cold boot rockpi4
  3. wait a few minutes, nvme not detected
  4. restart in desktop or type reboot
  5. nvme detected

Is that correct?

Yes, that’s pretty much accurate. That was my first success with this drive under Debian.
Just reboot is not enough after cold start. I need to wait few minutes. Then I can restart as many times as I want.

Now I’m using Armbian 24/7 headless. Because I do have manual mounting in fstab, I’ll try to connesct thru ssh. If i’m not sucessfull I unplug USB-C from power adapter and immediatly plug back - and it works.

rockpi@rockpi4a:~$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk0     179:0    0   3.7G  0 disk
└─mmcblk0p1 179:1    0   3.5G  0 part /
zram0       254:0    0    50M  0 disk /var/log
nvme0n1     259:0    0 953.9G  0 disk
└─nvme0n1p1 259:1    0 953.9G  0 part /mnt/m2
rockpi@rockpi4a:~$ sudo hdparm -t --direct /dev/nvme0n1

/dev/nvme0n1:
 Timing O_DIRECT disk reads: 2030 MB in  3.00 seconds = 676.54 MB/sec

Nope.
“Cold start” with “warm electronics” is ok, it will detect drive correctly. It needs to be powered off for longer time to not detect this nvme

I think we have solved this issue. Please update the latest u-boot.

sudo apt-get install rockpi4b-rk-u-boot-latest
sudo /usr/local/sbin/rockpi4b_upgrade_bootloader.sh

and type YES.

Now you don’t need to warm it up.

Has the u-boot fix been tested on Armbian? My Intel 660p 1TB isn’t recognizable on Armbian even with u-boot update.

Edit: Without touching anything (except SD card), using Ubuntu Server detects the SSD, but Armbian doesn’t.