     speedBucket(currentTime, mph);
     lastVelocity = mph;
     lastTime = currentTime;
-
+  }
+
+  
+  if(loopCounter % DISPLAY_REFRESH_TIME == 0)
+  {
     reportValues();
   }
-
-
-
-  loopCounter++;
+  
   // wait to log another item
   delay(SECONDS_BETWEEN_READS * 1000);
+  loopCounter++;
 }
 
 /**

void reportValues()
{
  Serial.println("============================================================");
  report("Speed < 30 Seconds", trip.speedBucket[0]); 
  report("Speed 30-45 Seconds", trip.speedBucket[1]); 
  report("Speed 45-55 Seconds", trip.speedBucket[2]); 
  report("Speed 55+ Seconds", trip.speedBucket[3]); 
  report("#Stops", trip.stopCount);
  report("Time (s)", trip.tripTime);
  report("Miles", trip.totalMileage);
  report("Seconds > 80mph", trip.over80Seconds);
  report("# Hard Brakes", trip.hardBrakeCount);
  report("# Hard Accel", trip.hardAccelCount);  
}


#include <EEPROM.h>
#include "EEPROMAnything.h"


// 1 - obdii monitor, 2 - Serial input, 3 - random()
#define VELOCITY_SOURCE 3

#if VELOCITY_SOURCE == 1
#define VELOCITY_OBDII
#elif VELOCITY_SOURCE == 2
#define VELOCITY_SERIAL
#else
#define VELOCITY_RANDOM
#endif

// STRUCTURES

struct Trip{
  int tripTime;
