Software defined radio from a USB TV capture card

With a simple digital TV USB capture card, you can build your own software defined radio or spectrum analyzer. While it may not be as cool as [Jeri Ellsworth]’s SDR, it’s still very useful and only requires $20 in hardware.

The only piece of hardware required for this build is a USB FM/DTV capture device with the Realtek RTL2832U chipset. So far, two USB sticks have been tested and the unit with the largest frequency range (64 – 1700 MHz) is available direct from China for $20.

Turning these cheap capture cards into software defined radios and spectrum analyzers was discovered by [Antti Palosaari] after sniffing the device. These cards demodulate the frequency and send all the data to the computer and is decoded via software. If you have one of these capture cards lying around, you can grab the software and load it up on your *nix box. Right now, the software only writes directly to a file, and may drop a few samples if writing to a hard disk instead of ram. Small problems, but we’re sure this project will pick up steam in the very near future.

46 thoughts on “Software defined radio from a USB TV capture card”

@Neckbeard It looks like the same front end, but the FunCube appears to use USB sound card hardware to do the sampling. FunCube website says ~96KHz I/Q, whereas according to the SDR thread, the sample rate in the example was 2.048 MHz. It would have to have a faster ADC to handle video data rates. This also explains why the FunCube is driverless, and this thing is going to require more hacking to make a useful driver.

1) The stick doesn’t have a preamplifier like the FDCP have => Sensitivity is clearly not as good

2) The stick only sends 8 bits IQ sample, so the dynamic range is pretty limited.

3) Beware that not all stick using the RTL2832 have a elonic E4000 tuner. Some have another models and those can be much more limited

4) While the availability of the raw mode was indeed discovered by Antti Palosaari while looking at a FM mode capture, it’s important to note that all the work for finding exactly how to exploit it and write the actual software was done by Steve Markgraf.

I do understand how SDR stuff works. Not down to the math of it, but I have several softrocks.
My question was more of, does this pass the IQ stream wide enough that the dvb-t is decoded in software or does it decode that itself and pass the bits to the computer?

The RTL2832U has a DVB-T demodulator in it so it just passes the MPEG multiplex and transport to the PC. In radio mode (the mode of interest here) it just passes the sampled IQ baseband to the PC for demodulation in software. The Windows application that comes with it has an FM and DAB+ demodulator in software. This is what makes it such a nice front end for GNURadio.

I canceled my order at dealextreme last night and placed one on aliexpress and it’s now sold out there.
Annoyingly, the seller didn’t process my order when it was still in stock as he saw I was in the USA which uses ATSC.

Unless you want to use the dongle to watch TV in the USA there is no need to buy an ATSC version – just get the DVB/DAB/FM one. The model I have is EZTV646 but the PCB is exactly the same as the one in the picture – including the EZTV668 1.1 text.

The issue that I have run into is that the DVB version uses the “Television Aerial” coaxial plug, so its not compatible with any store bought or homebrew antennas in the US that use the F-connector. Radio shack has an adapter for $10, but I am concerned about an unneccessary cost and loss of dBs. Any thoughts on this? Does the ATSC version of this dongle have pretty much the same guts as the DVB/DAB/FM one? Can the ATSC one be purchased to use with HD-SDR?

This is nowhere near as useful as the funcube due to the built in ADC converter. It is only 7-bit. You may be able to receive broadcast FM (which is the initial purpose of the device), but not good for much else the resolution is not there.

Besides what James said, the consequence of having 8 bits versus 16 or 24 bits is that there is not as much dynamic range available (48 dB vs 96 dB and 144.5 dB, respectively). An adjustable preamplifier or attenuator can bring the received signal into the range handled by 8 bits. You can also utilize oversampling and decimation to increase the resolution, hence the dynamic range. For example, to increase the resolution from 8 to 11 bits, oversample the data at a rate 64 times that desired. If the sampling rate is 2,560,000 samples per second, the effective sample rate will be 40,000 samples per second, which is still a useful I&Q sample rate for SDR. There is plenty of information on oversampling and decimation available through Google, so I won’t go into the details here.

Conundrum, you need a DAB stick, I have a DVB-T stick but the requirenent is for the wide band DAB output.
This seems to be moving very fast I’m ordering my DAB stick, an 8 bit 2MHz wide SDR for $20, yes please.

Has anyone tried adding one of these to openwrt? How awsome would it be to stream the feed from a remote wifi router you can place anywhere? We could create a meshed digital repeater input, with multiple listening stations on the same frequency. A repeater node if you will, with listening redundancy. Simular to a cellular network.

Support for these dongles is included in ghpsdr3-alex which I and others have used them as SDR’s on the amateur radio bands 2m and 70cms, all modes supported.http://napan.ca/ghpsdr3/index.php/Main_Page
The rtlsdr-server talks to the dongle and dspserver puts it on the local network and on the internet, accessible using QtRadio on a PC/netbook running Linux or Windows and glSDR from Google Play on an Android phone or tablet.