I use many BU-353's (sirf iii) as time source, in their out of the box mode, at fixed locations, each one for a different computer, but I have several problems :
1) I use the time and date from the GPRMC message, and relate it to the timestamp of the '$' character in the previous GPGGA message, which has the same time information, using a program in the highest priority on my linux boxes. Is that the right way to do ?
2) I have noticed that the messages do not come regularly every second; they are frequently delayed, and sometimes are even delayed by many seconds.
3) When I take only the time given by the gps receiver for messages that came "in time", and compare it to a stable ntp source, I notice that the difference decreases over time, and then is reset to an initial value, then decreases over time with the same slope, then is reset to the same initial value and so on, giving a sawteeth graph, with a quasi-constant period. Each gps receiver exhibits the same behaviour, but with a different period. The time jump at the reset seems to be the same for all gps receivers: about 100 ms.
What can I do, without changing the hardware, to get a better time accuracy and stability ?
Thanks in advance