High frequency counting for FM band radio?

I was curious if there would be any good way to do a frequency counter on FM radio? I wanted to set it up so that I could have a display show the frequency the radio is currently set at, without using a digital radio module. Is there any way to achieve this? Is there a frequency counter that could handle that high of a frequency that could pass the value to the arduino, possibly at a timed interval, or that maybe would just count the frequency then pass a signal along when the counter overflows? I'm just trying to figure out a good approach for this.

FM of around 100Mhz is way beyond the Arduino.


External high speed counter controlled by Arduino. # of bits needed determined by how short a time period arduino can 'gate' the counter for.
For example, if you could enable a counter for 4uS, a 100MHz signal would result in a count of 400, so a 10-bit counter would likely be the best bit. Or 16-bit using 2 8-bit counters.
You'd have to use high frequency capable parts, like 74F series, like 74F377

What are you going to measure from the FM radio to get the frequency?

Most VHF radios are digital single chip devices that are purely RF in and Audio out, with some form of input control and an output to a digital display.

Tom...... :slight_smile:

The days of measuring local oscillator frequencies are gone.

When you receive a frequency of 100MHz on an FM radio there is no 100MHz signal to measure.

There is a local oscillator that beats with the incoming signal to give you some intermediate frequency known as the IF. This could be 10.6MHz or some other frequency. So if you measure the local oscillator you need to what offset this is with regards to the received frequency and then make adjustments to any frequency value measured before you display it.

turtletechy wrote:

Is there a frequency counter that could handle that high of a frequency that could pass the value to the arduino

I'm sure there are frequency counters that have an interface that will allow you to communicate to a connected Arduino, though it's been years since I had my hand in RF work.

I would suggest searching for something with I2C, I'm sure Phillips would have made many such chips which may be still available.

But exactly as Grumpy_Mike explains, if you wanted to measure the frequency of an RF signal at around 100Mhz, you would typically use discrete chips, as in a hardware frequency counter type design which will usually have a prescaler chip or pass it through a mixer stage to get an IF at a lower frequency which you can process further in other ways.

Remember FM is not a constant carrier frequency like some other forms of modulation, it will deviate around the carrier frequency by the amount of modulation, or factor of, which will constantly be changing, hence why it is called frequency modulation.

Paul (ex VK7KPA)