Using the DVI Breakout Board with a Raspberry Pi Pico involves wiring up the breakout to the Raspberry Pi Pico, installing the Raspberry Pi Pico development toolchain, building examples from the PicoDVI repository and flashing the compiled .UF2 files to the Raspberry Pi Pico.

The earlier B0 revision of the RP2040 may have issues with higher resolutions and speed for certain animations. For best performance, make sure you are using a Raspberry Pi Pico with a B1 revision RP2040.

Wiring

Wire as shown for Raspberry Pi Pico.

  • Pico GP12 to Breakout TX0+ (blue wire)
  • Pico GP13 to Breakout TX0- (yellow wire)
  • Pico GP14 to Breakout TXC+ (green wire)
  • Pico GP15 to Breakout TC- (pink wire)
  • Pico GP16 to Breakout TX2+ (white wire)
  • Pico GP17 to Breakout TX2- (cyan wire)
  • Pico GP18 to Breakout TX1+ (purple wire)
  • Pico GP19 to Breakout TX1- (orange wire)
  • Pico GND to all three Breakout GND's (black wires)

Toolchain Setup

To work on C/C++ development with the Raspberry Pi Pico, you need to have a toolchain environment setup on your system. There is support for Linux (including running it on a Raspberry Pi), Apple macOS and Windows. 

Instructions for setting up the toolchain can be found from Raspberry Pi in their Getting Started with Pico guide:

  • For Linux, refer to section 2.1
  • For Apple macOS, refer to section 9.1
  • For Windows, refer to section 9.2

PicoDVI Installation

After setting up your toolchain and the Pico SDK, you will download and build the PicoDVI software. This software is authored by Luke Wren, an engineer who worked on the RP2040 project at Raspberry Pi.

First, create a new directory called pico and navigate to the directory.

mkdir pico
cd pico

Clone the PicoDVI repository from GitHub. Then, navigate to the software folder in the downloaded PicoDVI folder.

git clone https://github.com/Wren6991/PicoDVI.git
cd PicoDVI/software

Next, you'll begin compiling the examples. Create a new directory in the software directory called build. Then, navigate to the build folder.

mkdir build
cd build

Setup the cmake parameters by assigning the PICO_SDK_PATH to the file location on your system for the Pico SDK. For example, if you setup the Pico SDK to be in your home directory, you would pass PICO_SDK_PATH=~/home/pico-sdk

It's important to include PICO_COPY_TO_RAM=1 since it increases performance for some of the applications because they use SSI in fast DMA streaming mode.

PICO_SDK_PATH=your/path/to/pico/sdk cmake -DPICO_COPY_TO_RAM=1 ..

After the parameters have been set, you can run make to create the .UF2 files that will run on your Raspberry Pi Pico. This builds all of the example apps.

make -j4

Flashing the .UF2 File to the Raspberry Pi Pico

Choose the example app that you would like to run on your Raspberry Pi Pico. Hold down the BOOTSEL button on your Pico and plug it into your computer's USB port using a USB cable that you know is good for data sync. You can drag and drop the .UF2 file onto the Pico or copy the file via the terminal using cp

Here is an example of what copying a file via the terminal to the Pico would look like. You would enter the file location for your selected .UF2 file and then enter the location of your RPI-RP2 drive on your system.

cp PicoDVI/software/build/apps/sprite_bounce/sprite_bounce.uf2 /media/username/RPI-RP2/

You can run ls in the PicoDVI/software/build/apps folder to see a list of the available apps.

Running the App

After flashing the .UF2 file, keep your Raspberry Pi Pico plugged in via USB for power. Plug an HDMI cable into the DVI Breakout Board. Connect the other end of the HDMI cable into an HDMI monitor. You should see your application playing on the screen.

This guide was first published on May 04, 2022. It was last updated on 2022-05-11 00:17:00 -0400.

This page (Raspberry Pi Pico Demo Code) was last updated on May 28, 2022.

Text editor powered by tinymce.