are you using interrupts for that timer?

Because an interrupt will interrupt serin2 in the middle of whatever it is doing at the time and you will lose data.