NeoPixel Matrix 8x8 RGB LED

/media/uploads/jguinta3/1487reflect_med.jpg /media/uploads/jguinta3/1487bottom_med.jpg

The NeoPixel Matrix 8x8 RGB LED is composed of 64 individually addressable 24-bit color LEDs controllable from a single microcontroller pin. There are two 3-pin connection ports and wiring is relatively simple. Connect an external 5V voltage source to the VIN pin, connect the DIN pin to any Digital Out pin on the mbed, and use a common ground. Expect to see 1-2A of current per panel for common use, although up to 3.5A may be reached if all LEDs are set to bright white. Exceeding about 6.5V could damage the LED matrix. If you need more "blinky", you can chain the LED matrices together by connecting the DIN of a second panel to the DOUT of the first panel. Be mindful of power usage as you increase the number of panels in the chain.


Library for controlling a strip of Adafruit NeoPixels with WS2812 drivers. Because of the strict timing requirements of the self-clocking data signal, the critical parts of code are written in ARM assembly. Currently, only the NXP LPC1768 platform is supported. More information about NeoPixels can be found at

Import library

Public Member Functions

NeoStrip (PinName pin, int N)
Create a NeoStrip object.
void setBrightness (float bright)
Set an overall brightness scale for the entire strip.
void setPixel (int p, int color)
Set a single pixel to the specified color.
void setPixel (int p, uint8_t red, uint8_t green, uint8_t blue)
Set a single pixel to the specified color, with red, green, and blue values in separate arguments.
void setPixels (int p, int n, const int *colors)
Set n pixels starting at pixel p.
void clear ()
Reset all pixels in the strip to be of (0x000000)
void write ()
Write the colors out to the strip; this method must be called to see any hardware effect.

Example Program

Import programNeoPixels

An example program using my NeoStrip library to control an Adafruit 8x8 NeoPixel matrix (

The example program uses pushbuttons to display three different patterns on the LED matrix with varying degrees of brightness. To create your own pattern, find or create an image and extract the color information from it. For example, MATLAB was used to obtain the values for the GT image, which was made in Adobe Photoshop. After obtaining the pattern, mimic the code found in gt.h and adjust the main program to read your pattern.


mbedNeoMatrix LEDExternal 5V Power Supply
p17 (or any DigOut)DIN

Picture of Example Program


Video Demonstration of Example Program


See the NeoPixel Uberguide for more detailed information about hardware specifications. It also has information about creating your own library if you choose not to use the one above.

Purchase Here

Check out Adafruit for more fun LED options.

1 comment on NeoPixel Matrix 8x8 RGB LED:

25 Nov 2020

If it shows "Error: Too many arguments in function call in "NeoMatrix/NeoMatrix.cpp", Line: 50, Col: 28", change the line from "gpio_init(&gpio, pin, PIN_OUTPUT);" to "gpio_init_out(&gpio, pin); "

Please log in to post comments.