 }
 
 void setup() { 
-  Serial.begin(115200);  // open serial connection to USB Serial 
+  //Serial.begin(115200);  // open serial connection to USB Serial 
                          //port(connected to your computer)
   Serial1.begin(57600);  // open internal serial connection to 
                          //MT7688

#define BLINK_ON 1
#define BREATHE_ON 2

void push_color(rgb_color color, bool display = false){
  for(int i = MAX_LED - 1; i >= 1; i--){
    colors[i] = colors[i-1];
    states[i] = states[i-1];
  }
  colors[0] = color;
  states[0] = NO_STATE;

  if(display){
    ledStrip.write(colors, LED_COUNT); 
  }
}

#define MAX_BLINK 6667
int blink_counter = 0;
bool blink_state = true; // false means blank

void start_blinking(){
  states[0] = BLINK_ON;
}

#define BREATHE_TIME 500

  push_color(random_color());
}

int do_mirror(){
  for(int i = 0; i < LED_COUNT / 2; i++){
    colors[LED_COUNT - i - 1] = colors[i];
    effects[LED_COUNT - i - 1] = effects[i];
  }
}

void setup_buffer(){
  for(int i = 0; i < LED_COUNT; i++){
    if(effects[i] == BLINK_ON){
      if(blink_state){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_1){
      if(blink_state_1){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_2){
      if(blink_state_2){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_3){
      if(blink_state_3){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_4){
      if(blink_state_4){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_5){
      if(blink_state_5){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BLINK_ON_6){
      if(blink_state_6){
        render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE); 
      } else {
        render[i] = scale_color(colors[i], MINIMUM_BRIGHTNESS_SCALE);
      }
    } else if(effects[i] == BREATHE_ON){
      render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE * breathe_steps[BREATHE_MAX_STEP - breathe_step]);
    } else if(effects[i] == STATIC_ON){
      render[i] = random_color();
    } else {
      render[i] = scale_color(colors[i], DEFAULT_BRIGHTNESS_SCALE);
    }
