Flickering Issues with Neopixel Matrix (8x8)


I am working with a Neopixel matrix that consists of 64 pixels (8x8 configuration). I read that the pixels have a lot of current draw so I powered the board matrix independently using a 5A,3A UL certified AC adapter. The matrix that I bought is also a RGBW configuration (Adafruit NeoPixel NeoMatrix 8x8 - 64 RGB LED Pixel Matrix : ID 1487 : $34.95 : Adafruit Industries, Unique & fun DIY electronics and kits).

I am having major flickering issues with the pixels. At first, I thought that it might be a voltage variation issue, but when I disconnect the Arduino from my computer, which is powering it, there are no flickering issues at all. So the problem cannot be that their is varying voltage from the AC adapter to the board.

I then read that the Neopixels use up a lot of RAM: "Each NeoPixel requires about 3 bytes of RAM. This doesn’t sound like very much, but when you start using dozens or even hundreds of pixels, and consider that the mainstream Arduino Uno only has 2 kilobytes of RAM (often much less after other libraries stake their claim), this can be a real problem!
For using really large numbers of LEDs, you might need to step up to a more potent board like the Arduino Mega or Due. But if you’re close and need just a little extra space, you can sometimes tweak your code to be more RAM-efficient."

I was using the Arduino Uno up to this point and decided to switch to the Arduino Mega which I read has more RAM than Uno, but the flickering issue still persisted.

If anyone has worked with Neopixels with Arduino before and has had similar issues and was able to resolve them, your help would be greatly appreciated. I have attached the code that I am using for the Neopixels below as well.

#include <Adafruit_NeoPixel.h>
#define PIN 6
#define NUM_LIGHTS 64

Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LIGHTS, PIN, NEO_RGBW + NEO_KHZ800);

void setup() {
  strip.show(); // Initialize all pixels to 'off'

void loop() {
    uint32_t low = strip.Color(0, 0, 0, 0); 
    uint32_t high = strip.Color(255, 0, 0, 0);
    // Turn them off
    for( int i = 0; i<NUM_LIGHTS; i++){
        strip.setPixelColor(i, high);

I assume you me 5v 3amp.

At full on white your pixels will draw almost 4 amps which is more than the power supply can handle. I am not too familiar with the adafruit library (as I use the fastLED library) but it does not seem like you are running them full white.

Do you have a DMM? Have you verified the power coming out of the power supply. Also take a clear picture of how you have everything wired. This sounds like a power supply issue. You likely need to inject power at a few places in the matrix to make sure the voltage isnt dropping along the matrix.