RTL2832 Software Defined Radio
Software defined radio (SDR) hardware is becoming smaller AND more capable. For many years, the king of small SDRs was the Softrock Radio. With a combination of surface mount and conventional discrete components, it offered high performance and small size. Miniaturization took a large leap ahead in mid 2010 when the Funcube Dongle was introduced. It incorporated more functions onto a single chip than the Softrocks and hinted at the possibilities in a coming wave of USB based digital television and radio tuners. In early February 2012, Antti Palosaari posed the question of using a generic DVB-T receiver as an inexpensive general coverage VHF / UHF receiver. Thus was born the "$20 SDR." It is an ante-upping game changer for entry-level and higly portable low power radios. This is a "black swan" event that can change radio.
Consider, for a moment, how the miniturization AND mass production of these small software defined radios can affect the activity of radio monitoring. Imagine what people will do with cheap and easy access to just about any radio signal between about 24 and 1700 MHz? This includes public services - police, fire, air traffic control, military, maritime, certain satellite based services including navigation, communication, and so forth. Some signals in the preceeding list will be encrypted; others merely digitally encoded. Amateur radio, weather, and most maritime services will be in the clear. With proper software, most of the signals received by these $20 SDRs can be demodulated / decoded / decrypted immediately. Other signals protected by strong encryption can be recorded and saved for future analysis. Don't laugh - there are people still analysing encrypted traffic from the second world war.
The devices in question, for this breed of software defined radios, use a Realtek RTL2832 quadrature sampling detector in combination with a programmable oscillator (most commonly an Elonics E4000, Fitipower FC0013, FC0012, FC2580, and R820T). Experiments indicate that these devices perform fairly well without any hardware modification, and the software (drivers, firmware, and user interfaces) is sophisticated. It was initially possible to tune a desired frequency, sample a chunk of spectrum, and write the data to a file readable by a conventional SDR program. For example, GNU Radio or HDSDR would be used to read the file and demodulate signals in a 2 MHz wide band of recorded spectrum. Recent generations of RTL-SDR compatible software can directly access the data stream providing excellent real-time multimode reception.
The amateur radio community has worked fast on developing better software to operate the DVB-T radios and manipulate the resulting data. As of late April 2012, software such as GNU Radio or HDSDR can be used for reception of typical voice or digital modes plus esoteric things including encrypted voice. There are GNU Radio modules for P25, Mode-S transponders, ADS-B, GNSS, and INMARSAT downlinks.
Performance wise, the devices are pretty respectable. The specific tuning range available goes from about 60 MHZ to above 1700 MHZ using the best combination: an RTL2832 with the E4000 tuner. Other tuners have had narrower ranges and less compatibility with available software. Dynamic range is limited mostly by a noisy oscillator and 8 bit A/D converter. These are not debilitating limits! Most users should find performance good enough for local stations and perhaps a bit of farther / weaker stations. Basic amateur / public service / aircraft listening - even military satellite downlinks - should be easy on these little DVB-T radios.
RTL-SDRs on HF Bands
Hardware hackers have devised a method of using these little SDRs for low through medium frequency reception. Mikig and Dekar have prototyped a circuit in which the ADC is fed RF via "10/100" ethernet decoupling transformers. ADC pins 1 and 2 are fed with the output of a 1:2 transformer arrangement. The input side of the transformer is connected to a suitable antenna. Such a circuit provides sensitive reception up to around 2.5 MHz. There has also been work on direct sampling the entire HF spectrum, but the results are not very promising due to inherent limits in the dongles' design.
Full high frequency coverage with RTL-SDR hardware has been accomplished with the addition of an upconverter module. A very good surface mount upconverter has been created by Marty, KN0CK, which is small enough to fit inside the dongle enclosure. Opendous, with open source tools, created a high performance upconverter. These Ham it Up devices can be built from kits or purchased fully assembled from a number of suppliers.
RTL-SDR Improvement Tips
Here are some suggestions for improving performance of RTL2832 based SDRs:
- Use a good antenna designed for the range you will monitor.
- Eliminate feedline losses by mounting the SDR at the antenna feedpoint, with weatherproofing and a long USB cable to the computer.
- Use a bandpass filter to protect the radio from strong out-of-band signals.
- Consider a quality preamplifier for the RTL-SDR to reduce the system noise figure.
- Reduce the SDR's internal gain to prevent noise due to RF clipping and intermodulation.
- Enclose the device in a grounded metal case.
- Filter the +5V supply to the radio. Use a combination of ferrite beads and bypass capacitors to target the full spectrum of noise.
- Put RF Chokes on the USB cable to filter out computer noise.
- Hope for the manufacture of DVB-T receivers with 16 bit A/D converters
- Software tricks, such as oversampling and decimation can help - watch for RTL2832 firmware and driver updates!
Filtering USB Cable Noise
The greatest source of noise in the RTL2832 based SDRs is the computer to which it is attached. The problem is not unique and is faced to varying degrees on other computerized radio or audio equipment. Use shielded USB cables when available, and add bypass capacitors between the +5V and GND lines. A combination of large values and smaller ones is best, for example 47 uf in parallel with .01 uf and .001 uf capacitors. In addition, ferrite beads should be used along with running a few turns of cable on a large ferrite choke. Here is information on the USB connector pins and color codes:
Remote Mounting and Networking RTL-SDRs
Users of RTL-SDRs are getting top receive performance by adopting a client - server SDR architecture This refers, in practice, to remotely mounting the radio at the antenna, where it is connected to a microcomputer, which functions as a remote server. Long and lossy coaxial cable runs are eliminated this way. Instead, a long run of ethernet cable is used to provide power and carry data. In fact, the ethernet cable isn't required: one can link to the remote receiver via a broadband 802.11n link. Client - server architecture is a very good thing indeed, because it makes the receiver available to any user on the network. "On the network" means within a home or office intranet or globally via the internet. It is the way to bleeding edge multiuser / multimode operation.
Windows Software for the RTL2832 SDRs
SDR# is SDR sharp indeed! Automatically tuning peak signals in the VHF-Aeronautical band.
Linux Software for the RTL2832 SDRs
Linux is where to find the most advanced activity in the world of RTL-SDR radios. Quite a bit of development is going on, and it is a good thing to see advanced software coders creating fresh software for RTL-SDRs that works great. OsmoSDR and GQRX immediately come to mind as top notch RTL-SDR packages available for Linux computers.
Linrad works nicely with RTL-SDRs too! In fact, it uses slightly modified rtl-sdr library that makes better use of the hardware. Leif has an amusing screencap on his page depicting several RTL-SDRs operating simultaneously in Linrad. It is quite a powerful software package, with countless ways to tweak and adjust an SDR to bring in elusive signals.
GNU Radio is the bleeding edge of the bleeding edge. It is a software toolkit with components that can do just about anything. One can receive GPS signals and get timing, navigation fixes or both. One can receive beautifully clean FM stereo with RDS using advanced filtering and demodulating code. Other modules enable simple AM/SSB/CW reception. GQRX is a very nice all-around module for RTL-SDR listening, which uses GNU Radio as its foundation. GNU Radio is not easy to install, so it is suggested to use a ready-made live CD/DVD with everything installed and configured. Here is a list of bootable live systems:
- GNU Radio Live DVD: a distro directly from the GNU Radio people.
- Andy's Ham Radio Linux: GNU Radio with a well rounded collection for operating, contesting, etc.
- Kali Linux: penetration testing with good GNU Radio support.
- QTRadio (ghpsdr3-alex) USB Image: Networked high performance SDRs, but no GNU Radio.
Each of the above live Linux systems operates very nicely when installed to a portable USB flash memory device. They also work very smoothly when installed to a computer's hard drive as the main system or part of a dual booting arrangement. Tools like Unetbootin can be used to easily install these to a flashdrive, which may then serve as the boot medium for any PC with a USB drive.
Android RTL-SDR Applications
Yes, you can plug use RTL-SDR with a tablet or smart phone! Can you go more mobile than that? Presently, SDR Touch is the application to use for Android RTL-SDR listening. It works fine on the newer tablets and phones, but older devices may be plagued by choppy reception. You can get SDR Touch on Google Play.
RTL-SDR ADS-B Reception
A large and growing number of aeronautical radio listeners have been using RTL-SDRs to capture Automatic Dependent Surveillance signals on 1090 MHz. It is possible to monitor aircraft movement in an area and get other related data: winds and temperatures aloft, aircraft registration, position, mechanical condition, etc. The top software combinations use ADSB# (Pronounced "ADSB Sharp") or RTL1090 to receive ADS-B downlinks, and Planeplotter to process the data. Planeplotter is very sophisticated software enabling position plotting, multilateration, and networked / multisite / multiuser operation. You can use Planeplotter to track a jetliner across Europe with computer generated video of the aircraft's path over any location. This slick animation includes a real-time depiction of the sun, moon, and stars in the background.
RTL-SDR Ship Tracking
Tracking maritime traffic is accomplished similarly to that for aircraft, but use the Automatic Identification System (AIS). For ships, the relevant signals are on 161.975 MHz and 162.025 MHz. Ship Plotter is a popular tool used with SDR# or other Windows SDR applications.
Note: some of the more specialized signal decoders don't connect directly to the SDR, and require audio to be routed from the SDR to the decoding software. There are a few different methods to accomplish this. One method is to use a virtual audio routing cable, while another involves software tricks in Windows' stereo mix. In Linux, audio can be easily routed in Jack, Pulseaudio, and plain vanilla ALSA.
Use Better Hardware For Demanding Applications
For applications requiring very high performance, one still cannot beat a GNU Radio with its USRP hardware or a commercially manufactured communications receiver, such as the QS1R Direct Sampling SDR. Bear in mind that the RTL2832 SDR is a very important development in software defined radio technology! It brings quite good general coverage receiving capability to a huge number of people in the world. There once was a time when radio experimenters and hobbyists depended on a small number of sources for quality equipment. Specialized radios for weather satellites, amateur radio, or trunked public service comms were expensive and difficult to get. With the $20 SDR, based on tiny DVB-T devices, millions of people have access to a workable radio with very broad capabilities. Experimenters, hobbyists, and professionals alike will find lots of uses for these little workhorses. For the latest developments, read the lively discussion in the Reddit.com RTLSDR pages.
Tags: RTL2832 Software Defined Radio, Pocket SDR, R820 SDR, RTL-SDR, Funcube Dongle