Michael P. Gets an Industrial Electroluminescent Display — and Doom — Running on a Raspberry Pi Pico
Single-bit-depth port of Graham Sanderson's Doom port makes the case for clever dithering on monochrome displays.
Maker Michael P. has once again been experimenting with unusual displays, this time a single-color electroluminescent panel designed for industrial use hooked up to a Raspberry Pi Pico — and, so as not to bury the lede, yes: it can run Doom.
"By chance, I got myself an industrial electroluminescent (EL) display," Michael explains. "It is one bit per pixel monochrome with beautiful amber color (which looks bright yellow on camera) and has a resolution of 320×256. I was wondering if I could put it to good use, so I started experimenting by driving it with a Raspberry Pi Pico."
An electroluminescent display works differently to a standard flat-panel display, as it doesn't require a backlight nor a frontlight; instead, it's built by sandwiching an electroluminescent panel between two conductive layers. While the panels Michael has picked up are limited to a single color, they're popular in industrial circles for the longevity and resistance to burn-in effects when displaying static images for long periods of time.
Having figured out how to address the display, Michael turned to the Raspberry Pi Pico and its RP2040 microcontroller as the driving device. Experimenting with different ways to dither an image down to a single color without losing too much detail — and while providing the illusion of shades of gray — the maker began porting different applications to the RP2040 to experiment, beginning with the TinyGL 3D engine.
"I managed make it run and ported some demos such as glxgears
and Sproingies from Xscreensaver
. Although, it needs a lot of optimization to run smoothly," Michael explains. "The other thing that I've tried so far, is to adapt Graham Sanderson's RP2040 Doom port. This worked out pretty well, I managed to get an acceptable image quality so the game is somewhat playable. I'm thinking of a ridiculously looking handheld console that can run Doom and other games."
More details are available on Hackaday.io, while the source code for the single-bit Doom port is available on GitHub under the reciprocal GPL 2.0 license; additional demo code is in a separate repository.