Open hardware Raspberry Pi Pico VGA, SD Card, and Audio demo board to support QVGA video playback

Abhishek recently posted an overview of Raspberry Pi RP2040’s two PIO blocks with examples in C and Micropython using some PIO assembler code. He used some basic examples like blinking an LED, but the Raspberry Pi Foundation also mentioned the programmable IO could be used to drive a VGA display, read and write data from a MicroSD card at reasonable speeds, and so on.

However, the Raspberry Pi Pico does not have any of those interfaces, and it would be nice to have a board that does. It turns out there’s such a board in “Chapter 3. The VGA, SD Card & Audio Demo board for Raspberry Pi Pico” of  “Hardware Design with RP2040.pdf” document. It will be sold as the “Pimoroni Pico VGA Demo Base” board for 19.50 GBP inc. VAT (about $22 US ex. VAT), but since the KiCad hardware files are open-source, I’d assume other companies may also sell the board (not sure about the license though).

VGA SD Card Audio Board for Raspberry Pi Pico
KiCad 3D render

VGA, SD Card & Audio Demo board for Raspberry Pi Pico (RPI-PVSA) hardware specifications:

  • Support MCU board – Raspberry Pi Pico board
  • Storage – MicroSD card slot
  • Video Output – 16-bit RGB565 VGA output up to 640×360
  • Audio – 3.5mm audio jacks for
  • USB – 1x Micro USB port in device or host mode (selected by jumper)
  • Misc – A, B, and C user buttons, 8-pin UART, SWD and SD card mode selection header
  • Power Supply – 5V via Micro USB port or Vbus pin, or 1.8 to 5V via Vsys pin

As mentioned in the introduction, the VGA, SD card and audio demo board is open-source hardware, and you’ll find KiCad hardware design files here. Some of the design choices are interesting as for example, the board is not using a video DAC for VGA output, but instead, several resistors with different values for R, G, and B, that also happens to be shared with the user buttons due to the limited number of I/Os. This is all explained in the hardware design document.

VGA DAC schematics on Pico demo board

The software appears to still be a work in progress, which may explain why the board is not available yet, with example provides in “pico-playground” Github repository. There are several C examples for VGA output, audio, miro SD card, USB server, but the program that stands out is “Popcorn”. It is a movie player capable of playing 320×240 30fps  videos with 44,100Hz stereo audio read in a custom format from the MicroSD card with both PIO blocks used for respectively VGA output and the MicroSD card.

Share this:

Support CNX Software! Donate via cryptocurrencies or become a Patron on Patreon

ROCK Pi 4C Plus
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
Weller PCB manufacturer