Title Goes Here

A blog that's DOA

RTLSDR and GNU Radio

| Comments

Recently I purchased a Newsky DVB-T USB Receiver off Amazon for around $30 USD. Not the best price for one of these, but the free two or three day shipping couldn’t be beat. The Newsky is intended for use receiving over the air digital video broadcasts (DVB-T) commonly found in the european markets. Similar OTA video in the United States utilizes the ATSC standard and thus isn’t generally compatible with this device.

Why then, you might ask, would I waste $32 on such a useless thing? The Newsky device is based upon a Realtek RTL2832U with an Elonics E4000 tuner chip. This combination has been found to be tunable across a wide range of frequencies in the 64Mhz -> 1700Mhz range. This made this device into an extremely cheap software defined radio (SDR). To the best of my knowledge before now such a cheap and readily available device with these capabilities had not existed.

Since the Newsky was originally intended for watching broadcast TV the antenna it comes with is ghetto to say the least.

It attaches to the Newsky itself with a PAL type connector, requiring us to play adapter roulette to connect it to anything suitable.

For now I’ve purchased a standard set of television “rabbit ears” from my local Radio Shack . These utilize a more “standard” (for US TV anyway) F-type connector, so for that we need an adapter as expected.


For some time now folks have been experimenting with software defined radios such as the USRP1 and USRP2 from Ettus using a collection of software collectively known as GNU Radio. The RTLSDR ‘movement’ has brought a new life into this community with tons of hobbyists not previously able or willing to pay the $1500+ USD price tag required to play with the USRP hardware coming on board.

A company called osmocomSDR has been spearheading the effort to provide drivers and a GNU Radio “source block” for the RTL based hardware out there. While still quite an early effort, things appear to be quite usable and stable already with support for a good number of different device types.


Building GNU Radio is no easy task. There are tons of dependencies and with a project moving as fast as this you unfortunately can’t rely on vendor packages (apt, yum, etc) to keep up.

I’ve had good experience building GNU Radio on Ubuntu 12.04 LTS using the build-gnuradio script. This script automates installing dependencies from your distribution repository, procures all necessary source code and automatically builds everything for you.

For OS X things are a bit more involved. I’ve gotten the latest (as of this writing) GNU Radio to build with Homebrew based dependencies without TOO much trouble. I mostly used the formulas and instructions available at titanous' homebrew-gnuradio fork on github. I may make a future post more carefully detailing the steps I had to take to get everything to build right.

What should I do?

Depending on where you live you might be able to pick up tons of transmissions with the ghetto-rig I put together. Here in New York City that’s certainly the case. So far I’ve listened to various police, ambulance, fire, etc dispatches and decoded AIS ship location information broadcasts using gr-ais. Certainly the limiting factor so far has been my knowledge and not the hardware.

I’ve created a Homebrew formula for gr-ais and placed it up on github for anyone who’s interested. It’s quite simple.