pxlDigit_24 - retro style character display

A 24-segment retro style character display

Similar projects worth following
pxlDigit_24 is my implementation of a 24 segment display.
The individual digits can be used to represent numbers and letters. For this purpose, 24 WS2812 LEDs are installed on a PCB behind a 3D printed diffuser for each digit.

In addition, an ESP32 can also be installed on the PCB to control the connected digits. The display made from several pxlDigit_24 can then be programmed and supplied with energy via the integrated USB-C connector.

I had the "idea" for the pxlDigit_24 after I had built the "pxlDigit". This is a seven-segment digit that can be built using a 3D printed frame and 14 WS2812 LEDs.

At the time, I was bothered by the fact that you can (of course) only show numbers on these seven-segment displays.
What bothered me about it: An ESP8266 or ESP32 is also built into the display, which, thanks to WiFi and Internet, could display all kinds of data. Somehow I found that it should be possible to display more data without losing the retro charm of these old display types.

While looking for a solution to this problem, I stumbled across old 24 segment displays.
With the help of 24 segments per digit, these can represent not only numbers but also letters. So perfect to solve my "problem". :)

Short overview:

Each digit consists of a PCB and a 3D printed diffuser. This unit is then built into one of the possible housings and can thus be combined with other digits. Theoretically, displays with a large number of digits can be built in this way.

The following components can be installed on the PCB:

  • ESP32 Wrover-B
  • DS3232M RTC
  • USB-C connector including programming option
  • BME280 climate sensor
  • Micro SD card slot
  • TSL2591 brightness sensor
  • MPR121 touch sensor for up to 12 touch electrodes
  • MAX98357 3W I2S DAC (able to play mp3 files via stream or inserted micro SD card)

Of course, the PCB doesn't have to be populated with all of these components. If desired, only the 24 WS2812 LEDs can be soldered. Then these individual digits are simply daisy chained. One ESP32 is enough to control all digits.


If you want to support me, you can do so by like on this project page, on Instagram or by donating a coffee. :)


Content that is not based on software/code: Unless otherwise stated, all works presented here that are not based on software/code are subject to the CC BY-NC-SA 4.0 license (attribution – non-commercial – dissemination under the same conditions 4.0 international).

You can find a summary here:

You can find the complete legal text here:

Software/code-based works Unless otherwise stated, all software/code-based works presented here are subject to the GNU Affero General Public License v3.0

You can find a summary here:

The complete legal text can be found here:

  • Easy 3D printable housing

    Fabian06/16/2021 at 14:54 0 comments

    Unfortunately, the 276mm wide housing for four digits cannot be easily printed on a normal 3D printer. 

    That's why I designed an alternative housing. The individual digits can be pre-assembled and then screwed onto a bracket. In this way, even more than four digits can be "daisy chained" one after the other, for example to display five-digit numbers or longer words directly. 

    You can see the start animation on the video. After the start, the time is retrieved from an NTP server via the WiFi connection of the ESP32.⁣

  • Alternative to PCBs

    Fabian06/09/2021 at 15:33 0 comments

    Ordering finished PCBs is becoming easier. Nevertheless it can happen that you don't want to order PCBs or you just don't want to solder the SMD LEDs.

    That's why I created a template in which you can insert finished LEDs and solder them together. So you can avoid having to solder SMD components. Nevertheless, soldering the 24 individual LED boards is quite a fiddly job.

    In addition, of course, no ESP32 can be installed on the template. That means you have to control the LEDs from an external microcontroller. This can be installed in a base. I will post information about this soon. :)

  • The diffusor

    Fabian06/04/2021 at 17:29 0 comments

    Building the diffuser was a little science in itself.

    At first I printed the entire diffuser out of white PLA. Unfortunately, this meant that the neighboring segments of the lit segment were also at least partially illuminated.

    The solution was to print the front of the diffuser from white PLA, pause the 3D printer after the first two layers, replace the filament with black one and continue printing. So the front of the diffusor became white and can be easily illuminated while the black frame parts separates the individual segments well from one another. 

    Actually the perfect use for a 3D printer with dual extruder. But it is also possible with a single extruder, just a little more laborious. :)

  • Why ESP32?

    Fabian06/03/2021 at 14:54 0 comments

    I had equipped the PCB of the first revision of the pxlDigit_24 with an ESP8285 ESP-01F. 

    This is actually a very powerful microcontroller if you want to set up a project compactly, but at the same time don't want to do without wifi and a lot of computing power. If you then see the price of the ESP8285, the decision is actually almost made.

    So I set up the first revision with an ESP8285, as you can see in the following pictures.

    Unfortunately, only then I noticed the (only?) disadvantage of the ESP8285 for my use case: The memory is relatively (luxury problem!) scarce. Not seen in absolute terms, of course, because with its 8MBit memory it is really well equipped compared to other microcontrollers.

    The only problem I had here was that I wanted to use the ESPEasy framework again as the basis for the software. This is a framework that can be expanded with the help of plugins and configured in a very user-friendly manner. Depending on the desired plug-in, a little more memory is of course required.

    At this point I had already worked with the ESP32, which is a really powerful further development of the already very good ESP8266 or ESP8285. In addition, the ESP32 is not much more expensive than its little brother and has some key features that ultimately moved me to use the ESP32.

    Tthis can not only communicate via WiFi. It can also be equipped with bluetooth functionality. In addition, the development work can be simplified considerably with the aid of the JTAG interface.
    In the end there is a little more of everything than with the little brother. More ADCs, more flexibly configurable peripherals, dual core ...

    Granted, maybe. an ESP32 is a bit bored when it only has to control the 24 plus X WS2812 LEDs. But when it comes to the possibilities, I'm curious to see what will happen in the future and may still come. :)

  • Modular construction

    Fabian06/02/2021 at 17:05 0 comments

    I try to keep the structure of pxlDigit_24 as modular as possible. The aim is to be able to arrange the individual digits as you like. I created different housings for this.

    One of them is this case in which four digits can be arranged next to each other. Unfortunately it is a bit too wide (276mm) for standard 3D printers.

    So that the housing of the pxlDigits can still be produced on a normal 3D printer, I also designed a housing for individual digits. In this way, the circuit boards including the diffuser can be installed in the individual housings and arranged as desired.

    I am currently working on further cases which I will be introducing here soon. :)

View all 5 project logs

Enjoy this project?



Luke Brandon wrote 06/04/2021 at 03:38 point

Wow, this project puts mine to shame. This is really cool and really well done. 

  Are you sure? yes | no

Fabian wrote 06/04/2021 at 17:31 point

Thanks dude. :) Nooo, all projects are beautiful. :)

  Are you sure? yes | no

Dusan Petrovic wrote 06/02/2021 at 15:10 point

Slick! Nice job

  Are you sure? yes | no

Fabian wrote 06/02/2021 at 16:24 point

Thanks man :)

  Are you sure? yes | no

sjm4306 wrote 06/01/2021 at 17:10 point

Very cool, the pic with all the different colors lit kind of reminds me of stained glass.

  Are you sure? yes | no

Fabian wrote 06/01/2021 at 18:50 point

Thanks. :) Yeah you are right. Looks a bit like the windows of a church. :)

  Are you sure? yes | no

Dan Maloney wrote 06/01/2021 at 17:01 point

I really like the way this looks -- sort of a sci-fi look, like alien writing. Yet still quite readable. Nice work!

  Are you sure? yes | no

Fabian wrote 06/01/2021 at 18:51 point

Thank you :)

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates