If you are not familiar with POCSAG or its usage check out [https://en.wikipedia.org/wiki/DAPNET](Decentralised Amateur Paging Network) .

This is a little write up on how to use SDRangel and multimon-ng to decode multiple parallel POCSAG signals with only one RTL SDR stick.

This happens in a Linux environment, not sure if this will work on windows.

  1. Install SDRangle, multimon-gn and sox
  2. Open SDRangle and select your SDR as source.
  3. Select your desired Frequency and find your POCSAG signals using the waterfall display
  4. Activate AGC

If you want to listen to the signal only without decoding:

  • Press the add channel button and Select “NFM Demodulator”

If you want to decode the POCSAG using SDRangel’s internal Demodulator:

  • Press the add channel button and Select “Pager Demodulator”

SDRangel’s internal Demodulator works, but it only decodes 512 or 1200 or 2400 baud POCSAG. Meaning if you have 3 frequency’s, each carrying 521 and 1200 baud signals, you would need 6 decoding windows in your SDRangel’s work environment.

But there is a more easy way to do this, multimon-ng.

How to use SDRangel with multimon-ng:

  • Press the add channel button and Select “UDP sample sink”
  • In the UDP window, center the desired frequency
  • Set the settings:

This will generate a UDP stream on port 7355 for multimon-ng to decode.

To decode open a terminal and use this chain of commands:

nc -l -u -p 7355 | sox -t raw -esigned-integer -b 16 -r 48000 - -esigned-integer -b 16 -r 22050 -t raw - | multimon-ng -t raw -a POCSAG512 -a POCSAG1200 -a POCSAG2400 - | tee freqlog_1.txt

This is what it does: “nc -l -u -p 7355” pipes in the UDP sound frames, “sox” converts the input to something usable for multimon-ng, “multimon-ng” attempts decoding and puts out text “tee” display the outputs in the terminal while also logging to a text file

To decode multiple signals in parallel, open another UDP Sample sink window with the same settings but change the port to 7356, then again center your desired frequency.

Open another terminal and repeat the command chain, but replace 7355 with 7356 and increase the number in the log file name by one.

You can do this with as many signals as you want, as long as they are in the same Bandwidth your SDR is set, for a cheap SDR stick you may watch everthing that happents in a 2Mhz window, with a better one you can do 20Mhz or more.

Now you should have open multiple terminals, each logging its own frequency, but how to pipe that into one terminal so you dont have to switch?

tail -f freqlog_1.txt freqlog_2.txt freqlog_3.txt

This watches for changes in the end of the log files and pipes it all in one terminal.

Thats it for my write up, now have fun decoding.