APRS RX IGate with RTL-SDR and Raspberry Pi

Compile programs

This will install the necessary programs needed to download, compile, and install the drivers and software. I generally followed this procedure for installing these programs. I did not install Kalibrate as the examples didn’t work for me and I knew (I think) a better way to calibrate the dongle.


Connect via SSH to the Pi.

Update the repository archives by entering

sudo apt-get -y update

For a description of this command see the Updating Wheezy Raspbian section.


Install the program dependencies by entering

sudo apt-get --no-install-recommends -y install git cmake libusb-1.0-0-dev libpulse-dev libx11-dev screen qt4-qmake libtool autoconf automake libfftw3-dev

For a description of this command see the Updating Wheezy Raspbian section.
no-install-recommends: only installs the main dependencies for the package(s) and no suggested dependencies.

RTL-SDR drivers

This will install drivers and programs for the RTL-SDR dongle.


Create a temporary place to compile the programs by entering

mkdir -v /home/pi/sources/

cd /home/pi/sources/

git clone git://git.osmocom.org/rtl-sdr.git

Git: version control system which includes the ability to make code changes to a repository and submit the changes for approval. It will be used to make copies of repositories (source code) from the Internet to the Pi.

cd /home/pi/sources/rtl-sdr/

Create a place to store compiled (built) code (binary files).

mkdir -v /home/pi/sources/rtl-sdr/build/

cd /home/pi/sources/rtl-sdr/build/


Cmake: checks details about the machine on which the software is going to be installed. This script checks for dependencies. It generates Makefile. Makefile indicates the sequence that Linux must follow to build various components / sub-programs of the software. This is similar to ‘configure’ (details from: codecoffee).



make: takes Makefile and compiles the code to generate executable programs (details from: codecoffee).


sudo make install

make install: also uses Makefile and copies the execrable into the required directories (details from: codecoffee). This must be run as root so permissions will be correct.


sudo ldconfig

ldconfig: creates the necessary links and cache to the most recent shared libraries. We just installed new libraries for the RTL-SDR dongle and ldconfig will make them active.


This will install MultimonNG which decodes digital transmissions. It is a fork of Multimon with added features. A list of supported modes is available in their README.


cd /home/pi/sources/

git clone https://github.com/EliasOenal/multimonNG.git

cd /home/pi/sources/multimonNG/

mkdir -v /home/pi/sources/multimonNG/build/

cd /home/pi/sources/multimonNG/build/

qmake ../multimon-ng.pro


For a description of these command see the RTL-SDR drivers section. qmake is similar to cmake.


sudo make install

For a description of this command see the RTL-SDR drivers section.


This will install pymultimonaprs which relays decoded data to the APRS-IS network.


cd /home/pi/sources/

git clone https://github.com/asdil12/pymultimonaprs.git

cd /home/pi/sources/pymultimonaprs/

sudo python setup.py install

python: is a programming language interpreter.
setup.py: script written by the author which python executes.
install: parameter telling setup.py which command set to run.


Reboot once we’re done to get everything in place.

sudo reboot

Programs are installed!