Data logger for oscillator stabilty check

I have a Uno and a data logger shield. Does anyone know of a sketch that would allow me to log the the frequency of a radio frequency oscillator in order to check its stablity over a period.
Don m5aky

What's the frequency of the oscillator?

100kHz to 30MHz is the range in which I am interested if that is achievable.
The oscillator would be set to a frequency within this range and monitored to see how far it drifted over time.
Don m5aky

More than a few MHz seems unlikely on a 16MHz or less Uno unless you divide the frequency before measuring.

A few MHz would do for a start.
Unfortunately I am not skilled at writing sketches myself from scratch.

A frequency counter sketch is discussed in this excellent tutorial: Gammon Forum : Electronics : Microprocessors : Timers and counters

Unfortunately I am not skilled at writing sketches myself from scratch

Straightforward to fix, if you work through the examples that come with the Arduino IDE. Countless tutorials on line, too.

It is extremely unlikely that you will find code that does exactly what you want, so if you want to complete this project yourself, you will need to learn the language at some point.

Thanks for the link.

All frequency checking relies on a comparison to some other frequency stability, AKA standard. What are you using for your standard?


In this case the reference is the Arduino.
The link you provided does more or less what I want but without the datalogger shield.
It measures the frequency every second or so and sends it to the serial monitor every second.
All i have to do is change the delay to record at more convenient intervals. Say every minute.
Although I can't write code from scratch I have enough skill to modify them
Many thanks for the help folks.
Don m5aky
Bristol UK

Since your project is not particularly rigid relating to frequency stability, may I suggest you use a standard short wave receiver with a BFO and a CW or voice mode to receive the test signal. The receiver audio output frequency when listening to the oscillator will give you an easy signal for the Arduino to measure.

Hi Paul.
Thanks for the advice.
The frequency I wish to measure is the vfo of a KW 2000A transceiver made in the 1960s. Very similar spec but not quite up to the standard of the Collins KWM2/A
I only have to go on the air to appreciate the drift.
The idea of monitoring the frequency is to see if my repairs or modifications have improved things. I can read the frequency on a frequency counter but I wanted to monitor it over a period.
Of course I could buy an Icom IC7300 but where's the fun in that... :grinning:
Don m5aky
The Arduino is telling me that the VFO has drifted from 2600Kc/s down to 2599.980

Not bad stability for a tube device. Are you going to attempt to control the drift or just live with it?
The closest I ever came to a Collins radio was a set of Eldeco transmitter/receivers. They worked pretty well, but were a constant repair project. I got them free and the went away the same way!
I currently use an Icom 7100 on HF, VHF, and UHF. You can tell it's drift on 2-meter FT8.
good luck and 73, KD7HB

I do have a Huff n Puff stabiliser called an X-lock that I could fit but after replacing some out of tolerance resistors it looks like it will be stable enough as an old rig after it's warmed up.
I've changed the delay on the timer sketch to 15 seconds so I'll monitor it again today.

The Uno these days doesn't have a quartz crystal for the processor so its impossible to use it as an accurate frequency meter or even a clock as the ceramic resonator on the Uno has a basic accuracy of 0.5% or something like that (5000ppm), so using it is also measuring the drift and stability of the ceramic resonator!

Have you thought of videoing the frequency counter and then fast-forwarding the video and plotting the frequency every 10 minutes from that? Or better still a camera with a time-lapse function could record the freq meter at regular intervals directly?

Does the frequency counter have a serial connection even?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.