LED Matrix Not Working
BBC Micro:bit
Severity:What Does This Error Mean?
Micro:bit LED matrix not lighting up is usually a code issue — the program may not include any display commands, or the LED display may have been disabled in code. Check that your program includes a 'show' block or display.show() call.
Affected Models
- Micro:bit V1
- Micro:bit V2
- Micro:bit V2.21
Common Causes
- Program does not include any display output commands
- LED display disabled with display.off() or 'turn off display' block
- Pin P3/P4 used for analog input — these pins share the LED matrix row connections and disable display when used as analog
- Low battery voltage causing LEDs to appear very dim
- Physical damage to the LED matrix from ESD or short circuit
How to Fix It
-
Check your program for display commands.
In MakeCode, confirm you have a 'show string', 'show icon', or 'plot' block somewhere in your program. In MicroPython, check for display.show() or display.set_pixel() calls. An empty 'forever' loop or a program with no display output will result in a blank LED matrix.
-
Check for display.off() or 'turn off display' in the code.
Searching your MakeCode blocks or MicroPython code for 'off' or 'display off' calls. If display.off() is called before your display output, the LEDs will never light up. Remove the off call or add display.on() before your show command.
-
Avoid using P3 or P4 as analog inputs.
Micro:bit pins P3 and P4 share connections with LED matrix rows. Using them as analog_read inputs will disable those LED rows. Rewrite your program to use a different pin (P0, P1, P2) for analog input if you need the full LED matrix.
-
Check the battery voltage.
When running on batteries, low battery voltage causes the LED matrix to appear very dim or not light at all. Replace the AAA batteries with fresh ones. The Micro:bit needs at least 2.7V to operate correctly.
-
Flash a simple test program.
Flash the Micro:bit with the simplest possible program: a single 'show icon' (heart) block in 'on start'. If the heart appears on the LED matrix, the hardware is fine and the issue is in your original code. If the heart does not appear, the LED matrix hardware has a fault.
When to Call a Professional
If specific LEDs in the matrix are permanently dark while others work, individual LEDs may have been damaged by static discharge. This is a hardware fault — the Micro:bit will need replacement.