   }
 }
 
-void show_strip() {
-  strip.show();
+void reseedRandom(){
+    randomSeed(analogRead(0));
 }
 
 TimedAction ta_updateTwinkle = TimedAction(10, updateTwinkle);
-TimedAction ta_showStrip = TimedAction(1, show_strip);
 TimedAction ta_updateRainbow = TimedAction(10, updateRainbow);
 TimedAction ta_updateTwinkleLocation = TimedAction(1000, updateTwinkleLocation);
+TimedAction ta_reseedRandom = TimedAction(10000, reseedRandom);
 
 
 void setup() {
-
   strip.begin();
   strip.clear();
   strip.show(); // Initialize all pixels to 'off'
 
   randomSeed(analogRead(0));
 
-  twinkles[0][0] = random(0,NUM_PIXELS - 3);
-  twinkles[0][2] = 1;
-  twinkles[0][3] = 1;
+   for(uint8_t i=0; i < NUM_TWINKLES; i++){
+    twinkles[i][0] = random(0,NUM_PIXELS - 3);
+    twinkles[i][2] = random(0,255);
+    twinkles[i][3] = 1;
+   }
 }
 
 




uint8_t twinkles [3][4];
uint16_t first_color;
int counter = 0;



#define PIN 7
#define NUM_PIXELS 300
#define NUM_TWINKLES 4
// Parameter 1 = number of pixels in strip
// Parameter 2 = Arduino pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
