Remix.run Logo
tw1984 14 hours ago

some ideas -

1. using a second hand single frequency Ublox LEA-M8T GNSS receiver is not a good idea in 2025 when a dual frequency GNSS receiver chip can be purchased online for as little as $20-30. buy one of those ublox ZED-F9P receivers with the 2018/2019 firmware, they get you the exact same timing performance as ZED-F9T with QEerr support. PPS jitter is going to drop from 20ns to less than 2ns after qErr compensation.

2. you can replace that highly unstable crystal oscillator with a $10 used OCXO + $20 PLL board and save that PID temperature controller to be used as the secondary oven for that OCXO. people have been doing that for Raspberry Pi for ages.

3. or you can configure your GNSS receiver to output a 10Hz signal from the PPSOUT pin so chrony can get 10 updates per second, GNSS receiver's internal TCXO is going to be more stable than raspberry Pi's crystal oscillator.

4. for more fun - just keep measuring the frequency drift vs. temperature change. a sample set of 24-48 hours of such measurements should be enough to figure out the tempco of that unstable crystal oscillator so you can get chrony to do the drift compensation. from memory, chrony supports such a temperature compensation lookup table to be specified.

good luck and have fun

auspiv 10 hours ago | parent [-]

1 - I like to consider myself an expert eBay-er (my ebay account can legally buy alcohol in the US, and I am myself only 36 years old) but I have not found any ZED-F9P for less than $90 ish. I am aware of the Quactel (sp) modules, and am considering a set for some RTK experiments. Is that what you're referring to?

2 - I've thought about replacing with ocxo but the pads are tiny. My soldering skills aren't nearly as good as my ebaying skills.

3 - it is outputting 16 Hz, chrony is doing dpoll -4 poll 4.

4 - I have done tempcomp (it is not active for the post referenced by this HN post). Fun stuff and probably my next writeup.