POCSAG is an asynchronous protocol used to transmit data to pagers.
The family of POCSAG protocols can operate at three speeds, 512 bits per second (the original specification speed) is the base standard.
Hardware
- One computer running Ubuntu
- 1 DVB-T USB receiver (usually used to receive HD TV on computers)
RTL SDR usb module
Software
- OS : Ubuntu 16.04.1 LTS
- Driver : Rtl-sdr
- Software defined radio receiver (SDR) : Gqrx
- Decoder : Multimon-ng
Installation
Preparation
Let’s install first all the tools that we’ll need :
sudo apt-get update
sudo apt-get upgrade
sudo apt-get -y install git cmake build-essential libusb-1.0 libusb-1.0-0-dev qt4-qmake libpulse-dev libx11-dev
Rtl-sdr
Clone it from git, compile and install :
git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo ldconfig
cd ~
sudo cp ./rtl-sdr/rtl-sdr.rules /etc/udev/rules.d/
sudo reboot
Gqrx
On Ubuntu, it’s really easy to install Gqrx :
sudo apt-get update
sudo apt-get install gqrx-sdr
Multimon-ng
Clone it from git, compile and install :
sudo apt-get update
mkdir multimon-ng
cd multimon-ng
mkdir build
cd build
qmake ../multimon-ng.pro
make
sudo make install
Gqrx
You can start Gqrx and then :
- Start DSP processing (in red)
- Adjust frequency to a POCSAG frequency (in blue)
- Start UDP streaming (in green)
- Adjust parameters as below (in pink)
GQRX configured for POCSAG
Multimon-ng
Here is the command to decode the POCSAG messages :
nc -l -u 7355 | sox -t raw -esigned-integer -b16 -r 48000 - -esigned-integer -b16 -r 22050 -t raw - | multimon-ng -t raw -a SCOPE -a POCSAG512 -a POCSAG1200 -a POCSAG2400 -f alpha -
