When the Raspberry Pi 4 was released, many looked at the dual micro HDMI ports with disdain. Why would an SBC like the Raspberry Pi need two HDMI ports? The answer was that the Pi 4 is finally fast enough to work as a desktop replacement, and the killer feature (for many of us) for a desktop is multiple monitors.
Now I know what many of you are thinking. There’s no way a $35, or even $55, credit-card-sized computer can replace a $1000+ desktop machine, right? Right? Of course not, but at the same time, yes, yes it can. So I tried to use the Pi as a desktop replacement for a week, and it worked. In fact, this article has been written almost entirely on the Pi 4 with 4 GB of memory, as well as a couple of my recent security columns. I could definitely continue working with the Pi as my daily driver for that purpose.
There are a few points of order to cover first. Initial reviews were based on the June 20th release of Raspbian, which in turn was based on the pre-release Debian Buster. Since then, Buster has released. Fixes that were queued up have landed now that the release freeze has ended. A new Raspbian image was released on July 10, and many of the initial release issues have been fixed.
Running a desktop from an SD card doesn’t seem like a great idea, so I’ve opted to use a SATA hybrid hard drive and take advantage of the new USB3 ports. The Pi 4 doesn’t yet support booting from USB, though along with PXE boot, it is planned for a future update. Since we have control over the kernel boot parameters, it’s trivial to boot the kernel from the SD card and the root filesystem on the hard drive. I expected this to significantly improve performance, but surprisingly the system was unusable for seconds at a time. Looking at the kernel logs and comparing with the experience of others, it becomes quickly apparent that some kernels have problems with USB Attached SCSI (UAS) when talking to some USB3 devices. The giveaway was the USB device resets in the message log. A kernel boot option to disable UAS for the offending device was all that was needed to eliminate the resets and performance issues.
Note: partway through writing this article, the hard drive died, so I’m back at the conventional desktop again. I still ended up using the Pi for just over a week. The Pi wasn’t the reason that I quit, though.
For a power supply, I opted to use the Canakit Pi 4 supply, because it was in stock on Amazon. The USB C problems don’t effect this configuration, and so far the power supply hasn’t been a problem. Overheating, on the other hand, has been a problem. To its credit, the Pi’s processor does throttle down when it exceeds 80 °C, and is stable even under load. The fact that a processor with this much performance doesn’t immediately cook itself when used without even a heatsink is remarkable.
Using two monitors does add to the heating, as well as watching a video that uses hardware decoding. My Pi is propped on the top of my desk, not using a case. The official case doesn’t have any airflow to speak of — the heating issue would be much worse. If I continue using the Pi 4, I’ll probably invest in an aluminum armor case. These all-aluminum cases double as heatsinks, and look sharp, too.
You may notice that we’re beyond just $55 for our desktop setup. I estimate around $150 for a reasonable desktop replacement build. That includes the 4 GB Pi 4, the power supply, heatsink, an SD card, the USB3 to SATA adapter, a cheap SSD drive, and a pair of Micro-HDMI cables. In fairness, most other SBCs need a similar list of accessories, and the price could be lower if the SSD weren’t included — or higher if a mouse and keyboard were included.
Aside from the hard drive crash, the Raspberry Pi was a perfectly serviceable desktop for web browsing, writing articles, and even some light image editing. Make no mistake, you wouldn’t enjoy using Blender on the Pi, but then again, that’s true of budget desktops and laptops, too. 4 GB of ram is just enough for a desktop. My 13 Chromium tabs, including a Youtube video, are using just over half of the 4 GB of available memory. It seems it would be possible to get by with 2 GB, but just barely. Browsers are memory hogs.
There were still a few quirks I never worked out. KDE wouldn’t render correctly on the Pi, for one. The 3D acceleration I experienced seemed slower than expected. Openarena, for example, was a slideshow when running at full screen at 1920×1080 resolution. WiFi was flaky early in the experiment, but getting the hard drive problems sorted out seemed to help there as well.
Editing documents, doing research, and listening to music were all a breeze for the Pi. Netflix wouldn’t work — I suspect that was a DRM issue, as I was using Chromium, which lacks any Widevine support. Perhaps the highest praise that I can give is that using a Pi 4 as a daily driver desktop is that it was unremarkable. Not the fastest computer, but a serviceable desktop for many uses.
So you need a desktop, should you just use a Raspberry Pi? If you have one already, sure, give it a try; it might surprise you. If you only have a few dollars to spend, or need a bunch of machines, using Pis might be a great fit. Editing video, 3D modeling, compiling large projects, or some other processor- or video-card-intensive workload? The Pi probably isn’t the right choice.
For a $55 piece of hardware, it’s impressive. Can it replace your desktop? Yes, yes it can. Should it? Probably not.