         return hourColor;
 }
 
+void regenerateColors()
+{
+    zeroColor = strip.Color(BaseBrightness * 0.25 * brightness, BaseBrightness * 0.25 * brightness, BaseBrightness * 0.25 * brightness);
+    quarterDayColor = strip.Color(0.36 * BaseBrightness * brightness, HighlightBrightness * brightness, 0.36 * BaseBrightness * brightness);
+    hourColor = strip.Color(0, BaseBrightness * brightness, 0);
+    hourAnimationColor = strip.Color(0, HighlightBrightness * brightness, 0);
+    minuteColor = strip.Color(0, 0, BaseBrightness * brightness);
+    minuteAnimationColor = strip.Color(0, BaseBrightness * brightness, HighlightBrightness * brightness);
+    quarterHourColor = minuteAnimationColor;
+    fiveMinuteColor = strip.Color(0, BaseBrightness * 0.5 * brightness, HighlightBrightness * 0.5 * brightness);
+    secondColor = strip.Color(BaseBrightness * brightness, 0, 0);
+}
 
 void setupLEDs()
 {
     strip.begin();
     strip.show();
     
-    zeroColor = strip.Color(BaseBrightness * 0.25, BaseBrightness * 0.25, BaseBrightness * 0.25);
-    quarterDayColor = strip.Color(0.36 * BaseBrightness, HighlightBrightness, 0.36 * BaseBrightness);
-    hourColor = strip.Color(0, BaseBrightness, 0);
-    hourAnimationColor = strip.Color(0, HighlightBrightness, 0);
-    minuteColor = strip.Color(0, 0, BaseBrightness);
-    minuteAnimationColor = strip.Color(0, BaseBrightness, HighlightBrightness);
-    quarterHourColor = minuteAnimationColor;
-    fiveMinuteColor = strip.Color(0, BaseBrightness * 0.5, HighlightBrightness * 0.5);
-    secondColor = strip.Color(BaseBrightness, 0, 0);
+    pinMode(A0, INPUT);
+    
+    regenerateColors();
 
     Flash::neoPixels = &strip;
 }

int8_t minuteAnimationDirection = 1;
float minuteAnimationTimer = 0;

float hourAnimationTimer = 0;

std::vector<Animation*> animations;

        char time[9];
        snprintf(time, 9, "%02d:%02d:%02d", now.hour(), now.minute(), now.second());
        
//        char date[11];
//        snprintf(date, 11, "%02d.%02d.%04d", now.day(), now.month(), now.year());
        
        char brightnessString[5];
        brightnessString[3] = ' ';
        brightnessString[4] = '\0';
        
        snprintf(brightnessString, 5, "%d%%", ((int)(brightness * 100.0f)));
        
        lcd.setCursor(0,0);
        lcd.print(time);
        lcd.setCursor(0,1);
        lcd.print(brightnessString);
        lcd.print("   ");
        
        char ms[6];
        snprintf(ms, 6, "%dms", timeSinceLastTick);
