User Tools

Site Tools

Navigation Menu


  • StatusClosed
  • OP-ModePre-Launch
  • LocationN48 - E11
  • Localtime03:41
  • CountdownT-00D 00:00

Hot Projects


SEEDStack - Open 3D printable seed/sprouting systemDIY Food Hacking


UCSSPM - Unified Clear-Sky Solar Prediction ModelOpen Solar Power


picoReflow - DIY PID Reflow Oven Controller based on RaspberryPiDIY Reflow Soldering


PiGI - DIY Geiger Counter based on RaspberryPiRasPi Geiger Counter

DIY ARA-2000

Active Wideband Receiver Antenna for SDR - ARA-2000Wideband Antenna


DSPace - Map everythingMap everything!


NFM GNU-Radio Receiver for RTL/OsmoSDR

Soon after the release of RTL-SDR a lot of people started to play with software defined radios. Although the Elonics E4000 tuner and the Realtek RTL2832U Chip are a long way from the quality and performance/stability of an USRP(2), the price of $11 - EUR30 makes these devices an ideal beginners device for SDR experiments, without having to invest +$1k into hardware.

As soon as the new OsmoSDR is finished and available, it will provide a very cost-effective device, filling the gap between the funcube, with only 96kHz bandwith - some people lovingly call it the sadcube these days - and the USRP. The OsmoSDR approach seems to be the best compromise of both worlds and the osmocom team is doing a real kick-ass job, putting it together.

Right now, not only hackers, but old-school hams and other people are drawn to gnuradio and rtlsdr but sometimes find it hard to leave their known world behind and dive into the new world of doing radio in software. In order to make the transition easier, good examples are desperately needed. The following setup is an easy to understand, uncluttered narrow band FM receiver, that most hams and radio related people should be able to grasp and tweak.


The hardware used in this test was a Hama Nano DVB-T Stick, based on the Elonics E4000 tuner and the RTL 2832 controller.

Hama Nano DVB-T Stick
Hama Nano Bottom
Hama Nano Top

GNU Radio Companion Setup

The following example is based on GNU Radio 3.5.3 and the very versatile OsmoSDR source block. With the OsmoSDR sourceblock it is possible to tune the OsmoSDR as well as the RTL-SDR and the funcube, which makes it the perfect choice for a compatible GNU Radio NFM receiver example.

This setup is meant to be a basic starting point for GNU Radio beginners and will not unleash the real power GR has under the hood.



Download GNU Radio .grc File:


  1. Use the RX Center slider to tune into a band you want to work
  2. Identify a frequency in use, let's say you find a strong signal on 149.2125
  3. Tune RX frequency slider to 149M
  4. Tune RX Offset slider to about 212k
  5. Switch from Waterfall Tab to the FFT Spectrogram Tab
  6. Use the RX Fine slider to lock onto your desired target


GNU Radio:

  • Use the left/right arrow keys in GRC to rotate blocks for a clean flow.
  • When you change the samplerate, remember to adjust the fractional interpolator.
  • The higher the frequency the more inaccurate the tuning gets. Use the FFT Spectrogram and the RX Offset/Fine sliders to compensate visually.
  • Never tune RX Center to the frequency you actually want to work, always create an offset (+200k seems like a common choice) by using the RX Offset/Fine slider to home in on your target. This is due to the DC Component on the center frequency.
  • TAU Setting: FM Pre-Emphasis (50us for WORLD / 75us USA)

2.8 MHz Bandwatch on ISM

433 MHz

Here you can see/hear a somewhat crowded overview of the 433 MHz ISM band:


868 MHz

The 868 MHz ISM band is far less crowded here, in comparison to the 433 MHz band. The right screenshot shows a bit more detailed view on a short data transmission.

2m/70cm HAM-Bands

2m Simplex

First TX/RX test on FM 145.2125 / 12.5kHz simplex. An IC-E92D with 0.1W output power was used to send:


70cm Duplex on DB0EL

Another test recording on DB0EL (Munich) when another HAM was calling on the repeater:

Last words

Share some love with the open source mobile communication team (osmocom) for their tireless efforts, to create awesome solutions and keep them open for everyone to make stuff like this possible. When time will allow more tests, we will try to go a bit deeper into APT, POCSAG, ACARS and ADS-B. As always, when you find bugs or create fixes, please report/contribute them back to the community.

73, de • −  • − − •  − − −  • − • •  • − • •  − − − 

A great tool to quickly learn morse code, is Todd Anderson's Morse Code Trainer for Android

Mission-Log entry created by on 2015/02/01 15:36 UTC


2012/05/25 00:54

That was a good writeup. I'm in exactly this boat having got a DVB-T stick and started to play with gnuradio, but I'm a total noob. I found the gr-pocsag code at but I can't figure out how to get it working. I'm looking forward to more articles to help us noobs get going.


2014/09/04 13:00

Hello, great write-up, thank you!!! I am trying to replicate your GRC flow graph, could you please post a link to the file? There are a couple of items I cannot get right from the screen version. Thank you !!

2014/09/04 13:19

Ahoy there, I was thinking the green download box below the flowchart was big enough for people to find :) Any yeah, I know the problem, especially the taps of the xlating FIR get lost if you only have the flowchart image.

In any case, there have been many changes under GNU Radios hood with 4.7.3, so if you've already updated, this flowgraph will need some minor tweaks to work again. In case you're having trouble with it, just honk again or join us on IRC/Jabber to get it sorted out.

Comment text

Please type the letters you see on the left into the box on the right:

 __  __  _   __   ___    ____   ___ 
 \ \/ / | | / /  / _ |  / __/  / _ \
  \  /  | |/ /  / __ | _\ \   / // /
  /_/   |___/  /_/ |_|/___/  /____/