Reading and using data from sd

Here is the business portion of the code containing the only sd read call.

I hardly think so.

    while (myFile.available()) {
      interval = myFile.read();
    }

What exactly is in this file? What you are doing here is reading and throwing away all but the last character in the file, which might be a carriage return or line feed.

  SYNC_INTERVAL = interval * 10000;

Then, you are pretending that the last character read from the file is an integer value, which it is, but not in the way that you think. If the file does not contain any carriage return or line feed after the value (unlikely), and contains only the single character '3', then the value in interval will be 51 (the ASCII code for '3'), which will certainly not give you the SYNC_INTERVAL you are expecting.

    	Serial.write(myFile.read());

You know that you've read the last value from the file (or the while loop would not have ended), so now you read one more. I wonder why more people don't do this?