liudr:
You should move your Serial.print strings to PROGMEM.A lazy way is to use the Serial.print(F("ahaqoihio"));
Unless every output string is unique you are duplicating strings in PROGMEM.
I'm going to do that. I learned a lot about strings and RAM in trying to debug this problem.