Estimation of the contribution of the frontend to the total noise figure

In a radio receiver composed of two stages, the total noise factor \(F\) can be computed using Friis’s formula as\[F = F_1 + \frac{F_2 – 1}{G_1},\]where \(F_1\) is the noise factor of the first block, \(G_1\) is the gain of the first stage and \(F_2\) is the noise factor of the second stage. If \(G_1\) is large enough, then the contribution of the second factor is small and the total noise factor of the whole system is essentially the same as the noise factor of the first stage. This is the reason why a low noise amplifier is useful as a frontend, because it has a low noise factor \(F_1\) and high gain \(G_1\).

If \(F_2\) and \(G_1\) are known (perhaps only approximately), then it is easy to check if the contribution of the frontend to the total noise figure is large enough so that the total noise figure is determined by the noise figure such frontend alone. However, it may happen that one or both of \(F_2\) and \(G_1\) are not known. In email communication, Leif Åsbrink mentioned that there is an easy way of checking the contribution of the frontend without knowing these parameters. The method is to switch off the frontend and note the drop in the noise floor. He gave the following estimates: if the noise floor drops by more than 10dB, then the total noise figure is the same as the noise figure of the frontend up to 1dB; if the noise floor drops by more than 17dB, then the total noise figure is the same as the noise figure of the frontend up to 0.1dB. Here I present the maths behind these kind of estimates.

Building the G0MRF comb generator

A comb generator is essentially an RF oscillator whose output is amplified in a non-linear fashion, so that plenty of harmonics are produced. This is an easy way of producing microwave signals. The G0MRF comb generator was originally designed as a 2.4GHz signal source, to help in the alignment of receivers for the amateur radio satellite S-band. It has a 96.013MHz crystal oscillator, so its 25th harmonic falls at 2400.325MHz, right in the satellite allocation of the 13cm amateur band. Its harmonics are usable up to at least 10GHz, so this can be an useful tool when working with microwave equipment.

In fact, several other harmonics fall on the amateur bands: The 13th harmonic is 1248.169MHz. This is inside the 23cm amateur band, but quite far from the narrow-band segment, which is at 1296MHz. The 24th harmonic is 2304.312MHz. This falls inside the 13cm band. Indeed, 2302MHz is used for EME in some parts of the world. The 36th harmonic is 3456.468MHz, in the 9cm band, but far from the narrow-band segment. The 59th harmonic is 5664.767MHz, in the 6cm band. This is in the satellite uplink segment and quite near the first narrow-band segment, which is at 5668MHz. The 60th harmonic is 5760.780MHz, right in the second narrow-band segment of the 6cm band. The 105th-109th harmonics all fall in the 3cm band. In particular, the 108th harmonic is 10369.404MHz, which is in the narrow-band segment of the 3cm band.

This is a nice kit which is quite easy to build. Most of the components are through-hole, and it can be put together fairly quickly. I built my kit during the Christmas holidays, but I’ve had the PCB lying around until I installed it in a project box yesterday. Here I describe the kit briefly and show the extruded aluminium case I’ve used.

Band switching with the Hardrock-50 HF amplifier and the FT-817

The Hardrock-50 HF is a very nice kit for a 50W amateur HF amplifier covering the 160m through 6m bands. It supports interfacing with the FT-817. With the proper cable, the amplifier can be connected to the ACC jack on the FT-817 in order to do PTT keying and read the BAND DATA signal from the FT-817 to select the proper band in the amplifier’s low pass filter automatically. The connections required are shown in the Hardrock-50 Tech Site. Yesterday, I prepared the cable to interface my amplifier to my FT-817ND. However, I have found a problem in my amplifier that prevents automatic band switching from working properly. Apparently, this problem has been fixed in the newest units and can be fixed with an easy modification in the units which are affected.

Testing microphone performance for Codec 2

Codec 2 is the open source and patent-free voice codec used in FreeDV, a digital voice mode used in amateur radio. Since Codec 2 is designed to be used at very low bitrates (the current version of FreeDV uses 1300bps and 700bps), it does an adequate job at encoding voice, but can’t encode well other types of sounds, and thus fails poorly in the presence of noise. Hence, microphones which may be good enough for other applications can give poor results when used for FreeDV (if, for instance, they pick up too much ambient noise or have too much echo). This is a small note about how to test the microphone performance for Codec 2.

Using Linrad as a panadapter

Recently, I installed a G4HUP PAT on my FT-817ND. This is a small board which allows one to tap the IF of a conventional radio receiver to use an SDR as a panadapter (essentially, a waterfall display which shows a chunk of spectrum about the frequency tuned on the receiver). In the previous post I described the installation of the hardware. Here I will describe how I’ve set up Linrad to suit my preferences. One interesting aspect of this set up is that I’ve ended up adding a bit of code in Linrad to make it read the dial frequency of the radio using CAT and make Linrad track the frequency as one tunes around in the radio.

Installing the G4HUP PAT on the FT-817

Today I’ve been installing the G4HUP PAT kit on my FT-817ND transceiver. This kit is essentially a buffer amplifier that allows one to tap the IF of a transceiver, in order to send it to an SDR. Then, the SDR can be used as a panadapter. This kit is intended as an entry level SMD project and it can be fitted to many popular amateur radio transceivers. In fact, this has been my first SMD project, and I have found it quite easy to solder using the right tools and technique.

Updating Gpredict transponder files

Gpredict stores the information for the satellite transponders in plain text files, one file per satellite. These files are called .trsp files. The files shipped with the stable version tend to become outdated pretty soon, as new satellites are launched. However, the project’s git repository is usually up to date.

The following shell script will download the files from git and install the .trsp files in Gpredict’s config path in the user’s home folder. This can be used in Linux and probably other Unix-like operating systems. Something similar can also be done in Windows.

This is just an easy and temporary workaround to keep the transponder files updated, as Alexandru OZ9AEC, who is Gpredict’s author, thinks of perhaps using an online database as a long-term solution.

Doppler correction with GNURadio

When receiving signals from a satellite, it can be important to correct for the Doppler shift in the signal. Normally, I use Gpredict to track satellites and compute the Doppler shift. Gpredict can control the frequency of a receiver using Hamlib to track the Doppler shift. When using an SDR receiver, there are several possible ways of using Gpredict’s frequency control.

Normally, the SDR software doesn’t support Hamlib control in a way that it’s useful and easy to use for this purpose. This is the case with Linrad, which is the software I use, and probably with many other popular SDR softwares. An easy solution is to let Gpredict completely control the frequency of the SDR receiver through Hamlib and prevent the SDR software from controlling the frequency. With the FUNCube Dongle Pro+, which is the receiver I normally use, this is easy to do. It can be controlled without problem with recent versions of Hamlib, and if you set the dongle in Linrad as an “Undefined” card instead of a FUNCube Dongle, then Linrad will not try to control its frequency.

The problem with this solution is that each time that the frequency gets updated, it does so in a non phase continuous manner, because the PLL of the receiver has to lock on to the new frequency, effectively losing reception for just a tiny amount of time. This supposes no problem for SSB, CW or FM reception, because your ears just don’t notice. However, if you want to receive any digital signal or SSTV, the frequency change usually messes with the decoder software, which loses sync and suffers decoding problems. An alternative solution is to leave the receiver frequency fixed and correct for Doppler shift in software.

LilacSat-2 downlink signal strength

In a previous post, I recorded and decoded LilacSat-2 telemetry. This satellite transmits telemetry on 437.200MHz and 437.225MHz using two different radios and antennas, as can be seen in the radio info page. The transmission on 437.200MHz is usually 9k6 BPSK telemetry, but this is the same frequency, radio and antenna that is used for the amateur FM transponder when it is active. Looking at the waterfall as I recorded the IQ, I had the impression that the signal on 437.200MHz was much weaker than the signal on 437.225MHz. Using my LilacSat-2 receiver and the IQ recording I did, I have plotted the signal strength on both frequencies to compare.

LilacSat-2 GNUradio receiver

I have made my own LilacSat-2 telemetry GNUradio receiver using the flowgraphs included in gr-lilacsat. The new features of this receiver are the following:

  • All the decoders and the frontend are run on the same flowgraph. I find this more practical than having to run all the flowgraphs separately. Also, some blocks can be reused in this way.
  • It uses gr-gpredict-doppler to compensate for Doppler. As I mentioned in a previous post, I prefer this to the Doppler correcting system included in gr-lilacsat.
  • It plots and outputs to a file the signal strength on 437.200MHz and 437.225MHz. This can be used for later analysis.
  • It supports recording file input, or live SDR using an ALSA source (for the FUNCube Dongle Pro+, for instance). Another SDR supported by GNUradio can be easily used.
  • It supports recording both the raw IQ data and the Doppler corrected IQ data. The raw IQ file can be then played back by simultaneously running Gpredict with the correct settings for the recorded pass. The Doppler corrected IQ file can be played back without running Gpredict.

This receiver can be downloaded from GitHub. The flowgraph is a bit crammed, but that’s what you get for having all the decoders in the same flowgraph. Several of the input/output blocks are disabled, so that you can choose which ones to use.