HW Serial - i2C timing issue; (was: I2C and serial input to serial output)

  while (imu->IMURead()) {

Does that function ever return false?

    if (++loopCount >= 10)
      continue;

Explain this. I would never do something like this, so I don't understand why you do.