Here is a link to what it currently does, I took off the diffuser I had over it and realized the upper LEDs are staying lit very dimly and blue when they should have nothing to do with blue.
They bottom 2 are supposed to go from red to blue, with only a dark blue lit at the end.
http://dl.dropbox.com/u/39860181/Video1.mov
That code is as follows, without everything above the void loop() cause its all the same.
void loop() {
for (int i=0; i<NumLEDs; i++) { // Reinitialize red
LEDChannels[i][0] = 1023;
LEDChannels[i][2] = 1;
}
WriteLEDArray();
effectOn = true;
// delay(500);
while(effectOn){ //loop during animation
for (int i=0; i<NumLEDs;i++) { //loop between RGB writes
if(LEDChannels[i][0] < colorStep){ //color shift from red - blue
LEDChannels[i][0] = 0;
}
else{
LEDChannels[i-2][0] -= colorStep;
}
if(LEDChannels[i][2] > (1023 - colorStep)){ //color shift from red - blue
LEDChannels[i][2] = 1023;
}
else{
// LEDChannels[i][2] += colorStep;
LEDChannels[NumLEDs-2][2] += colorStep;
LEDChannels[NumLEDs-1][2] += colorStep;
WriteLEDArray();
}
}
if(LEDChannels[NumLEDs-3][0] == 0){
effectOn = false;
delay(500);
}
}
}