Nothern Utah WebSDR Logo - A skep with a Yagi Northern Utah WebSDR
Receiving equipment
RTL-SDR "wideband" receivers

RTL-SDR dongles:

The "other" receivers - those that are not considered to be "high performance" - use the so-called RTL-SDR dongles.  These USB dongles are ubiquitous and versatile:  They can cover (more or less) from a few hundred kHz to over 1.3 GHz using various on-device signal paths - but all of these signal paths have in common one important limitation - The A/D converter is only 8 bits.  Despite these limitations, they are attractive because they are cheap - from $4 for the "bottom end" and cheapest devices (which are far noisier than they could be) to over $50 for units with frequency converters and a few other bells and whistles - including band-pass filters.  The devices that we are using are just $20 and are the RTL-SDR dongles sold by "RTL-SDR Blog":  These units have thoughtfully-designed circuit boards that minimize extraneous, spurious responses and include 1ppm TCXOs for decent frequency stability as well as providing separate signal branches for "direct" and "quadrature" signal paths - but more on that later.

Figure 1:
A typical "" USB-based receiver - one of the better, "cheaper" options out there.
This unit has been programmed and marked with its own, unique (to the system) serial number.
Click on the image for a larger version.
RTL-SDR Blog USB receiver, used for HF through UHF

Ideally, the maximum range represented by an 8 bit A/D converter is around 48dB - and this is approximately what can be expected from these devices, but as with most things in the real world, the actual answer to the question of "what is the dynamic range" is more complicated.  In reality, noise considerations of the device reduce the number of usable A/D bits and thus the dynamic range, this noise coming from the device itself and other devices in the signal path.  When used "on air" their effective dynamic range can often "seem" to be greater than the 40-50dB that one might expect, and this can be due to several factors:
Even with all of these effects, their useful range is quite limited which means that if there are both very strong and weak signals being digitized by the dongle's A/D converter, you are faced with a choice:  Decrease the gain to prevent the strong signals from badly overloading it or increase the gain to allow reception of the weaker signals, but suffer the effects when strong signals appear.  If one uses these dongles it is imperative that one avoid slapping it on an antenna, but include in the signal path a band-pass filter that limits the signals getting into it to those frequencies around the range of interest.  In the case of a WebSDR we do this because we set up a receiver to cover a specific range and it never needs to be tuned anywhere else.

The two signal paths within the dongles:

The RTL-SDR blog dongles that we are using have two entirely separate signal paths, depending on their application:
Some RTL-SDR dongles include a frequency up-converter that takes the HF frequency range and presents it to the dongle in the 125-155 MHz range, but the RTL-SDR dongles that we are using do not have this feature, so we are using the "direct" branch which has certain frequency limitations due to the 28.8 MHz sample rate.  As noted earlier, the Nyquist frequency - the maximum frequency where we can faithfully digitize the input signal - is 14.4 MHz and this means that we can use it to directly "receive" bands up to 30 meters:  20 meters is problematic because the top end of this band - 14.35 MHz - is only 50 kHz away from the 14.4 MHz Nyquist frequency and making a practical filter to remove the images at 14.45 MHz and above that would appear in the 20 meter band is very difficult to do!

At lower frequencies, such as the AM broadcast band, we can receive signals directly - but the problem of dynamics rears its head again:  If one is located near an AM broadcast band transmitter - or near a metro area where there are several of these transmitters - the signals from these AM stations can vary over 60dB, from the weak "nearby" stations to the very strongest - a range entirely outside the capability of the dongle itself unless certain heroic measures are taken.  (For an article on this, see reference #7, below.)    This article describes a means of attenuating signals within the AM broadcast band - with additional "notching" of the strongest signals - while preserving sensitivity on the adjacent 160 meter band, generally keeping all signals within the usable dynamic range of the RTL-SDR dongle.

At higher frequencies, things are a bit easier to manage in that one simply constructs a band-pass filter for the frequency range of interest.  Using a filter design program like Elsie (link) which has a free (limited)"student" version, one can input the desired center frequency and bandwidth to yield simple - but adequate - designs that can be realized using standard-value capacitors and easily-wound toroidal inductors.  Alternatively, you can get band-pass filter kits from QRP Labs (or simply "borrow" their published designs) that can be easily adapted to nearly any HF frequency range.  In this case it is useful to precede the RTL-SDR dongle with a bit of excess gain and provide an attenuator (typically post-filter) that can be adjusted to find the "sweet spot" where the probability of overload from strong shortwave broadcast stations is minimized and weak signals can (usually) be heard.  This method is used for 60-49 Meter, 31-30 Meter, 25 Meter and 19 Meter coverage on the Northern Utah WebSDR with reasonable effectiveness.

Using "direct" mode, these dongles effectively have a "hole" which excludes direct coverage of 20 and 10 meters owing to the aforementioned Nyquist and filtering limitations - and as is the case with lower frequencies which means that if we wish to cover the 20 and 10 meters without being plagued with images, a frequency converter (with appropriate filtering) is required.  If a more expensive dongle with a built-in frequency converter were chosen, one would want the type with TCXOs to minimize frequency drift, which can be greatly magnified because these converters - and the tuner itself - operate in the 100-200 MHz range.

It is quite practical to build a frequency down converter to yield comparable results as described later in this page.  For example, if one were to mix 10 meter signals with a 20 MHz oscillator the result would be a conversion of the 28.0-29.7 MHz range down to 8.0-9.7 MHz:  By down-converting, frequency drift of the various oscillators is dramatically reduced as all of the frequencies involved are about an order of magnitude lower than they would be with a 100+ MHz up-converter.

"Identifying" which RTL-SDR is which:

As is the case with many USB devices, using several devices of the same type can become problematic:  An example of this is using several USB to Serial "dongles":  Unless you get the same device in the same USB port every time you end up chasing your tail trying to figure out which "COM" port belongs to which device.  Such is the case of the RTL-SDR dongles.

There is a means of uniquely identifying each RTL-SDR dongle - but by default, the serial number is typically "00000000" and must be set to something unique:  Use the "rtl_eeprom" utility to set a separate serial number for each device as follows:

rtl_eeprom -s xxxxxxxx

Where "xxxxxxxx" should be a unique 8-digit serial number.  (In reality, fewer digits may be used.)  You can either keep track of the serial numbers to avoid duplication, or you can set it to other 8-digit sequence that is likely to be unique, such as the date and time, as in:  "19020123" for the 1st of February, 2019, the 23rd hour, as an example.  (Comment:  An 8-character ASCII string using letters and numbers may be permitted, but I haven't tried it as I didn't want to risk "bricking" the device.)

Warning:  If you do this, you should set the serial number as above - but then read it again (using "rtl_eeprom" with no arguments) to see if it "took" before "re-plugging" the RTL-SDR dongle and checking it again:  If you don't do it this way you may "brick" the dongle - something that I have had experience with - and recovered!

It is also recommended that one disables the "IR" device as well using the "-i 0" argument - again, "reading" the configuration back to see if it "took" before "re-plugging" the RTL-SDR and checking it again.  The IR device just isn't needed for typical receiver use.

Once a device's serial number is set, mark that number indelibly on the outside of the RTL-SDR dongle.  If you use a "sharpie" or similar marker, be sure to cover the number with transparent tape to prevent it from being rubbed off.

Unfortunately, none of the commonly-available Linux device drivers (at the time of this writing) seem to "know" about the serial number.  What is really needed is the "device index" - which can change, depending on the physical USB port into which the RTL-SDR dongle is plugged.

When invoking an RTL-SDR device using the Linux command line "rtl_tcp" utility, you will get something like this:

Found 4 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00001005
  1:  Realtek, RTL2838UHIDIR, SN: 00001022
  2:  Realtek, RTL2838UHIDIR, SN: 00001003
  3:  Realtek, RTL2838UHIDIR, SN: 00001021

The right-most digits are the "unique" serial numbers that you programmed into the device with the "rtl_eeprom" utility while left-most digit is the "device index" - which is what one really needs to find out which serial number goes with which device index for programs like "rtl_tcp" if you have more than one device.

Unfortunately, just like with a USB to Serial dongle, which device goes to which index depends on exactly which USB port it has been plugged into.  In other words, unless you make absolutely sure that you plug the same RTL-SDR dongle into the same physical USB port it will get a different index:  If you get a different index, then the receivers will seem to rearrange themselves:  If they all share the same antenna, this may go unnoticed, but if one has a VHF antenna connected to it and another has a UHF antenna while a 3rd is connected to HF via a bandpass filter, you may suddenly find them "deaf" as they may be configured with the "wrong" antenna.

The "simplest" way to get around this is to clearly mark the RTL-SDR dongles and their connecting cables to indicate which USB port they should each be connected - and that it what we did (at the Northern Utah WebSDR) for a while, but there is another way.

In short, a simple script was written to associate the serial number and device index:  It does the following:
By using the script to determine the device index when the system starts up, you can be guaranteed that the correct device will be properly identified no matter the physical port into which it was plugged.

If you are the sort that can write bash scripts all day in your sleep, the above will be easy to implement - but if you want a copy of what we did, let me know.

Pages about other receive gear at the Northern Utah WebSDR:
Go to the main "RX Equipment page.

Additional information:
 Back to the Northern Utah WebSDR landing page