That was what I was thinking was happening but I also thought each serial port had it's own buffer and one shouldn't interfere with the other. What you're saying, if I understand correctly, is one buffer is reading data and the second buffer basically buts in so it can read it's data stopping the first buffer from completing its read.
I'll leave the LCD.prints where they are, it was more a symptom of my problem. Eventually I'll put the display on the controller and send the latitude and longitude over to monitor the rovers location.
How would I synchronise the servo references that I'm sending to the rover? I assume if I read from serial1 while GPS is updating I would have the same issue, actually I have. Currently I only send them once per second, that prevents the serial writes from over lapping. But on the rover side I want to read them as fast as I can to minimize the response delay.
Thanks for your help. I've been banging my head for a couple of weeks with this.
John