#include <Adafruit_NeoPixel.h>

#define DIN_PIN 6
#define NUM_PIXELS 8

Adafruit_NeoPixel pixels(NUM_PIXELS, DIN_PIN);

int32_t colors[] = {
  pixels.Color(255, 0, 0), //rosso
  pixels.Color(255, 255, 0), //giallo
  pixels.Color(0, 255, 0),//verde
  pixels.Color(0, 255, 255), //celeste
  pixels.Color(0, 0, 255), //blu
  pixels.Color(255, 0, 255), //viola
  
};
int numColors = sizeof(colors) / sizeof(int32_t); //calcola la variabile numcolors che definisce il numero di colori
int index = 0;

void setup() {
  Serial.begin(9600);
  pixels.begin();
  pixels.setBrightness(128);
  pixels.clear();
  pixels.show();
  Serial.println (numColors);
}

void loop() {
  for (int color = 0; color < numColors; color++) {
    for (int pixel = 0; pixel < NUM_PIXELS; pixel++) {
      index = pixel;
      if (color % 2 != 0) {
        index = NUM_PIXELS - 1 - index;
      }
      pixels.clear();
      pixels.setPixelColor(index, colors[color]);
      pixels.show();
      int ritardo;
      ritardo = random(50,200);
      delay(ritardo);
      Serial.println(ritardo);
    }
  }
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
rgb1:VDD
rgb1:DOUT
rgb1:VSS
rgb1:DIN
rgb2:VDD
rgb2:DOUT
rgb2:VSS
rgb2:DIN
rgb3:VDD
rgb3:DOUT
rgb3:VSS
rgb3:DIN
rgb4:VDD
rgb4:DOUT
rgb4:VSS
rgb4:DIN
rgb5:VDD
rgb5:DOUT
rgb5:VSS
rgb5:DIN
rgb6:VDD
rgb6:DOUT
rgb6:VSS
rgb6:DIN
rgb7:VDD
rgb7:DOUT
rgb7:VSS
rgb7:DIN
rgb8:VDD
rgb8:DOUT
rgb8:VSS
rgb8:DIN