         debug2("Failure, content length: ", content_length);
         if (content_length != length) debug2("length: ", length);
         if (content_length != cache.size()) debug2("cache: ", cache.size());
-        systemError();
+        digitalWrite(errorLED, HIGH);
       }
 #endif
     } else {

Bounce bouncer = Bounce(buttonPin, 5); // 5 millisecond debounce

void loop() {
  if (downloadWaiting) {
    bouncer.update();
    if (bouncer.read() == HIGH) {
      printFromDownload();
    }
  } else {
    checkForDownload();
    if (!downloadWaiting) {
      delay(pollingDelay);
    }
  }
}

    if (SD.remove(cacheFilename)) {
      debug("Cleared cache");
    } else {
      debug("Failed to clear cache. Aborting.");
      abortDueToCacheFailure();
      return;
    }
  }
  File cache = SD.open(cacheFilename, FILE_WRITE);
