#include "FastLED.h"
// set number of LEDs in each NeoPixel strip
#define NUM_LEDS_PER_STRIP 12
CRGB strip1[NUM_LEDS_PER_STRIP];
CRGB strip2[NUM_LEDS_PER_STRIP];
CRGB strip3[NUM_LEDS_PER_STRIP];
CRGB strip4[NUM_LEDS_PER_STRIP];
CRGB strip5[NUM_LEDS_PER_STRIP];
CRGB strip6[NUM_LEDS_PER_STRIP];
CRGB strip7[NUM_LEDS_PER_STRIP];
CRGB strip8[NUM_LEDS_PER_STRIP];
CRGB strip9[NUM_LEDS_PER_STRIP];
CRGB strip10[NUM_LEDS_PER_STRIP];
CRGB strip11[NUM_LEDS_PER_STRIP];
CRGB strip12[NUM_LEDS_PER_STRIP];
// set color variables in 3 characters (use either RGB or HEX code)
CRGB blk = CRGB(0x000000);
CRGB wht = CRGB(0xffffff);
CRGB red = CRGB(0xff0000);
CRGB rst = CRGB(0xaa5500);
CRGB grn = CRGB(0x00ff00);
CRGB blu = CRGB(0x0000ff);
CRGB ylw = CRGB(0xffff00);
CRGB prp = CRGB(0xff00ff);
CRGB org = CRGB(0xffa500);
// prepare strip array with intended colors
// columName(using spread sheet): A B C D E F G H I J K L
CRGB leds01_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds02_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds03_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,blk,blk,blk,red,blk,blk,blk,blk};
CRGB leds04_1[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,blk,red,red,red,blk,blk,blk};
CRGB leds05_1[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,blk,red,red,blk,blk};
CRGB leds06_1[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,blk,blk,red,blk,blk};
CRGB leds07_1[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,red,red,red,blk,blk};
CRGB leds08_1[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,red,blk,blk,blk};
CRGB leds09_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,red,red,blk,blk,blk,blk};
CRGB leds10_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,red,red,blk,blk,blk,blk,blk};
CRGB leds11_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,red,blk,blk,blk,blk,blk,blk};
CRGB leds12_1[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds01_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds02_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,blk,blk,blk,red,blk,blk,blk,blk};
CRGB leds03_2[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,blk,red,red,red,blk,blk,blk};
CRGB leds04_2[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,blk,red,red,blk,blk};
CRGB leds05_2[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,blk,blk,red,blk,blk};
CRGB leds06_2[NUM_LEDS_PER_STRIP] ={blk,red,red,red,red,red,red,red,red,red,blk,blk};
CRGB leds07_2[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,red,blk,blk,blk};
CRGB leds08_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,red,red,blk,blk,blk,blk};
CRGB leds09_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,red,red,blk,blk,blk,blk,blk};
CRGB leds10_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,red,blk,blk,blk,blk,blk,blk};
CRGB leds11_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds12_2[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds01_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds02_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,blk,blk,blk,red,blk,blk,blk};
CRGB leds03_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,blk,red,red,red,blk,blk};
CRGB leds04_3[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,blk,red,red,blk};
CRGB leds05_3[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,blk,blk,red,blk};
CRGB leds06_3[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,red,red,red,blk};
CRGB leds07_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,red,red,red,red,blk,blk};
CRGB leds08_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,red,red,red,red,blk,blk,blk};
CRGB leds09_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,red,red,red,blk,blk,blk,blk};
CRGB leds10_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,red,blk,blk,blk,blk,blk};
CRGB leds11_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds12_3[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds01_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds02_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
CRGB leds03_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,blk,blk,blk,red,blk,blk,blk};
CRGB leds04_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,blk,red,red,red,blk,blk};
CRGB leds05_4[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,blk,red,red,blk};
CRGB leds06_4[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,blk,blk,red,blk};
CRGB leds07_4[NUM_LEDS_PER_STRIP] ={blk,blk,red,red,red,red,red,red,red,red,red,blk};
CRGB leds08_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,red,red,red,red,red,red,red,blk,blk};
CRGB leds09_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,red,red,red,red,red,blk,blk,blk};
CRGB leds10_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,red,red,red,blk,blk,blk,blk};
CRGB leds11_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,red,blk,blk,blk,blk,blk};
CRGB leds12_4[NUM_LEDS_PER_STRIP] ={blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk,blk};
// set delay time for when needed
int wait = 300;
void setup() {
// control brightness of LEDs
FastLED.setBrightness(25);
// add strips for FastLED execution
FastLED.addLeds<NEOPIXEL, 0>(strip1, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 1>(strip2, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 2>(strip3, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 3>(strip4, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 4>(strip5, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 5>(strip6, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 6>(strip7, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 7>(strip8, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 8>(strip9, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 9>(strip10, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 10>(strip11, NUM_LEDS_PER_STRIP);
FastLED.addLeds<NEOPIXEL, 11>(strip12, NUM_LEDS_PER_STRIP);
}
void loop() {
// display CRGB color arrays in appropriate LED strips
for (int i = 0; i < NUM_LEDS_PER_STRIP; i++) {
strip1[i] = leds01_1[i];
strip2[i] = leds02_1[i];
strip3[i] = leds03_1[i];
strip4[i] = leds04_1[i];
strip5[i] = leds05_1[i];
strip6[i] = leds06_1[i];
strip7[i] = leds07_1[i];
strip8[i] = leds08_1[i];
strip9[i] = leds09_1[i];
strip10[i] = leds10_1[i];
strip11[i] = leds11_1[i];
strip12[i] = leds12_1[i];
}
FastLED.show();
delay(wait);
// display CRGB color arrays in appropriate LED strips
for (int i = 0; i < NUM_LEDS_PER_STRIP; i++) {
strip1[i] = leds01_2[i];
strip2[i] = leds02_2[i];
strip3[i] = leds03_2[i];
strip4[i] = leds04_2[i];
strip5[i] = leds05_2[i];
strip6[i] = leds06_2[i];
strip7[i] = leds07_2[i];
strip8[i] = leds08_2[i];
strip9[i] = leds09_2[i];
strip10[i] = leds10_2[i];
strip11[i] = leds11_2[i];
strip12[i] = leds12_2[i];
}
FastLED.show();
delay(wait);
// display CRGB color arrays in appropriate LED strips
for (int i = 0; i < NUM_LEDS_PER_STRIP; i++) {
strip1[i] = leds01_3[i];
strip2[i] = leds02_3[i];
strip3[i] = leds03_3[i];
strip4[i] = leds04_3[i];
strip5[i] = leds05_3[i];
strip6[i] = leds06_3[i];
strip7[i] = leds07_3[i];
strip8[i] = leds08_3[i];
strip9[i] = leds09_3[i];
strip10[i] = leds10_3[i];
strip11[i] = leds11_3[i];
strip12[i] = leds12_3[i];
}
FastLED.show();
delay(wait);
// display CRGB color arrays in appropriate LED strips
for (int i = 0; i < NUM_LEDS_PER_STRIP; i++) {
strip1[i] = leds01_4[i];
strip2[i] = leds02_4[i];
strip3[i] = leds03_4[i];
strip4[i] = leds04_4[i];
strip5[i] = leds05_4[i];
strip6[i] = leds06_4[i];
strip7[i] = leds07_4[i];
strip8[i] = leds08_4[i];
strip9[i] = leds09_4[i];
strip10[i] = leds10_4[i];
strip11[i] = leds11_4[i];
strip12[i] = leds12_4[i];
}
FastLED.show();
delay(wait);
}