     currentState = STATE_WINDOW_EXITED;
     changeDisplayBacklight(true);
     Serial.println("Exited window, bypass resistor");
-    shortBeepXTimes(1);
+    shortBeepXTimesNoDelay(1);
   }
 
   passFullCurrentThrough(true);

      break;
   }


  displayToScreen(currentValue);



  return temperatureC;
}


void shortBeepXTimesNoDelay(int times){
  beepsLeft = times;  
}

//We don't use delay from beeps to avoid holding up the controller
void shortBeepRunner(){

  static bool beepCurrentlyOn = false;
  static unsigned long beepChangedTime = 0;

  unsigned long currentTime = millis();

  if(beepsLeft > 0){

    if(beepCurrentlyOn){

      if((currentTime - beepChangedTime) > BUZZER_BEEP_ON_TIME){
          beepChangedTime = currentTime;
          digitalWrite(PIN_BUZZER, LOW);
          beepCurrentlyOn = false;
          beepsLeft--;
      }
      
    } else {

      if((currentTime - beepChangedTime) > BUZZER_BEEP_OFF_TIME){
          beepChangedTime = currentTime;
          digitalWrite(PIN_BUZZER, HIGH);
          beepCurrentlyOn = true;
      }
    }
    
  }
  
  
}

