Linrad support: Setup for FM mode
(Feb 3 2010)
The FM modes described on this page are available in Linrad-03.09 and later Linrad versions.

The FM signal

There are two distinctly different forms of FM modulation.

At very low modulation index the FM signal consists of a carrier and two sidebands. It differs from AM modulation in that the two FM sidebands have opposite phases while the two AM sidebands have the same phase. In amateur radio NBFM (narrowband FM) is used in the VHF bands. Sometimes weak FM signals are better received in SSB mode than in FM mode because the frequency swing is low enough for only the two first sidebands to develop. In SSB mode one looses 3 dB by not using both sidebands, but one would gain a factor of about 10/2.4 or about 6 dB because of the much smaller bandwidth in SSB mode compared to FM mode. In Linrad one can set the filter bandwidth to fit the spectrum of the received signal so there should be a loss in using SSB mode for FM. Linrad has a method for synchronous detection that was originally introduced for reception of extremely weak CW signals. The same algorithm is useful for both AM and FM with low modulation index.

At large modulation index there are many sidebands on each side of the carrier and the carrier itself may disappear among all the sidebands, particularly when the modulation signal is a complicated waveform. Synchronous detection is then not possible. Linrad has a conventional phase/frequency detector as well as an improved detector that uses a small FFT to determine the phase from the frequency bin carrying most signal power.

Wideband FM in the 88-108 MHz band.

The user is responsible for setting an appropriate bandwidth. The detected signal becomes distorted in case the bandwidth is set too low. Figure 1 shows the Linrad screen when Linrad receives a marginal FM BC signal using a conventional FM detector. The signal is the file weakfm.wav which is contained in this file: (45809865 bytes) Note that the weak signal is at the passband center in the range 0 to about 30 kHz in the file (correspondig to 250 kHz on the frequency scale of figure 1.) There is also a strong signal at about 200 kHz in the file, (450 kHz on the frequency scale.) The strong signal is about 20 dB stronger than the weak signal.

Fig. 1. The Linrad screen when receiving the weak FM broadcast station in weakfm.wav with a conventional FM detector.
The signal to noise ratio is low. (S+N)/N is only 2 dB so the signal is actually weaker than the noise. As can be seen in figure 1, most of the signal energy falls within a bandwidth of 60 kHz, but the filter bandwidth is set to 80 kHz to reduce distortion. The box with Rat 400 specifies the bandwidth reduction to use on the detected signal. For this very weak signal a bandwidth reduction by a factor of 40 will give an audio passband of about 2 kHz which will optimize S/N for the detected signal.

Listen to the detected signal here: wfm-mode0.mp3 (550272 bytes) Download the raw data file weakfm.wav contained here: (45809865 bytes) and run the file through your SDR software. Compare your results to this file. You should hear the music, recognize the song, but it is hard to hear the words of the singer.

The detection is made by taking atan2(Q,I) point by point on the baseband signal to get phase vs time. Differentiation gives frequency vs time which is the FM detector output which is finally run through a low pass filter.

Figure 2 shows the Linrad screen when the same file is processed with a small FFT as the phase detector. (The source code is in fm.c) This mode FM3 is set by a box in the baseband graph. The FFTs are as follows:

Mode    size 
FM0      - 
FM1      8  
FM2     16
FM3     32
The FFTs use sin squared windows so in FM3 the phase is essentially derived from the phase over 16 points in the baseband signal while using a filter that is 1/16 of the entire baseband bandwidth. There are 32 overlapping such filters and the signal is fetched from the filter that provides the strongest signal.

Fig. 2. The Linrad screen when receiving the weak FM broadcast station in weakfm.wav with a FFT detector of size 32.
Note that the FM3 mode is CPU inefficient. A new transform is computed for every point in the baseband signal and that is not necessary. It should be enough to compute an FFT something like every fourth point since the FFT bins correspond to narrow filters through which the phase (or amplitude) can not change rapidly. By carefully setting the lowest possible baseband sampling rate (that is by the "first mixer bandwidth reduction factor") modern computers should be fast enough to use the inefficient routine without problems. Figure 2 was produced on a Compaq 6510b laptop having a Intel Centrino Duo at 1.8 GHz. The FM detector resides in the Ndsp thread which runs at 55% CPU load.

Listen to the detected signal in FM3 mode here: wfm-mode3.mp3 (550464 bytes) It has clearly a little better S/N but the signal is clearly distorted by the filters being a little too narrow. In FM2 mode the distortion is a little smaller, but S/N is also smaller and this file demonstrates the best detection Linrad currently can provide for the weakfm.wav recording.

Narrowband FM with low frequency swing.

Here is a recording, nbfm.wav, from 144 MHz with an FM signal that is reasonably strong but that is difficult to copy because of the low modulation index. Download and unzip this file: (5816304 bytes)

When running this file in Linrad with the appropriate bandwidth the screen looks like figure 3. The loudspeaker output with the conventional FM detector and without any low pass filter sounds like this: nbfm0-10.mp3 (704640 bytes) With a filter that reduces the bandwidth by a factor of two, (Rat = 20 as in figure 3) the loudspeaker output sounds like this: nbfm0-20.mp3 (704832 bytes)

Fig. 3. The Linrad screen when receiving the NBFM signal in nbfm.wav with a conventional FM detector (FM0) and with a filter that reduces the bandwidth by a factor of two (Rat=20).
The FFT detector does not improve much. In FM2 mode the loudspeaker output sounds like this: nbfm2-10.mp3 (704832 bytes) That is with a 16 point FFT and without any filter.

Linrad also offers the possibillity of using a synchronous detector. The mode is Coh2 and the output is in stereo. The left channel is the AM component and the right channel is the FM component. Listen to the Coh2 mode output here: nbfmcoh2.mp3 (690240 bytes) Use ear-phones or an audio player that allows you to select either the left channel or the right channel.

It is not obvious whether one detection method is better than another for a signal with very low modulation index.

SM 5 BSZ Home page