STFN

I got my Raspberry Pi 5 a HAT

15 minutes

This is not a sponsored article, everything mentioned here I bought for myself with my own money.

As I mentioned in the previous blog post, my astrophotography journey is suspended until I get back my mount from servicing. But in the meantime I can work on upgrading other parts of my setup. So far I have been running a Raspberry Pi 4 with astroberry.io to control the acquisition process, and its performance was always a bit of a pain for me. I have a Pi 5, it was an impulse buy on the day of its release, and lately I had no use for it, so I decided it will be my new astrophotography controller.

And as I am going to use I might as well crank it up to 11 and try out those new NVMe HATs for bigger and faster storage.

Choosing the HAT

For the HAT I chose the HatDrive! Nano by Pineboards.

I chose a product by Pineboards for a few reasons, first of all I’ve been following their progress, and I am impressed how quickly they went from basically two guys with a soldering iron, to a proper company making Raspberry Pi accessories, and second, the creators are my fellow compatriots, and I felt like supporting the Polish hardware scene :) And thirdly, my main inspiration for all RPi stuff, Jeff Geerling, made a few videos showcasing their products and his reviews were positive.

I chose the HatDrive! Nano because well, it was the cheapest option, and with the smallest footprint, which I think helps with the cooling, while still supporting 2230 and 2242 NVMe drives as the larger HAT models.

Hardware setup

The HAT came with a set of screws, spacers, and the ribbon cable. The screw package looked like a set from a different model, because it had four spacers, while the Nano version only uses two. But hey, free M2.5 spacers, always useful when tinkering with SBCs. Also in the documentation section on the Pineboards webpage there is no entry for the Nano, only for the Lite, but that’s ok, they are almost indentical when it comes to mounting.

For the case I am using a ThePiHut cluster case. It’s universal enough to be able to accommodate the Pi 5 as well as the 4, can be used for single SBC builds, and is open on the sides, which is good for the cooling. I had to modify the mounting of the Pi a bit to make it work with the spacers, thankfully I had a bunch of long M2.5 bolts that went through the bottom of the case, through the Pi and into the spacers from below.

Mounting the HAT itself was easy, the hardest part was handling the ribbon cable, but with being very very cautious, I managed to make it work. I’m always afraid I will break those tiny connectors that hold the ribbons in place. And not without reason, I broke the camera connector on my first Pi Zero.

The NVMe SSD I am using is a 512GB Kioxia drive which I bought rather cheaply from a local marketplace. The seller said it was taken from a new laptop which in place got a larger drive.

That dangling thingy visible in the photos is the battery for the RTC clock.

Photo of a
Pi 5 with an NVMe HAT in an opened cluster case

A photo of
a Pi 5 with an NVMe HAT with the case close, the insides can be seen through the
translucent top

Booting The Pi 5 from an NVMe drive

My plan was to ditch the SD card altogether and use the NVME as the boot drive.

After installing the NVMe HAT, I booted the Pi from the SD card. I’m running the latest version of the Raspberry Pi OS, 64 bit, with the desktop environment.

The system booted normally, and I opened GParted to see if the new drive was seen by the system. And it was! On the first time!

A
screenshot of GParted, showing two drives, one for SDcard and one for NVMe

The drive was reporting correctly, so I used the SD Card Copier utility, installed by default on the RPi OS, and copied the system from the microSD card to the NVME drive. It took around 10 minutes.

Then I went through the instructions provided by Jeff on how to set the NVMe as the boot drive. Few commands in the terminal later, I turned off the Pi, removed the microSD card and turned it back on again.

Running the NVMe Pi

And I have to say, WOW! The difference is staggering. The boot sequence, which takes 30 seconds, maybe more on a microSD card, was almost instantaneous when booting from the NVMe. That white window with the Raspberry Logo barely blinks. The desktop is ready to use in seconds.

The whole feel of using the Pi is different. Thunar is smooth as butter. All the apps load much faster. It’s as if it was a totally different computer. Firefox is a much better experience. And for those astrophotography people out there, I have to tell you, using KStars from an NVMe drive will not be a pain anymore.

I won’t provide any benchmarks, there’s already a ton of them on the Internet. If you want to see graphs and numbers, I highly recommend Bret’s webpage, where he does all sort of high quality testing of different SBCs.

I had two main concerns when installing the NVMe HAT. The first one was WiFi connectivity and the second one was cooling.

The WiFi on the Pi is not the best, especially when using the 5GHz band. I was concerned that the HAT would interfere with the signals and degrade the performance, but from my short testing I did not see any problems. We’ll see how it goes in the long run.

As for cooling, after adding the HAT, I installed PHD2 by compiling it from source. And even under prolonged load, with the active cooler on, the Pi stayed around 58C. I have a feeling that the HAT even helps with the cooling a tiny bit, as it guides air through the radiator and not away from it. But that may be just my suspicion.

Bottom Line

I now strongly believe that if you have a Pi5, you should consider getting an NVMe HAT for it. You will get a much better experience of using that SBC. I would say that now the microSD, while being cheap and plentiful, and easy to replace, is now the biggest bottleneck for the Pi. It’s great for tinkering and quick testing, breaking and reflashing, but for running sustained loads, and in general using the Pi as “prod”, go with a drive.

All in all I paid 16EUR for the HAT (with taxes and shipping) and a similar amount of money for the drive. Smaller drives can be bought for half that or even less.

On one hand, is not an insignificant amount of money to be spend already on top of the cash that the Pi itself costs, but on the other hand, you get much, much better performance from the hardware you already have.

I have to say, I am excited for that future holds. If everything goes well, I should be back in the astro game on a whole new level. And even if that does not work out, I now have a very performant SBC that I can use for other tasks.

What do you think about all this? I’d love to hear your thoughts, in the comments below, via email, or on Mastodon. Links in the footer.

Thanks for reading!

If you enjoyed this post, please consider helping me make new projects by supporting me on the following crowdfunding sites: