NVMe Support Likely Coming to Raspberry Pi

Raspberry Pi and NVMe
An NVMe SSD Next to a Raspberry Pi 3A+ and Compute Module 3. (Image credit: Tom's Hardware)


Even with the best microSD cards for Raspberry Pi, you get maximum sequential transfer rates around 40 MBps and 4K random reads and writes, the kind that matter most, are under 5 MBps. To get faster storage, you can boot your Raspberry Pi from a USB SSD, but many Pi fans would like to go a step further and attach a storage device directly to the PCIe bus and some have even tried soldering on special chips to make this happen.  These hacks may not be necessary in the near future, because the Raspberry Pi Foundation is looking at ways to add PCIe NVMe storage support to a future Pi, most likely the upcoming Raspberry Pi Compute Module 4. 

On yesterday’s episode of the Pi Cast, Raspberry Pi Trading CEO Eben Upton said that he and his team are planning to launch the Compute Module 4 within the next year and hope to support NVMe storage on it. 

“The Raspberry Pi Compute Module, CM4, we will support NVMe to some degree on that,  because of course it [Raspberry Pi 4] has a PCI Express channel,” he said. “We have a single lane Gen 2 which is used to supply USB 3 on the Raspberry Pi [4]. On the [Compute] Module that would be exposed to the edge connector and we’re likely to support NVMe over that.”

Raspberry Pi and NVMe

A future Compute Module (not the CM3 pictured) should support NVMe storage. (Image credit: Tom's Hardware)

Raspberry Pi’s Compute Modules are designed for embedded and industrial applications and therefore don’t come with any I/O ports. Developers build their own boards and attach the Compute Modules to them. Most end users probably wouldn’t buy a Compute Module, which leaves us wondering about NVMe support on a traditional model B and according to Upton such support is possible, but it would require a lot of changes.

“In the core product, maybe a future Raspberry Pi may pick up something, but it is challenging,” Upton explained. “It is not without cost, both in terms of the silicon and in terms of the connector, as the connectors are not free. Also providing board area for the connectors, if you look at the Raspberry Pi there's not obviously not room for an M.2 slot”

When asked about a possible Raspberry Pi 4 Model A, Upton hinted that it’s possible a future Model A could have NVMe support. 

“What would a 4A look like? We have a decision to make about what we do with the USB 2. The USB 2 on Pi 4 is brought to the power jack, the OTG is brought to the power jack so we’d have a question in our minds about whether we undid that, probably, as we do on other A boards [and] brought it to the right hand edge as a single connector” Upton posited. “We’d also have a question about what we did with PCI Express . . . and that’s probably the obvious option to get something that has exposed PCI Express that isn’t a Compute Module.”

Upton explained it would be a challenge to keep a Raspberry Pi 4 Model A close to the same price point as the current Raspberry Pi 3A+, which currently retails for $25. If the price had to rise to $30 or more, he opined, most people just pay the extra few dollars to get the $35 Pi 4B.

Weekly, you’ll find the Pi Cast by Tom’s Hardware streaming live on Tom’s Hardware’s channels on YouTube, FaceBook and Periscope and available afterwards on leading podcast platforms such as Spotify, Google and Apple. Tune in Live at 2:30 pm ET (7:30 pm BST) every Tuesday.

Les Pounder

Les Pounder is an associate editor at Tom's Hardware. He is a creative technologist and for seven years has created projects to educate and inspire minds both young and old. He has worked with the Raspberry Pi Foundation to write and deliver their teacher training program "Picademy".

  • SonoraTechnical
    I would love to see an m.2 connector on the bottom of the raspberry Pi to support perhaps smallish 30mm or 42mm M.2 NVMe storage. We don't need huge capacities, so we don't need the longer 60mm, 80mm and 110mm sizes. Yes it would make allot of cases obsolete.... as they'd need to have taller standoffs..... Another option would be to put it on the edge of the Pi. Either way, it would be really nice to see 64GB or 128GB of M.2 NVMe PCIexpress storage on a future Raspberry Pi 4B+ variant w/ 8GB of ram. Probably need to wait for the Rasperry Pi 5...
  • bit_user
    The M.2 slot is the main thing. Performance-wise, whether SATA or NVMe isn't actually going to make much difference, for a machine like the Pi.

    The biggest argument in favor of NVMe is actually the simplicity, since the SoC already has PCIe, which is all you need for NVMe. If they wanted M.2 SATA, then they'd also have to fit a SATA controller, somewhere on the Pi's PCB.

    The second argument for M.2 NVMe is that it's also more versatile, since there are other PCIe boards you could put in a M.2 slot.