 
     //requestDisplayTime = true;
 
+    checkDisplayCondition();
+
     checkOpenCondition();
 }
 
+void checkDisplayCondition() {
+    // Only check to turn off the display when the display is currently on
+    if (displayState == 1) {
+        displayTimerCounter++;
+        Serial.println(displayTimerCounter);
+        if (displayTimerCounter > 20) {
+            displayTimerCounter = 0;
+            displayState = 0;
+            lcd.setColorAll();
+            lcd.noDisplay();
+            Serial.println("should turn off display now");
+        }
+    }
+}
+
 void displayTime() {
+    if (!displayState) {
+        return;
+    }
+
     if (!requestDisplayConfigurationTime) {
         if (requestDisplayTime) {
             if (!isLCDBusy) {
+
                 isLCDBusy = true;
                 lcd.setCursor(0,0);
                 lcd.print("          ");


int configureTime(String time)
{
    // Declare the variables of the parts of the String
    String hourString, minuteString;
    int hour, minute;


    // Setup the lcd
    lcd.begin(16, 2); // Set up the LCD's number of columns and rows.
    //lcd.setRGB(100, 100, 100); // Set up background backlight color.
    displayState = 1;

    // Setup timezone
    Time.zone(+2.00);
