raspberry pi

Use an External GPU on Raspberry Pi 5 for 4K Gaming

After I saw Pineboards 4K Pi 5 external GPU gaming demo at Maker Faire Hanover, I decided it was time to set up my GPU test rig and see how the Pi OS amdgpu Linux kernel patch is going.

GLmark2 running on Pi 5 with AMD RX 460 external GPU

I tested it out on a livestream over the weekend, but I thought I'd document the current state of the patch, how to apply it, and what else is left to do to get full external GPU support on the Raspberry Pi.

I also have a full video up with more demonstrations of the GPU in use, you can watch it below:

New 2GB Pi 5 has 33% smaller die, 30% idle power savings

Raspberry Pi launched the 2 gig Pi 5 for $50, and besides half the RAM and a lower price, it has a new stepping of the main BCM2712 chip.

BCM2712 C1 vs D0 Stepping chips

This is the BCM2712 D0 stepping. Older Pi 5's shipped with a C1. In their blog post, they said:

The new D0 stepping strips away all that unneeded functionality, leaving only the bits we need.

Steppings are basically chip revisions where they don't change functionality, and usually just fix bugs, or tweak the layout. But even tiny design changes could have unintended consequences. I wanted to see exactly what happens when I push one of these new chips to the limits.

First, I wanted a performance baseline, so I ran Geekbench with the latest Pi OS and all the defaults.

Positron - an upside-down and portable 3D printer

I've been getting into 3D printing lately. I have an older Ender 3 V2 at home I bought during COVID. And in the past year I've acquired an Ender 3 S1, Bambu Labs P1S, and Prusa MK4.

I also dove head-first into 3D CAD, and designed a number of small SBC cases or parts to help with things around the house.

But I'd never built my own 3D printer from a kit—all the printers I've had were pre-built and at most, required assembling the prebuilt gantry or toolhead. That finally changed with the Positron V3.2:

Radxa X4 SBC Unites Intel N100 and Raspberry Pi RP2040

At first glance, especially from the top, the Radxa X4 is your typical Arm SBC:

Radxa X4 Top

But you'll quickly notice the lack of an SoC—that's on the bottom. Looking more closely, what's a Raspberry Pi chip doing on top?! First, let's flip over the board to investigate. There's the SoC: definitely not Arm inside, this thing's an Intel N100:

Radxa X4 Bottom - Intel N100 SoC

I have all my benchmarks and notes bringing up this board stored in my sbc-reviews GitHub repository: Radxa X4 - geerlingguy's sbc-reviews, and I also summarized everything in a video on YouTube, which you can watch inline (or skip past and read this blog post instead):

Raspberry Pi Pico 2 - RP2350 adds more PIO, RISC-V cores

Pico 2 Logo

The $5 Raspberry Pi Pico 2 was announced today, with a new chip, the RP2350. This silicon improves on almost every aspect of the RP2040:

  • 3 PIOs instead of 2
  • 150 MHz instead of 133 MHz base clock
  • Faster Arm Cortex M33 cores and RISC-V Hazard3 cores

I've had access to pre-release hardware and good news: even though the new chip is faster and has more features, it actually uses less power than RP2040, meaning if you run one of these things off a battery, it'll last longer.

I'll talk more about power later, but first, here's the specs.

Pico 2 and Pico side by side comparison

Hacking Pi firmware to get the fastest overclock

Raspberry Pi 5 with dry ice smoke surrounding it

Since boosting my Pi 5 from the default 2.4 GHz clock to 3.14 GHz on Pi Day, I've wanted to go faster. Especially since many other users have topped my Geekbench scores since then :)

In March, Raspberry Pi introduced new firmware that unlocked frequencies above 3,000 MHz for overclocking. This summer, NUMA Emulation patches boosted performance another 5-10% through memory access optimizations.

But even with a golden sample Pi 5, I haven't seen anybody go much beyond 3.1 or 3.2 GHz. The problem seemed to be power supply—the Pi's firmware limits the SoC to a maximum of 1.000V.

NUMA Emulation speeds up Pi 5 (and other improvements)

Recently an Igalia engineer posted a NUMA Emulation patch for the Pi 5 to the Linux Kernel mailing list. He said it could improve performance of Geekbench 6 scores up to 6% for single-core, and 18% for multicore.

My testing didn't quite match those numbers, but I did see a significant and consistent performance increase across both Geekbench 6:

Raspberry Pi 5 Geekbench 6 Score comparison with NUMA Emulation enabled

And High Performance Linpack:

Raspberry Pi 5 HPL Gigaflops and efficiency comparison with NUMA Emulation enabled

Testing new Raspberry Pi 5 Cases - $7 to $79

Since the Pi 5's launch, a number of Pi case redesigns have launched, and there are a few new entrants with something to offer. Like Fractal's 'Baby North'... which, unfortunately, is only a prototype designed for their displays at Computex, and is not being planned for sale. At least not for now! I'll write more about this case later in this post.

Fractal Baby North - Raspberry Pi 5 Case

The Pi 5's thermals are close enough to the Pi 4 that old cooling solutions work okay, but the port layout and inclusion of a power button means at least minimal redesigns are necessary.

Here are a few of the Pi 5 cases I've been testing (most for over a month, in various places), and my thoughts on each.

Raspberry Pi 5 Case (official)

The official case for the Raspberry Pi 5 is like a saltine cracker.

Remote shell to a Raspberry Pi at 39,000 ft

For a few weeks I've been beta testing remote shell, the latest addition to Raspberry Pi Connect. Just a couple hours ago I was on a flight home from the new Micro Center in Charlotte.

Pi Connect Remote Shell in airplane on laptop

One huge problem with VNC or remote desktop is how flaky it is if you have limited bandwidth or an unstable connection, like on an airplane.

It takes forever to start a screen sharing session, and the airplane's flaky WiFi usually causes the session to lock up, meaning you can't do much at all.

Remote terminal access, just relaying text commands, is the best solution for that problem. And sure, I have a VPN I could use with SSH to get to my Pi, but Raspberry Pi Connect just added support for remote shell access.

Giving away 480 Raspberry Pis was harder than I expected

I gave away 480 Raspberry Pi Picos at Open Sauce last weekend, and ran into a number of challenges doing so. All of them self-inflicted, of course. I didn't want to just hand them out like candy—or, well... that's exactly what I did:

Raspberry PIZ Dispenser with little Star Wars PEZ Dispenser

My initial plan was to build a backpack mount for a full 480-Pico reel (they sell them in bulk like that, for pick-n-place machines). However, there was a major flaw with that design.

Constraints

I needed to get through TSA, so I could fly to San Francisco. Driving was out of the question, as my wife is almost full-term and I could not leave her for more than a week in the middle of summer, when the kids have about 15 events per week!

A full reel would require a knife or scissors, and I didn't want to check the bag whatever I built was in.