Wouldn’t it be cool if you could display images and graphics from a microcontroller directly to an HDMI monitor or television? We think so! So we designed this RP2040 Feather that has a digital video output (a.k.a DVI) that will work with any HDMI monitor or display. Note it doesn’t do audio, just graphics!
It’s kinda like we took our RP2040 Feather and DVI Breakout board and glued them together. You get all the pins for use on the Feather, the Lipoly battery support, USB C power / data, onboard NeoPixel, 8MB of FLASH for storing code and files, and then with the 8 unused pins, a DVI output that can be used with the PicoDVI library in Arduino or Pico SDK (note we don’t have Circuitpython support for DVI output at this time)
In Arduino, which is what we recommend, we use our fork of PicoDVI to create an internal framebuffer of 320×240 or 400×240 16-bit pixels that is then continuously blitted out as pixel-doubled 640×480 or 800×480 digital video. Whatever you ‘draw’ to the internal memory framebuffer appears instantly on the digital display in crisp color. Since the library is a subclass of AdafruitGFX, it’ll be familiar to folks who have used our TFT or OLED displays before. We don’t have DVI output support in CircuitPython – and no ETA when that may be added – so be ready to use Arduino IDE or pico SDK with this board, please.
Note that the DVI video generation uses one full core, both PIOs, and 150K (320×240) or 190K (400×240) of SRAM. It’s kinda maxed out so be aware of the remaining resource limitations.
We also connected the HDMI-connectors I2C pins to the SDA/SCL of the Feather (through a safe level shifter) so you can read the EDID EEPROM of displays, and have broken out the CEC and Utility pads. The Hot Plug Detect pin is also available on the very end of the 16-pin header. Read this pin to know when a display has been connected!
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.