The PC radio presented on this site needs a PC computer with a Pentium MMX
processor running at 200 MHz or better. (Anything that can handle MMX
instructions is probably ok).
The software is written for a 1024x768 screen with 256 colours and
a soundblaster 16 board.
A serial mouse in COM1 is also required, and - of course -
loudspeakers or head phones.
The program is written for use in a DOS environment. For personal reasons
I do not accept Windows 95, so I do not know if the program works properly
in a DOS window under Windows 95. Under Windows 3.11 the program works
properly in full screen mode on my computer, but the system crashes
completely if I press alt+enter to go into window mode.
All source code is provided, so anyone interested can make modifications
as required (if any) to run under Windows 95.
The radio hardware - a down converter.
With the software running, the computer is a stereo receiver covering the
frequency range 1 to 21 kHz approximately.
The remaining hardware can simply be seen as a converter shifting the
signal frequency down to the frequency region covered by the PC.
As always, when using the superheterodyne principle to shift the frequency
one has to worry about image frequencies.
The common strategy is to use selective filters to remove false responses,
but it is also possible to remove the image frequency by a phasing method.
In case a stereo system is not required, it is very attractive to just use
two frequency mixers with 90 degree phase shift between them directly on
the signal frequency. The two signals then constitute an IQ pair and can
be used directly to produce a complex FFT covering nearly 40kHz.
All filtering needed is then a low pass filter in each channel with
cut off around 20kHz.
With a computer controlled DDS, a 0 to 100MHz receiver is easily designed,
although it is outside the scope of this site.
Rather than feeding the IQ pair to the two channels of the sound board
one can add I and Q after having shifted the phase to allow for a stereo
It is difficult to get a good suppression of the image frequency by
conventional phasing methods.
If the phase between the I and the Q signal could be shifted by
exactly 90 degrees at constant amplitude over the whole
1 to 21 kHz region by some RC network, it would be possible to suppress
one sideband (or the other) by adding the I and Q signals.
I have no practical experience, but I would guess it is difficult to get
more than 20 dB supression unless the frequency coverage is drastically
On 144MHz the minimum attenuation for false signals
is 100dB for a decent receiver. That calls for crystal filters.
At a frequency separation of 10kHz, the noise sidebands of a good
VHF station is 80 to 100 dB below the carrier measured in 3kHz bandwidth.
For examples look at:
Dynamic Range of 2 m Transceivers Part 1
If a local station is 10kHz outside the passband, and at a level when
the noise sidebands just start to degrade the receive sensitivity, the
false signal (image frequency) has to be suppressed very much in order
to not be visible as a false signal in the spectrum display.
The spectrum display works at a bandwidth of 5Hz, and due to averaging
signals are easily seen at S/N = 0dB.
In order to avoid confusion from local signals completely, a stop band
attenuation of more than 130 dB may be needed.
Fig 1 shows a block diagram of the PC receiver.
Some amplifiers are not explicitly shown.
It is assumed that the mixer blocks and the filter blocks contain the
amplifiers required to make the normal noise floor produce an RMS voltage
of about 7 units on the A/D converter input (80 dB below saturation).
Fig 1. Block diagram of the PC receiver for 144MHz.
The preamplifier very close to the antenna, followed by a second
rf amplifier, mixer and crystal filter is just the standard arrangement
used in many transceivers, and design details are available from many
The second mixer is a bit more difficult. It is possible to use a high
level schottky barrier mixer - they work fine for 10MHz, but they are not
quite as linear as one would like.
If there is a strong signal in the pass bant producing say 5kHz audio,
the schottky ring mixer will produce significant signal levels at
10 and 15 kHz also - and they will be received as false signals.
Probably there are analog multipliers that would work more or less perfectly,
but with the simple cirquit shown in fig 2 the performance is good enough for
Fig 2. A MOS switch can be used as a highly linear mixer.
The 74HC4053 needs both +5V and -5V supply, and the low noise TL074CN
needs a +/- 12V supply.
The input transformer is conveniently a toroid with a bifilar winding as
secondary winding. Note that the 10.7MHz IF has to be free of overtones.
Using a MOS switch as frequency mixer works fine, and the linearity is good.
There is one thing to watch out for, and that is that this kind of mixer
also gives a response at odd harmonics.
The local oscillator is a square wave, so it contains a lot of energy
at overtone frequencies.
To avoid them producing false responses, the 10.7MHz signal has to have
the harmonics suppressed by 70dB or so.
Keeping second order intermodulation that low may be difficult,
but a simple band pass filter at 10.7 easily removes any overtones
produced by the amplifier that comes after the crystal filter.
A FM crystal filter for 25kHz channel separation may have a -3dB bandwidth
of 15kHz while the -90dB bandwidth may be 45kHz. If the BFO is placed to
give a 20kHz beat note at the upper 3dB point, the lower 3dB point comes at
For the mirror image to come into the passband at 5kHz, it has to be 10kHz
further down at a point where the attenuation is in the order of 70dB.
The suppression of the image is not quite what one wants - and the anti
aliasing filter required to remove signals above 24kHz has to be very good.
Signals above the passband that produce 24kHz are only 4kHz above the
-3dB point, so most of the attenuation has to be produced by the anti
With two FM crystal filters in series and with adequate screening,
it is possible to get nearly 15kHz bandwidth with reasonable attenuation
of mirror image and aliasing signal just by centering the 15kHz passband
in the 22kHz frequency range sampled by the computer.
The mirror image and the alias signal then both come 7kHz outside the
-6dB point (-3 for a single filter) where the attenuation should be
in the order of 100dB (50 for a single filter).
Extensions to the radio hardware
It is not really difficult to design IF filters with much better performance
than commercial ones (commercial ones have to be cost effective).
The filter I am using for the PC receiver has 26 crystals in each channel
and the -3 dB bandwidth is 20 kHz while the -100 dB bandwidth is 24kHz.
The crystals come from dismanteled commercial FM filters designed for
50kHz channel separation.
These filters are useless (for others) and can be found at low cost at
ham flea markets.
For further details, look here:
High performance IF filter for PC radio.
The PC system has a noise blanker built into the software.
For obvious reasons, the software noise blanker can only remove pulses
that come relatively infrequently.
Car ignition noise is no problem, powerline noise can sometimes
be succesfully removed, sometimes not, depending on the caracteristics of
the particular pulse train.
When a large number of pulses arrive with an average repetition frequency
that is a substantial fraction of the bandwidth, it is not possible to
remove individual pulses - the sum of all pulses will be too close
to white noise.
The software noise blanker can handle the situation only by shutting off
the signal for the duration of the whole pulse train.
In particularly difficult powerline noise situations, the receiver may
become shut off 50% of the time, which will cause a noticeable loss
Electrostatic rain sounds like white noise in a normal receiver, and it
may easily produce noise levels 50 dB above normal.
The 20 kHz bandwidth of the PC receiver is by far not wide enough to
resolve the individual pulses, but at bandwidths above a few hundred
kHz electrostatic rain is often resolved as distinct pulses separated
by "long" quiet periods.
A wideband noise blanker is sometimes extremely useful, it can
reduce the noise level from S9+ down to near normal without loss of signal.
It is a good idea to insert a wideband noise blanker in front of the
If the antenna has a narrow bandwidth, the noise blanker is conveniently
placed at the IF frequency where it is easy to get bandwidths up to a
If the antenna has a very high bandwidth, many MHz, it is easier to
place the wide band noise blanker directly at the signal frequency.
Look here for more information about noise blankers:
To SM 5 BSZ Main Page