       }
     }
   } else { // Not currently blinking...check buttons!
-    if(digitalRead(BLINK_PIN) == LOW) {
+    //if(digitalRead(BLINK_PIN) == LOW) {
+    if(force_blink) {
       // Manually-initiated blinks have random durations like auto-blink
       uint32_t blinkDuration = random(36000, 72000);
       for(uint8_t e=0; e<NUM_EYES; e++) {

    }
    timeToNextBlink = blinkDuration * 3 + random(4000000);
  }
#endif

  if(eye[eyeIndex].blink.state) { // Eye currently blinking?
    // Check if current blink state time has elapsed
    if((t - eye[eyeIndex].blink.startTime) >= eye[eyeIndex].blink.duration) {
      // Yes -- increment blink state, unless...
      if((eye[eyeIndex].blink.state == ENBLINK) &&  // Enblinking and...
        ((digitalRead(BLINK_PIN) == LOW) ||         // blink or wink held...
          digitalRead(eye[eyeIndex].blink.pin) == LOW)) {
        // Don't advance state yet -- eye is held closed instead
      } else { // No buttons, or other state...
        if(++eye[eyeIndex].blink.state > DEBLINK) { // Deblinking finished?
          eye[eyeIndex].blink.state = NOBLINK;      // No longer blinking

    Serial.println(serial_in);
    Serial.flush();
    if(serial_in.startsWith("iris")){
      a2_value = serial_in.substring(4).toInt();
    }
    else if(serial_in.startsWith("joyx")){
      a0_value = serial_in.substring(4).toInt();
    }
    else if(serial_in.startsWith("joyy")){
      a1_value = serial_in.substring(4).toInt();
    }
    else if(serial_in.startsWith("auto_eyes")){
      auto_eyes = true;
    }
    else if(serial_in.startsWith("joy_eyes")){
      auto_eyes = false;
    }
    else if(serial_in.startsWith("auto_blink")){
      auto_blink=true;
      force_blink=false;
    }
    else if(serial_in.startsWith("blinkR")){
      blinkR = true;
      auto_blink=false;
    }
    else if(serial_in.startsWith("blinkL")){
      blinkL = true;
      auto_blink=false;
    }
    else if(serial_in.startsWith("blink") && !blinkL && !blinkR){
      force_blink=true;
      auto_blink=false;
    }
    else{
      Serial.println("no cmd found");
