Because the pseudoranges are calculated from the sampling frequency of the device, any error in this number could result in the numbers being scaled incorrectly.
At a sampling rate of 16Mhz every Hz away from this is about .16 meters of error for a satellite. When sampling at lower frequencies the effect is more dramatic.
I made a short program that would continuously grab samples from the gn3s sampler and then calculate the sampling frequency by taking (total samples collected) / (seconds of run time).
The published sampling frequency for the device was 16.367667 MHz.
My calculated sampling frequency was 16.367407 MHz.
A difference of 260 Hz, or 42.9 Meters of average error per satellite.
PC clock inaccuracies may cause a small amount of error. Approximately 40 minutes of data was used to make a decision. After other error sources have been removed a set of data position distances could be saved and different sampling frequencies could be tested to find one that cause the lowest SSE from the users position.
Before