5.4 C
London
Sunday, March 3, 2024

Turning a Raspberry Pi Pico Right into a GPU with DVI Output



The ESP32 Linux board

Again in October 2023, element14 Presents host Clem Mayer bought impressed by the Raspberry Pi Compute Module 4 and needed to construct his personal single board laptop. Nonetheless, as a substitute of utilizing a extra conventional SoC, he was capable of get a really light-weight model of Linux operating on an ESP32-S3- full with the Compute Module 4 connector’s current pinouts for compatibility with different service boards. On the time, Mayer expressed curiosity in making a GPU co-processor primarily based on the Raspberry Pi Pico’s RP2040 chip and PIO subsystem that may very well be used to generate DVI indicators and drive exterior shows. And on this challenge, he demonstrates how he completed that purpose.

Pico DVI

DVI, DisplayPort, HDMI, and even VGA requirements all depend on I2C for establishing preliminary connections to the host machine and configuring the show earlier than a driver is even wanted. Due to this truth, Mayer knew he might leverage Wren6991’s PicoDVI library, which permits an RP2040 chip to ship DVI indicators by way of PIO and management a display screen. He rapidly flashed the instance code to a Raspberry Pi Pico and related an HDMI breakout board to the Pico, however finally bought no sign. This was as a result of a distinction of impedance throughout the sign bus, as the shortage of resistors and differing conductor lengths triggered the sign timing to degrade far an excessive amount of. As soon as ordered and assembled onto a couple of pre-made Pico DVI Sock boards, the RP2040 was lastly capable of output pattern textual content to a display screen.

Sending and drawing graphical knowledge

As talked about earlier than, show connectors function I2C strains for studying/writing show configuration knowledge. However going previous the show, all PCIe connectors even have a set of connectors for the SMBus that’s suitable with I2C and could be simply written to with a system name in Linux. Mayer’s finalized code for the Pico remains to be primarily based on the PicoDVI challenge, however moderately than manipulating particular person pixels, he made the Pico act as an I2C peripheral machine to simply accept instructions and convert them into Adafruit GFX calls that ultimately get written to the display screen from a buffer.

PCB design

As soon as validation was accomplished on each the breadboard and breakout, Mayer designed a extra compact PCB that may home the Raspberry Pi Pico, HDMI connector, and the entire needed supporting parts resembling a voltage regulator and an array of resistors for impedance matching. Maybe essentially the most fascinating side of the board is its PCIe x1 connector on the backside which permits it to fit into a pc motherboard identical to a graphics card would, thus permitting a program to drive a show by way of I2C.

To see extra about how Mayer designed and fabricated this Pico-based GPU, you’ll be able to watch his video right here on the element14 Presents YouTube channel.

Latest news
Related news

LEAVE A REPLY

Please enter your comment!
Please enter your name here