element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Project Videos
  • Challenges & Projects
  • element14 presents
  • Project Videos
  • More
  • Cancel
Project Videos
Documents Turning a Raspberry Pi Pico into a GPU! -- Episode-644
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Project Videos to participate - click to join for free!
Related
Recommended
Engagement
  • Author Author: tariq.ahmad
  • Date Created: 29 Feb 2024 9:30 PM Date Created
  • Last Updated Last Updated: 29 Feb 2024 9:56 PM
  • Views 8183 views
  • Likes 8 likes
  • Comments 18 comments

Turning a Raspberry Pi Pico into a GPU! -- Episode-644

In this episode, Clem takes us through the intricacies of the Raspberry Pi Pico and graphics cards. Forget the technical jargon; imagine a graphics card as a translator between your CPU and the screen, a bit like those old-school graphics adapters but with a modern twist. Clem, our guide, dives into the world of microcontrollers, specifically the RP2040, cooking up digital concoctions for today's monitors and touchscreens. 

Watch the Video:

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

Downloads & Links | Bill of Material | Discussion

But every journey has its bumps, and Clem hits a roadblock with high-speed video signals. Ever tried hand wiring on a breadboard? It can be a hit or a miss. Spoiler: It's a miss. Clem troubleshoots with DVI-Socks, dealing with impedance-matching intricacies using resistors. It's a bit like walking a tightrope – precision is key, but it's easy to slip. 

image

The video navigates through connection experiments – soldering DVI sockets, trying headers – with Clem emphasizing the importance of stable connections over detachable boards. A nudge in the wrong direction, and the signal's out of sync. Clem wraps it up neatly with a PCB design, a more reliable solution for video signals with the Raspberry Pi Pico. 

image

The plot thickens as Clem tackles the connection conundrum.  In the PCIe connector, Clem spots a hidden SMBus, an I2C bus in disguise.  This lets Clem attach the Pseudo-GPU to the SMBus via the PCI connector. 

image

The grand finale showcases Clem's Arduino code, a practical display of text, colour, and rotation using the Adafruit GFX library. Clem demonstrates using two Raspberry Pi Pico boards, connected via I2C, showing them playing nicely with a small monitor. The graphics are very basic, but the concept opens doors for more creative projects. 

Downloads & Links:

  • Download Code and Schematics!
  • Pico dvi https://github.com/Wren6991/PicoDVI
    DVI Sock https://github.com/Wren6991/Pico-DVI-Sock

Bonus Content Video:

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

Bill of Material:

Product Name Manufacturer Quantity Buy Kit
Raspberry pi pico Raspberry pi 2 Buy Now
 

Additional Parts:

DVI Socket

element14 presents

element14 presents  |  About Clem  |  Project Videos 

  • Electronic circuit design tips
  • Digital video signal generation
  • DVI troubleshooting
  • Creative projects with Pseudo-GPU
  • Raspberry Pi Pico graphics card
  • PCB design for video signals
  • SMBus and I2C communication
  • Microcontroller-based display solutions
  • Impedance matching in electronics
  • PCI Express connector applications
  • Graphics output with microcontrollers
  • High-speed video signal impedance
  • Arduino code for video display
  • Microcontroller video signal
  • Raspberry Pi Pico connection solutions
  • friday_release
  • e14p_CMM
  • Share
  • History
  • More
  • Cancel
Actions
  • Share
  • More
  • Cancel
  • Sign in to reply

Top Comments

  • beacon_dave
    beacon_dave over 1 year ago +1
    Nice project. There are several use cases where you only need a microcontroller but you need to drive a larger display for basic text and graphics. The +5V originally was to power the EEPROM containing…
  • mayermakes
    mayermakes over 1 year ago in reply to Sacha

    that is kinda what the beaglebone does, it emulates eth over usb so that may be doable with a pico or RPi? I would not know how to do it but it seems achievable to me.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Sacha
    Sacha over 1 year ago

    Not GPU-related, but this makes me wonder whether the Pi could present to the host as a NIC, i.e. make the Pi appear as a network connected computer. And then, whether multiple Pis on multiple cards could appear as a sort of onboard LAN cluster...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mayermakes
    mayermakes over 1 year ago in reply to koudelad

    you could go down a very deep rabbit hole collecting all the hints and teasers for future videos i put into episodes over the years.
    I'm not sure if I executed on all of them yet.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • koudelad
    koudelad over 1 year ago in reply to mayermakes

    Haha, I wouldn't be spoiling if you hadn't mentioned that in the video Smiley You have done so many projects that this can't surprise anyone...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mayermakes
    mayermakes over 1 year ago in reply to koudelad

    Hey stop spoiling my projects!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mayermakes
    mayermakes over 1 year ago in reply to Problemchild

    its the spirit that counts ;-)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • koudelad
    koudelad over 1 year ago

    Interesting project, looking forward whether this ends as your very own single board computer.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Problemchild
    Problemchild over 1 year ago

    I can see a difference Clem , although if you call it a Pseudo GPU so can you ;-)

    Only kidding it's a really good article. Single chip graphics Solutions are REALLY useful for the retro and other gadgets!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • KallDrexx
    KallDrexx over 1 year ago in reply to mayermakes

    Thanks.  Yeah I get the time thing.  I've only implemented a few fonts and a few basic drawing commands.  Last night I did get it working on those all-in-one esp32s3 + display boards that sell on Aliexpress for $14.  So the idea is you just buy those boards, flash the GPU firmware onto it, then wire it up to your MCU and go. 

    So for example there's this: https://www.youtube.com/watch?v=Wso_Nsh81CY.  That's a Meadow stm32 (running C#) using the accelerometer to do 3d math and compute the octohedren rotation.  Then passing the information to the 7" 800x480 all-in-one device for rendering.  I need to do some performance work and reduce memory back and forth, but it at least was pretty fast to spin that up as a proof of concept (previous uses use an ili9341 8-bit parallel display).

    Another example I got my UI example running on it too: https://www.youtube.com/watch?v=96u6pD-FAs8

    I just bought a FPGA and I may start learning FPGA work and maybe turning an FPGA into a GPU with that.  But that's a more long term idea :)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mayermakes
    mayermakes over 1 year ago in reply to KallDrexx

    that is aweseom!
    thanks for sharing your project!
    for time reasons I hvent implemented the drawing functions yet and focused only on text, but maybe it would make more sense to just port your project to a pico for the hdmi compatibility.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube