If I am not wrong, this could be due to an option (I believe it is called "Static navigation") which is enabled in the SIRF III. It's purpose is mainly for automotive use and basically disables position updates when the speed is lower than a certain value (which I seem to remember being around 4.5 km/hr). You should disable this function (I do not know which linux software allows you to do it... I have never used a sirf III with linux).
Cheers,
diber