Tag: software defined radio

Compliling rtl-sdr from source on Mac OS


Just compiled rtl-sdr using  instructions below, from: http://sdr.osmocom.org/trac/wiki/rtl-sdr

!! but did not run: sudo make install – or sudo ldconfig !!

so the programs are just running locally in: tkzic/rtl-sdr/build/src

I didn’t want to overwrite the macports versions which are running in the exec path.

after compiling I was able to successfully test by running this from rtl-sdr/build/src:

./rtl_fm -f 94900000 -W -s 200000 -r 48000 - | play -r48000 -t s16 -L -c 1 -

which caused annoying pre-christmas music from WHOM to ruin this peaceful morning.


Building the software

rtlsdr library & capture tool

You have to install development packages for libusb1.0 and can either use cmake or autotools to build the software.

Please note: prior pulling a new version from git and compiling it, please do a “make uninstall” first to properly remove the previous version.

Building with cmake:

cd rtl-sdr/
mkdir build
cd build
cmake ../
sudo make install
sudo ldconfig

In order to be able to use the dongle as a non-root user, you may install the appropriate udev rules file by calling cmake with -DINSTALL_UDEV_RULES=ON argument in the above build steps.


installing gnu-radio, rtl-sdr, and gnuradio-companion in Mac OS

Update 5/2014

May want to try these instructions from gnuradio.org: http://gnuradio.org/redmine/projects/gnuradio/wiki/MacInstall

Original post

I used these instructions today (12/3/2013) (mac os 10.8)



# gnuradio-companion

also take a look at this post: – at the very bottom – is the simple list of instructions for installing gnu-radio and rtl-sdr


Here is an example of rtl-sdr command, which now works from macports install:

/opt/local/bin/rtl_fm -f 94900000 -W -s 200000 -r 48000 - | play -r48000 -t s16 -L -c 1 -



SDR » I/Q Data for Dummies


Hacking fixed key remotes using rtl_SDR

By Andrew Mohawk


Berkeley EE123

Digital Signal Processing – rtlSDR – fall 2012

By Michael (Miki) Lustig





Piping raw IQ data from rtl-sdr to Max


Here is a discussion about mkfifo (pipes) but  I can’t seem to get Max to interpret the FIFO as audio samples


I think I know how to figure out the streaming IQ thing now. Capture samples to a file, then look at the format. Then maybe pipe the file through something like auconvert to make it into a wave file. If that works, then maybe there is a way to to it as streaming.

Or figure out how to stream from tcp/ip version to audio.

Simulating wireless communication systems

C++ code available at Safari Books Online.

(Including PLL examples)

By: C. Britton Rorabaugh


local code is in tkzic/simulating wireless dsp c++


Understanding phase-locked loops

A nice explanation – with Python simulation.

By P. Lutus at arachnoid.com


FM demodulation

A thread that is cool and hot

At dsprelated.com


DSP based Software Defined Radio for FM Demodulation

DSP tools for FM demodulation.

By Ali Naveed, et al.



Software Defined Radio is an emerging technology that has been an active re-search topic for over a decade. The terms software defined radio and software radio are used to describe radios whose implementation is largely software-based. These radios are reconfigurable through software updates. There are also wider definitions of the concept. A software defined uses digital signal processing (DSP) for coding, decoding, modulating, and demodulating data.

The proper implementation of SDR is far away from our approach and the experience which we have gained during the three years studies in the B.E program of Industrial Electronics. That is why, this project is the design, construction, and testing of an FM receiver. The design is split into two portions, the analog FM front end and the digital demodulator. The job of the front end is to receive and down convert the RF signal to a frequency that is low enough to be processed by a DSP processor.

The second portion of the design is the demodulator. The phase lock loop method of demodulating FM signals is used. The phase lock loop demodulator is designed in the digital domain on a DSP processor.