I suspect this line will not compile
if( (msgNr ==0) || (printDone == true) && (k<10) ) {
I am always wary of complex IF statements - especially mixing and and or
I can't get away from the feeling that yours is a problem of thinking rather than programming. I'm still not at all clear how the relationship between your Arduino and the other device should be managed.
I don't know if you have said what is the device that is sending the data. Post a link to its datasheet or user manual where the interface is defined.
...R