It turns out the hunting behaviour seen in the previous posts was due to a design decision made quite a while back. The control algorithm has to deal with two things: (1) The difference between the frequencies of the local oscillator and the implied frequency from the 1PPS timing (2) the phase difference between the local oscillator and the implied frequency from the 1PPS timing.
When a deviation is noted, correcting fully for both generates larger changes of control voltage than correcting fully for one and partially for the other. Live testing seemed to give better figures if the phase difference was fully corrected and the frequency difference partially corrected. The full/partial strategy always gets the local oscillator headed in the right direction, it just takes longer to reach an equilibrium than full/full. When dealing with a GPS signal that varies in the short term, the calculation usually has some sort of residual error due to that variation. This is enough so the calculated equilibrium point is different after the next measurement period and the fact that full equilibrium was not reached is irrelevant because the target has moved.
But the LEA-M8T provides a more reliable 1PPS, and maybe the OCXO is the cause of most deviations. Those deviations seem to be jumps in frequency. So when the frequency is not fully compensated but the phase is compensated, the algorithm takes a while to get the phase right, but the partially compensated frequency is wrong so the algorithm overshoots, causing a decaying oscillation in the control voltage. The hunting behavior is explained.
Fully compensating for frequency and partially for phase eliminates the hunting behaviour. Without recourse to a higher precision local standard it is hard to tell if this results in a more stable frequency. So is it worth changing the published program? probably not. The limiting factor appears to be the quality of the oscillator, in this case a cheap second hand OSC5A2B02 which (from the plot below) is ageing markedly. The graph shows a significant jump change in control voltage presumably where something significant happened to the oscillator. Unlikely to be an external event as this setup was undisturbed for several days.
