       return;  // we can fail to parse a sentence in which case we should just wait for another
 
     // Sentence parsed! 
-    Serial.println("OK");
+    Serial.println("GPS parsed OK");
     if (LOG_FIXONLY && !GPS.fix) {
       Serial.print("No Fix");
       return;
     }
 
-    // Rad. lets log it!
-    Serial.println("Log");
-      
+    // Super. log it!
+    Serial.println("Log: start");
+    //Time  
     logfile.print(GPS.hour, DEC);
     logfile.print(':');
     logfile.print(GPS.minute, DEC);

  }
}

void loop() {
  if (! usingInterrupt) {
    // read data from the GPS in the 'main loop'
    char c = GPS.read();
    // if you want to debug, this is a good time to do it!
    if (GPSECHO)
      if (c) Serial.print(c);
  }
  
  // if a sentence is received, we can check the checksum, parse it...

  char c = GPS.read();
  // if you want to debug, this is a good time to do it!
  #ifdef UDR0
  if (GPSECHO)
  if (c) UDR0 = c;  
      // writing direct to UDR0 is much much faster than Serial.print 
      // but only one character can be written at a time. 
      #endif
    }

    void useInterrupt(boolean v) {
      if (v) {
    // Timer0 is already used for millis() - we'll just interrupt somewhere
    // in the middle and call the "Compare A" function above
    OCR0A = 0xAF;
