“1536 seven segment displays that show videos of water
I’ve always loved the seven segment display. It probably started because they were on pretty much every applicance when I was a kid, but as I got older I admired their brutal efficiency at displaying numbers. One day, I had the idea to build a display made from them.
The starting point was a modular PCB that can pass data in two directions. Each PCB has 32 digits in a 2 x 4 grid of 4 digit seven segment displays. The LEDs in the displays are driven by two TLC5920 drivers.
At the heart of the display is a PocketBeagle, an absolutely fantastic board. This sends out six streams of syncronous serial data to the drivers. The PocketBeagle in a corner PCB and all the PCBs in that coloumn are connected together. The layout on the PCB routes data from the first vertical channel across to the side, and vertically channels are shifted along by one.
The whole display runs on 48V which is delivered via the two steel cables that it hangs from. The back of the display has a lattice of steel bus bars which connect to the PCBs via metal standoffs. This also serves as structural support for the whole display.
I use the PRU on the PocketBeagle to bit bang data to the drivers. Frames are received over UDP with via WiFi (using a USB dongle) or by connecting a USB cable to the PocketBeagle. Each LED can be one of 32 levels of brightness, which is done via binary code modulation in the PRU program.
To work out which what to actually display, I wrote a program in C++ to load videos and create the data to send to the display.”