LED Matrix Displays
An LED matrix is an electronic display made from LEDs arranged in rows and columns. By controlling individual LEDs or groups of LEDs, a matrix can display numbers, letters, symbols, graphics, animations and scrolling text. LED matrices are widely used in signs, clocks, information panels, scoreboards and embedded electronics.
What Is an LED Matrix?
An LED matrix consists of many LEDs arranged in a rectangular grid. Instead of providing a separate connection for every LED, the LEDs are normally connected in rows and columns.
For example, an 8 × 8 matrix contains:
8 rows × 8 columns = 64 LEDs
The matrix can be controlled by selecting rows and columns to illuminate the required LEDs.
LED Matrix Structure
A simple matrix can be represented as follows:
C1 C2 C3 C4 C5 C6 C7 C8
│ │ │ │ │ │ │ │
R1 ─────●──●──●──●──●──●──●──●
R2 ─────●──●──●──●──●──●──●──●
R3 ─────●──●──●──●──●──●──●──●
R4 ─────●──●──●──●──●──●──●──●
R5 ─────●──●──●──●──●──●──●──●
R6 ─────●──●──●──●──●──●──●──●
R7 ─────●──●──●──●──●──●──●──●
R8 ─────●──●──●──●──●──●──●──●
Each dot represents an LED.
Common LED Matrix Sizes
LED matrices are available in many sizes.
- 5 × 7
- 8 × 8
- 16 × 8
- 16 × 16
- 32 × 16
- 32 × 32
- 64 × 32
- 64 × 64
Large commercial displays are normally constructed from multiple smaller LED matrix modules.
8 × 8 LED Matrix
The 8 × 8 matrix is one of the most common LED matrix formats used in electronics projects.
It contains 64 LEDs but does not normally require 64 independent control lines.
Rows and columns are multiplexed to reduce the required number of connections.
LED Matrix Rows and Columns
The LEDs are electrically arranged so that a particular LED can be selected using its row and column.
A simplified concept is:
Selected row
│
▼
─────●─────●─────●─────
│ │ │
│ │ │
C1 C2 C3
The exact electrical arrangement depends on the matrix type.
Common-Anode LED Matrix
In a common-anode matrix, the anodes of LEDs are grouped together in rows or columns depending on the particular matrix construction.
The corresponding cathode lines are then used to select individual LEDs.
The exact pin arrangement must be obtained from the manufacturer's datasheet.
Common-Cathode LED Matrix
In a common-cathode matrix, the cathodes of LEDs are grouped together.
The remaining connections are used to control the LED anodes.
Again, the exact electrical arrangement varies between devices.
LED Matrix Pinout
LED matrix pinouts are not universal.
An 8 × 8 matrix from one manufacturer may have a different pin assignment from another matrix with the same physical dimensions.
Always check the datasheet or identify the matrix connections before connecting it to a circuit.
LED Matrix Multiplexing
Multiplexing allows many LEDs to be controlled using a relatively small number of connections.
Instead of illuminating every LED continuously, the controller rapidly scans through the rows or columns.
Row 1 → Row 2 → Row 3 → Row 4 ↑ │ └─────────────────────────┘
If the scanning is sufficiently fast, the human eye perceives a stable image.
Row Scanning
In row scanning, one row is activated at a time.
The column data determines which LEDs in that row are illuminated.
Activate Row 1
Send column data
↓
Activate Row 2
Send column data
↓
Activate Row 3
Send column data
↓
Continue...
Column Scanning
Some matrix designs can instead be scanned by columns.
The electrical configuration and driver circuit determine which scanning method is appropriate.
LED Matrix Refresh Rate
The complete matrix must be refreshed repeatedly.
If the refresh rate is too low, visible flicker may occur.
The required refresh rate depends on:
- Number of rows
- Number of columns
- Display brightness
- Multiplexing method
- Driver design
- Application
LED Matrix Duty Cycle
When an 8-row matrix is scanned one row at a time, an individual LED is only active during its selected row period.
For an ideal eight-row scan:
Duty cycle ≈ 1 / 8 = 12.5%
The actual brightness depends on the peak current, scan timing and driver characteristics.
LED Current Limiting
LEDs require current limiting.
The current must be controlled so that the LEDs and driver circuitry are not damaged.
Depending on the matrix and driver design, current limiting may be implemented using resistors or dedicated constant-current drivers.
LED Matrix Resistors
A basic LED resistor can be calculated using:
R = (VCC - VF) / I
where:
- VCC is the supply voltage.
- VF is the LED forward voltage.
- I is the desired LED current.
In a multiplexed display, peak current and average current must both be considered.
Peak Current and Average Current
Because a multiplexed LED is only active for part of the time, its peak current may be higher than its average current.
However, the maximum pulse current and pulse duration specified by the LED manufacturer must never be exceeded.
The driver must also be capable of handling the required instantaneous current.
LED Matrix Drivers
Dedicated driver ICs can greatly simplify LED matrix control.
A driver can handle functions such as:
- Row scanning
- Column control
- Current regulation
- Multiplexing
- Brightness control
- Serial communication
MAX7219
The MAX7219 is a popular serial display driver used with 8 × 8 LED matrices and 7-segment displays.
It provides serial control and handles the multiplexing required to drive the display.
MAX7219-compatible modules are widely used in microcontroller projects.
MAX7221
The MAX7221 is another display-driver device in the same general family of serially controlled LED drivers.
The exact electrical and software requirements should be checked against the manufacturer's documentation.
HT16K33
The HT16K33 is a commonly encountered LED display driver that communicates using I2C.
It can simplify the connection between a microcontroller and LED matrix modules.
I2C allows the microcontroller to control the display using only a small number of communication lines.
LED Matrix with a Microcontroller
A microcontroller can control an LED matrix directly or through a dedicated driver.
Microcontroller
│
│ SPI / I2C / GPIO
▼
Display Driver
│
▼
LED Matrix
Using a dedicated driver reduces the amount of real-time scanning work that must be performed by the microcontroller.
LED Matrix with ESP32
An ESP32 can control LED matrix displays through GPIO, SPI, I2C or a dedicated display-driver module.
This makes LED matrices suitable for projects such as:
- Digital clocks
- Internet radio displays
- Temperature displays
- Scrolling message boards
- IoT information displays
- Status indicators
Displaying a Character
A character can be represented as a bitmap.
For example, the letter A can be represented using an 8 × 8 pattern:
01111110 11000011 11000011 11000011 11111111 11000011 11000011 11000011
The software sends this pattern to the matrix one row or column at a time.
LED Matrix Bitmap
A bitmap is a collection of binary values representing which pixels are ON and which are OFF.
For an 8 × 8 monochrome matrix, one row can be represented by eight bits.
10110100
Each bit corresponds to one LED position in that row.
Scrolling Text
LED matrices are particularly useful for scrolling messages.
The software shifts the bitmap horizontally and repeatedly updates the display.
HELLO
→ H
→ HE
→ HEL
→ HELL
→ HELLO
A larger display can show several characters simultaneously.
LED Matrix Animation
Animations can be created by displaying a sequence of bitmap frames.
Frame 1 ↓ Frame 2 ↓ Frame 3 ↓ Frame 4 ↓ Repeat
If the frames are updated rapidly enough, the viewer perceives motion.
Color LED Matrix
A color LED matrix uses multiple LED colors to create colored pixels.
Common RGB pixels contain:
- Red LED
- Green LED
- Blue LED
By controlling the intensity of each color, many different colors can be produced.
RGB LED Matrix
RGB matrices require considerably more control information than single-color matrices.
Modern RGB matrix panels often use dedicated driver electronics and multiplexing circuitry.
Large RGB panels may also use specialized controllers rather than direct microcontroller GPIO connections.
PWM Brightness Control
PWM can be used to control LED brightness.
By changing the proportion of time that an LED is ON, the perceived brightness can be adjusted.
Higher duty cycle → Brighter Lower duty cycle → Dimmer
The PWM frequency and timing must be chosen so that visible flicker is avoided.
LED Matrix Power Consumption
Power consumption depends on:
- Number of LEDs illuminated
- LED current
- LED forward voltage
- Multiplex duty cycle
- Brightness setting
- Number of colors
- Display size
Large LED matrices can require substantial power supplies.
Power Supply for LED Matrices
The power supply must be capable of providing the required current without excessive voltage drop.
For large displays, calculate the worst-case current before selecting the power supply.
Adequate wiring, connectors and PCB traces are also important because large LED currents can cause voltage drops.
LED Matrix Wiring
Before wiring a matrix, identify:
- Row pins
- Column pins
- Common-anode or common-cathode arrangement
- LED forward voltage
- Maximum current
- Pinout
Never assume the pinout from the physical appearance of the matrix.
Transistor Drivers
Transistors or MOSFETs may be required when a microcontroller cannot directly handle the current required by a row or column.
Microcontroller
│
▼
Gate/Base Driver
│
▼
MOSFET / Transistor
│
▼
LED Matrix
The driver must be selected according to the peak current, voltage and switching frequency.
MOSFET Drivers for LED Matrices
MOSFETs can be useful for switching high-current rows or columns.
Logic-level MOSFETs can often be driven directly from a suitable microcontroller GPIO when their gate requirements are compatible.
For high-current or high-speed designs, a dedicated gate driver may be appropriate.
LED Matrix Testing
A basic LED matrix can be tested using a multimeter with a diode-test function.
- Identify possible row and column pins.
- Test the LED junctions.
- Record which combinations illuminate LEDs.
- Map the rows and columns.
- Compare the resulting pinout with the datasheet if available.
LED Matrix Does Not Light
Possible causes include:
- Incorrect power supply
- Incorrect row/column wiring
- Wrong common connection
- Faulty driver
- Incorrect software configuration
- Incorrect pinout
- Damaged LEDs
Only Some LEDs Work
If some LEDs work while others do not, possible causes include:
- Damaged LED elements
- Open row connection
- Open column connection
- Driver output failure
- Incorrect bitmap data
- PCB or connector problems
One Complete Row Does Not Work
A completely inactive row can indicate:
- Broken row connection
- Faulty row transistor
- Incorrect row pin assignment
- Driver output failure
- Firmware scanning problem
If the entire row is missing, check the row driver before assuming that all LEDs in that row are defective.
One Complete Column Does Not Work
A dead column can similarly indicate:
- Broken column connection
- Faulty column driver
- Incorrect pin assignment
- Driver IC failure
- Software mapping error
LED Matrix Flickering
Flickering can be caused by:
- Low refresh rate
- Incorrect scanning timing
- Unstable power supply
- CPU timing problems
- Interrupt conflicts
- Electrical noise
LED Matrix Ghosting
Ghosting occurs when LEDs that should be OFF appear faintly illuminated.
Possible causes include:
- Incorrect row switching sequence
- Insufficient blanking time
- Slow transistor turn-off
- Driver leakage
- Incorrect multiplex timing
A common technique is to briefly disable the current row before changing the column data and enabling the next row.
LED Matrix Brightness Problems
If the display is too dim, check:
- LED current
- Supply voltage
- Multiplex duty cycle
- Driver current capability
- PWM settings
- Wiring voltage drop
Do not simply increase the LED current beyond the manufacturer's specified limits.
LED Matrix Replacement
When replacing an LED matrix, check:
- Matrix dimensions
- Number of LEDs
- LED color
- Forward voltage
- Maximum current
- Common configuration
- Pinout
- Physical dimensions
- Viewing angle
The replacement must be electrically compatible as well as physically compatible.
How to Select an LED Matrix
- Determine the required matrix size.
- Choose monochrome or RGB.
- Determine the required LED color.
- Determine the required brightness.
- Check LED forward voltage.
- Check peak and continuous current ratings.
- Determine the matrix pinout.
- Choose the appropriate driver.
- Calculate power requirements.
- Check physical dimensions.
- Check viewing angle.
- Check controller compatibility.
LED Matrix Applications
- Digital clocks
- Scrolling message displays
- Scoreboards
- Traffic information displays
- Industrial indicators
- Queue displays
- Public information boards
- Electronic signs
- Temperature displays
- Frequency displays
- Audio visualizers
- Embedded projects
- IoT displays
LED Matrix vs 7-Segment Display
| Feature | LED Matrix | 7-Segment |
|---|---|---|
| Display type | Pixel grid | Fixed segments |
| Graphics | Possible | Very limited |
| Letters | Flexible | Limited |
| Animation | Possible | Limited |
| Scrolling text | Well suited | Not normally suitable |
| Control complexity | Higher | Lower |
LED Matrix vs LCD
| Feature | LED Matrix | LCD |
|---|---|---|
| Light generation | LEDs emit light | Usually requires backlight |
| Visibility | Excellent for bright signs | Depends on backlight and panel |
| Graphics | Pixel-based | Pixel-based |
| Power consumption | Can be high at high brightness | Often lower for small displays |
| Typical use | Signs and indicators | Instruments and graphical interfaces |
Advantages of LED Matrices
- Very bright
- Excellent visibility
- Can display text and graphics
- Suitable for animations
- Suitable for scrolling messages
- Available in many sizes
- Simple monochrome versions are inexpensive
Limitations of LED Matrices
- Can consume significant power
- Requires multiplexing for efficient control
- Large matrices require powerful drivers
- LED current must be controlled carefully
- Large RGB panels can require substantial processing power
- Power supply requirements increase rapidly with display size
Common LED Matrix Design Mistakes
- Using the wrong matrix pinout
- Confusing common-anode and common-cathode configurations
- Driving LEDs without current limiting
- Exceeding driver current limits
- Ignoring multiplex duty cycle
- Using an insufficient power supply
- Using an inadequate refresh rate
- Ignoring voltage drops in large displays
- Incorrect row/column mapping
- Incorrect transistor or MOSFET selection
Key Points
- An LED matrix consists of LEDs arranged in rows and columns.
- An 8 × 8 matrix contains 64 LEDs.
- Rows and columns reduce the number of required control connections.
- Multiplexing allows the display to be scanned rapidly.
- Refresh rate is important to prevent visible flicker.
- LED current must be limited.
- Peak and average current must both be considered.
- Dedicated drivers such as MAX7219-type devices simplify matrix control.
- RGB matrices require substantially more control than monochrome matrices.
- Large LED matrices can require significant power.
- Ghosting can result from incorrect multiplexing timing.
- Always verify the exact matrix pinout before wiring it.