NeoPixel Blink/Glitch I'm having this weird effect where my NeoPixel will blink/glitch after every cycle of a fading sketch. I'm not certain whether the issue is hardware or in my code. The blinking only occurs during the if statement portion of the code and not during the else statement which blinks red. I have tried multiple sources of power, 5V 2amp, 9V 1 amp, 12V 1amp and a Mac Usb and the problem persists on each power supply. 

Any suggestions or ideas would be greatly appreciated.

#include &lt;Adafruit_NeoPixel.h&gt;
#include &lt;DistanceGP2Y0A21YK.h&gt;

#define PIN 6
#define PIXEL 16

Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL, PIN, NEO_GRBW + NEO_KHZ800);


DistanceGP2Y0A21YK Dist;
int distance;
int R = 0;
int G = 0;
int B = 0;


void setup() {
  strip.begin();
  strip.show();
  strip.setBrightness(127);

  Serial.begin(9600);
  Dist.begin(A0);
}

void loop() {
  distance = Dist.getDistanceCentimeter();
  Serial.print("\nDistance in centimers: ");
  Serial.print(distance);
  delay(2); //make it readable

  if (distance &gt; 10) {

    for (R &amp;&amp; G &amp;&amp; B; R &lt; 150 &amp;&amp; G &lt; 150 &amp;&amp; B &lt; 150; R++ &amp;&amp; G++ &amp;&amp; B++) {
      for (int i = 0; i &lt; strip.numPixels(); i++) {
        strip.setPixelColor(i, strip.Color(R, G, B));
        strip.show();
        delay(1);
      }
      delay(2);
    }

    // fade off
    for (R &amp;&amp; G &amp;&amp; B; R &gt; -1 &amp;&amp; G &gt; -1 &amp;&amp; B &gt; -1; R-- &amp;&amp; G-- &amp;&amp; B--) {
      for (int j = 0; j &lt; strip.numPixels(); j++) {
        strip.setPixelColor(j, strip.Color(R, G, B));
        strip.show();
        delay(1);
      }
      delay(1);
    }

  } else {

    for (int j = 0; j &lt; 256; j++) {
      for (int i = 0; i &lt; strip.numPixels(); i++) {
        strip.setPixelColor(i, strip.Color(255, 0, 0));
        strip.show();
      }
      delay (1);

      //blink off
      for (int j = 64; j &gt; 0; j--) {
        for (int i = 0; i &lt; strip.numPixels(); i++) {
          strip.setPixelColor(i, strip.Color(j, 0, 0));
          strip.show();
        }
        delay (2);
      }
    }
  }
}
for (int j = 0; j &lt; 256; j++) {

  ...

  //blink off
  for (int j = 64; j &gt; 0; j--) {
    ...


Notice that you are re-declaring the variable j.