I’m fascinated by microcomputers, especially Raspberry Pi’s. Long awaited 5’th model came to me as a gift from my partner. I couldn’t wait to put my hands on it and some few months ago, at last I had it. But running OS from SD card is not what I wanted. Neither “hardcabeled” SSD. Microcomputer is micro for a reason and it should stay like this. There is a solution that suits my needs and… let’s say it: sense of style!

NVMe Base

Due to a very high demand it was almost impossible to buy an NVMe Base shortly after RPi’s release in October 2023. I had to wait few more weeks for it. And of course, as most of RPi addons, I chose one from well known brand Pimoroni – based in UK microcomputer addons manufacturer. If you don’t know them, check out their website, it’s fantastic!

Installation

Finally I got it after few weeks of waiting. Demand was so high that Pimoroni had to divide orders into groups and deliver NVMe Bases group by group. My order contained a base and NVMe drive Patriot P300.

Installation process is pretty straight forward. There is an assembly instruction on the website but if you know RPi’s system it shouldn’t be a problem to do it yourself. I had my 6 year old boy to help.

Software installation

There are couple of things that are necessary to do, before installing the system on NVMe drive.

  • Boot RPi from SD card with Rasbpian image
  • Format the NVMe drive using Raspberry Imager tool from the Raspian GUI
  • In terminal run
    sudo raspi-config
  • Go to “Advanced” and choose your NVMe drive to boot from
  • Reboot RPi

Activating PCIe 3 mode

Note that this mode is officially not supported but works, quite well as I can tell from my experience.

Make sure your system is up to date. In that case you might want to run

sudo apt-get update && sudo apt-get upgrade

in terminal.

  • Edit: /boot/firmware/config.txt (using nano or vim, if you prefer)
  • Add line in the bootom of the file:

    [all]
    dtparam=pciex1_gen=3
  • Save, exit and reboot

Benchmarks

As your drive is working at it’s full possible speed it’s time to make measurements. There are some simple benchmarking tools in terminal that I will use.

systemd-analyze

This one will show boot time, both kernel and the whole system.

sudo hdparm -t --direct /dev/nvme0n1pl

where /dev/nvme0n1pl is the path to your drive mountpoint. Your drive propably will have different name – you can check it with

fsdisk -l

I did few runs to get sort of a medium score in MB/s. Read speed should oscillate around 800-820 MB/s.

Write speeds were tested using a script

sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

Write speed was 436 MB/s. Really impressive! It leaves behind both SD cards (R/W ~ 70-90 MB/s) and USB3 SSD’s (R/W ~ 200 – 350 MB/s).

Conclusion

Benchmarks don’t leave any doubts – NVMe is the fastest memory technology on the market right now. If you want to use Raspberry PI 5 as I do for daily usage, such as internet browsing, LAN and servers management and even software development – which I do partially on RPi – NVMe drive is a way to take your raspberry to the next level!