This step-by-step guide explains how to build a large video LED display that works in real time and can show any video content generated by the tiny Raspberry Pi Zero W computer.
The display is implemented using addressable RGB LEDs, specifically the WS2812B type, also known as smart pixels. These are among the most affordable LED solutions for large-scale video screens that can be curved and attached to various surfaces. They are also widely used in smart lighting systems controlled by a central computer in smart buildings, visual art installations, and similar applications. Since video displays require a regular, pixel-by-pixel structure, the most suitable LED formats are LED strips and LED matrices (panels).
Our demo display contains 7, 200 RGB LEDs that must be individually controlled, which is too demanding for many more powerful computers—yet it is handled by the Raspberry Pi Zero.
Smooth video playback requires a refresh rate of at least 30 frames per second (fps), and higher rates when possible. Even more challenging, the 3-wire WS2812 LED control interface requires extremely precise timing: even slight misalignment in the nanosecond range can cause LED malfunctions, flickering, or a stalled video image.
Typically, these requirements cannot be met by software-based or lower-performance hardware controllers and therefore require a dedicated hardware LED controller.
This project therefore presents the new Pixblasters MINI Video LED Controller, which is preparing for crowdfunding on the Crowd Supply platform. You can find more information and subscribe to project updates here:https://www.crowdsupply.com/pixblasters/pixblasters-mini-led-controller
Pixblasters LED ControllerPixblasters MINI Video LED Controller is a compact, real-time video controller for addressable RGB LEDs that turns LED strips and panels into a live video display. It appears as a standard monitor to your computer and can drive up to 8, 192 RGB LEDs at 60 fps with no programming required. Designed for creative LED installations, digital signage, and interactive projects, it supports popular LEDs like WS2812B, SK6812, and APA102, offering high performance in a small, easy-to-use form factor. Full technical specifications: https://pixblasters.com/products/mini-controller/
System ConnectionsThe system architecture of the complete video LED display is extremely simple. A Raspberry Pi Zero W (1) connects to the Pixblasters MINI LED Controller (2) via an HDMI-type video cable. The LED controller is recognized as a standard video monitor, and the Raspberry Pi feeds it with the video signal. There is no processing burden on the microprocessor—the Pi simply drives a monitor!
The AMD FPGA-based Pixblasters MINI controller renders a selected portion of the video image onto the attached LED display (3), which can consist of up to 8, 192 RGB LEDs. The display can be built using LED strips or LED panels, including WS2811, WS2812B, and other popular addressable LEDs.
The LED controller (2) is configured using on-board DIP switches. Additional configuration parameters are set only once per board through a simple configuration menu, accessible via a serial connection over a USB-C cable (4).
Separate +5 V DC power supplies must be used to provide sufficient power for the entire LED display.
LED Display ConstructionFor this project, we used one of our existing test displays. It has a resolution of 120 × 60 pixels (horizontal × vertical) and physical dimensions of 2 × 1 meters. The display is built from LED strips containing a total of 7, 200 WS2812B RGB LEDs, which is within the LED driving capacity of the Pixblasters MINI Video LED controller.
The LED strips were cut to a length of 2 meters and mounted (glued) onto an aluminum sheet. Four strips are arranged in a zig-zag pattern, resulting in a display with 15 digital inputs, which are connected to 15 LED outputs of the Pixblasters MINI controller.
For full explanation on how to build LED display’s matrix with LED strips, please check this application note: https://pixblasters.com/wp-content/uploads/2021/03/papp004-Pixblasters-LED-Strips-Matrix-Explained_v1.0.pdf
Since each LED can draw up to approximately 50 mA at maximum brightness, the theoretical maximum current consumption of the display is around 360 A, which corresponds to 1, 800 W at 5 VDC. In practice, the display never shows full-white content continuously, so we powered it using four 350 W, 5 VDC power supplies. This configuration proved to be sufficient for realistic video playback, even though the total available power is slightly underrated compared to the theoretical maximum.
Setup Raspberry Pi ZeroPixblasters MINI LED Controller is a specialized electronic component that allows any computer with a supported DVI video output to drive video LED displays built from addressable RGB LEDs. Because the MINI operates as a standard video output device, any variant of Raspberry Pi OS with graphical support is suitable for controlling the LED display.
The process of downloading Raspberry Pi OS, preparing the SD card, and starting the system is already very well documented elsewhere, so it will not be covered in this project. For demonstration purposes, we used Raspberry Pi OS (32-bit Desktop), which can be downloaded here:https://www.raspberrypi.com/software/operating-systems/
Although this distribution felt a bit heavy for such minimal hardware, the Raspberry Pi Zero performed well enough for demonstration and testing. For permanent Pixblasters LED installations powered by a Raspberry Pi Zero, we would recommend using a lighter OS distribution to achieve better performance and responsiveness.
The Pixblasters MINI maximum input video resolution is 1280×720, so make sure to set the Raspberry Pi Zero W output resolution to that exact value.
The Pixblasters MINI Video LED controller only needs to be configured once. After that, the configuration is permanently stored in the device. This means that LED installations require no special attention after installation. As soon as the control computer is powered on and starts playing video, the image immediately appears on the LEDs.
The first step in the configuration process is selecting the operating mode. To control RGB LED strips with an SPI-like 3-wire interface, such as WS2812B, configuration 1 must be selected using the on-board DIP switches. This defines both the LED interface type and the LED material.
To access the housekeeping microcontroller in the Pixblasters MINI device, connect any computer to the USB-C port and launch a terminal emulator application. Our preferred terminal emulator is the open-source Tera Term: https://teratermproject.github.io/index-en.html
For communication, select the following parameters: baud rate 115200, 8 data bits, 1 stop bit, no parity, and no flow control. As soon as the connection is established, the Pixblasters configuration menu will appear.
The photo shows the actual internal register settings we used. Below is an explanation of the most important parameters:
- CONTROL = 0x0140The used LED strips are GRB instead of RGB. This value swaps the Green and Red channels. Once the controller starts and detects a valid video input, the read value should change to 0x0141.
- CROPX = 400Horizontal pixel position of the top-left corner of the selected video area for LED display.
- CROPY = 400Vertical pixel position of the top-left corner of the selected video area for LED display.
- STOREX = 119Defines the horizontal resolution of the LED display — 120 pixels to the right from the selected top-left corner.
- STOREY = 59Defines the vertical resolution of the LED display — 60 pixels downward from the selected top-left corner.
- STOREHRES = 480Defines the total number of pixels driven by a single LED output.
- SEGMENTSNO = 4Defines four zig-zag wired segments driven by a single LED output — in this case, four segments of 120 pixels each.
- AUX1 = 0x001FSets the LED brightness to the maximum level.
Once you are satisfied with the system configuration and no further changes are needed, the configuration is permanently saved in internal memory. The control computer can then be permanently disconnected from the USB-C serial port.
Results - VideosThis video showcases the world’s fastest video LED display controlled by a Raspberry Pi Zero W.
To best demonstrate the speed and responsiveness of the video LED display, we used a video splitter to connect the Raspberry Pi’s video output simultaneously to a monitor showing the full image and to the LED video display, which shows a selected portion of the Raspberry Pi’s video output.
Once again, a quick reminder to support the launch of the Pixblasters MINI Video LED Controller.Subscribe and follow the project to get the latest updates here:https://www.crowdsupply.com/pixblasters/pixblasters-mini-led-controller
If you thought this was the limit of what our Raspberry Pi Zero W could do when it comes to driving video LED displays, think again. For a test, we paired our Raspberry Pi with the powerful Pixblasters MS1 Video LED Controller.
This video shows how a tiny Raspberry Pi Zero W drives a large DIY video LED display made of 14, 400 WS2812B addressable RGB LEDs. Even much more powerful computers struggle to control a display of this size in software while maintaining a 60 Hz refresh rate. In this setup, the Raspberry Pi connects to the Pixblasters MS1, which appears to the Pi as a standard monitor. Multiple controllers can be chained together, enabling displays with hundreds of thousands of LEDs. Because the Raspberry Pi sees the entire LED wall as a monitor, it can drive even massive installations without consuming additional computing resources.
Build Up Your Own ControllerIf you’d like to build your own FPGA-based LED controller, check out our earlier project, which includes detailed technical insights and open-source code for AMD FPGA:
https://www.hackster.io/pixigreen/convert-a-bunch-of-led-strips-into-a-big-video-display-c90380









Comments