An AMD GPU plugged into an ATX PSU and Raspberry PI CM4

Raspberry Pi With Some Serious Graphical Muscle

[Jeff Geerling] routinely tinkers around with Raspberry Pi compute module, which unlike the regular RPi 4, includes a PCI-e lane. With some luck, he was able to obtain an AMD Radeon RX 6700 XT GPU card and decided to try and plug it into the Raspberry Pi 4 Compute Module.

While you likely wouldn’t be running games with such as setup, there are many kinds of unique and interesting compute-based workloads that can be offloaded onto a GPU. In a situation similar to putting a V8 on a lawnmower, the Raspberry Pi 4 pulls around 5-10 watts and the GPU can pull 230 watts. Unfortunately, the PCI-e slot on the IO board wasn’t designed with a power-hungry chip in mind, so [Jeff] brought in a full-blown ATX power supply to power the GPU. To avoid problems with differing ground planes, an adapter was fashioned for the Raspberry Pi to be powered from the PSU as well. Plugging in the card yielded promising results initially. In particular, Linux detected the card and correctly mapped the BARs (Base Address Register), which had been a problem in the past for him with other devices. A BAR allows a PCI device to map its memory into the CPU’s memory space and keep track of the base address of that mapped memory range.

AMD kindly provides Linux drivers for the kernel. [Jeff] walks through cross-compiling the kernel and has a nice docker container that quickly reproduces the built environment. There was a bug that prevented compilation with AMD drivers included, so he wasn’t able to get a fully built kernel. Since the video, he has been slowly wading through the issue in a fascinating thread on GitHub. Everything from running out of memory space for the Pi to PSP memory training for the GPU itself has been encountered.

The ever-expanding capabilities of the plucky little compute module are a wonderful thing to us here at Hackaday, as we saw it get NVMe boot earlier this year. We’re looking forward to the progress [Jeff] makes with GPUs. Video after the break.

Continue reading “Raspberry Pi With Some Serious Graphical Muscle”

Now That’s What I Call Crypto: 10 Years Of The Best Of Bitcoin

On January 3rd, 2009, the Genesis Block was created. This was the first entry on the Bitcoin blockchain. Because of the nature of Bitcoin, all transactions lead back to this block. This is where Bitcoin began, almost exactly ten years ago.

The Genesis Block was created by Satoshi, a person or persons we know nothing about. In the decade since, we’ve seen the astonishing rise and meteoric descent of Bitcoin, and then it happened again after the bubble was re-inflated.

Due to the nature of Bitcoins, blockchains, and ledgers, the entire history of Bitcoin has been recorded. Every coin spent and every satoshi scrupled has been recorded for all to see. It’s time for a retrospective, and not just because I wanted to see some art based on the covers of Now That’s What I Call Music albums. No, ten years is a lot of stories to tell.

Continue reading “Now That’s What I Call Crypto: 10 Years Of The Best Of Bitcoin”

This Xbox 360 Is Powered By Steam

Now that we’re far enough into the next generation of home video game consoles that we can’t really keep calling them that anymore, yard sales are sure to be full of lonely Xbox 360s and PS3s that have been put out to pasture. You’ll probably even find a Wii U or two out there that somebody accidentally purchased. This is great for hackers who like cramming new electronics into outdated consumer gear, and accordingly, we’re starting to see the fruits of that generational shift.

Case in point, this Xbox 360 which has been transformed into a “Steam Box” by [Pedro Mateus]. He figured the Xbox 360 was the proper size to fit a full PC plus PSU, while still looking contemporary enough that it won’t seem out of place in the entertainment center. Running SteamOS on Fedora 28, it even offers a traditional game console experience and user interface, despite the decidedly PC internals.

On the outside, the only thing that really gives away this particular Xbox’s new lease on life (when the purple LEDs are off, anyway) is the laser cut acrylic Steam logo on the top that serves as a grill for the internal CPU cooler. Ironically, [Pedro] did spray the Xbox white instead of just starting with a black one, but otherwise, there wasn’t much external modification necessary. Inside, of course, is a very different story.

It’s packing an AMD Ryzen 5 2400G processor with Radeon RX Vega 11GPU and 8GB of Corsair Vengeance LPX DDR4 3200MHz RAM. Power is provided by a Seasonic SS-300TFX 300W, and a Noctua NH-L9a-AM4 keeps the system cool. Even with all that gear in there, the thing is probably still quieter than the stock Xbox 360.

[Pedro] helpfully provides quite a few benchmarks for those wondering how this hacked-up Xbox fares against a more traditional gaming setup, though peak performance was obviously not the goal here. If you’ve got 45 minutes or so to spare, you should check out the video he’s put together after the break, which goes over the machine’s construction.

We’ve seen it done with the original Xbox, and now the Xbox 360. Who will be the first to send in their build that guts a current-generation Xbox and turns it into a PC for Internet fame?

[Thanks to Mike for the tip.]

Continue reading “This Xbox 360 Is Powered By Steam”

STM32 Driving A PCIe Video Card

[Gpuhackr] chose his username to explain exactly how he spends his time. For instance, here he’s using an STM32 Discovery board to drive an AMD Radeon HD 2400 graphics card. The ARM microcontroller isn’t actually using the PCIe interface on the card. Instead, [Gpuhackr] has patched into the debugging interface built into the card itself. This isn’t quite as straight forward as it sounds, but if you do the wiring carefully it’s a pretty intersting way to connect an ARM to an LCD monitor.

This project would be almost impossible if it weren’t for the open source code which AMD has released. This lets him implement the card’s 3D rendering features. The demo directly programs the UVD Xtensa CPU which is on the video card. It draws a cube with color gradients on each side. The cube spins while the debug information is overlaid on the screen. In this case the ARM chip/board is really being used as a programmer to upload some custom firmware. But we think a real code-ninja could implement a communications protocol to open up a simple way to drive the card in real-time.

[Thanks uMinded]