Serial port is always 1 message behind.

Delta_G:

while(Serial.available() == 0){}

Do you know what that line does? Why do you have it where you do?

Yes, I have it there because without it it constantly loops changing the firerate to 0 because nothing was sent.