APCO P25 is a digital voice signal and is commonly used like public safety departments such as police and fire. With an RTL-SDR and the open source Linux based OP25 decoder these signals can be decoded, assuming they are unencrypted. Software like DSD+ can also be used, but OP25 can supposedly decode more systems. Before the RTL-SDR, hardware scanners like the $~360 USD Uniden BCD996T digital scanner radio were typically used.
Over on YouTube user Rob Fissel has uploaded a video showing a comparison between an RTL-SDR using the OP25 decoder and a Uniden BCD996T. Both radios are used to decode a weak P25 Phase 1 LSM signal. He uses a Scantenna antenna with an antenna splitter to run both radios at the same time. His results show that even though the constellation is poor, OP25 does a good job at decoding the signal and producing voice, whereas the BCD996T doesn’t even manage to hear the control channel.
The latest version of Digital Speech Decoder+ (DSD+) has just been released, bringing it up to version 1.071. There appears to be no changelog, so we are unsure as to what is new, but one obvious change is that they now include a new program called FMP which is a simple NFM demodulator, similar to rtl_fm, although it does have a GUI with point and click tuning. FMP can be used as a replacement for SDR# or similar software, and is especially useful to use on low end devices such as netbooks.
An active discussion on the latest release of this software can be found in this thread on the RadioReference.com forums.
DSD+ is a Windows program which can be used to decode and listen to digital voice protocols such as D-STAR, NXDN4800, NXDN9600, DMR/MotoTRBO, P25 Phase 1, X2-TDMA and ProVoice with an RTL-SDR or other radio. On some DMR systems you may also be able to use the included LRRP software, which allows you to view the GPS locations of broadcasting radios. The last major release was version 1.05.
The DSD+ team are now also offering a “fast lane” early access program, which for a small donation will allow you to have early access to new and upcoming DSD+ features. They aim to release a new update to donators every 7 to 30 days, while stable public releases will continue to be released every 4 to 6 months. The donation costs $10 for one year of early access, and $25 for lifetime updates. Some features they are currently working on include:
Over on YouTube user jdlucas78 has uploaded a video showing a P25 LSM modulated digital voice signal being decoded by the Osmocom OP25 software for Linux. Although DSD and DSD+ can decode P25 voice, it seems that the Osmocom OP25 software is better at decoding P25 signals as it implements better error correction algorithms.
Over on the RadioReference forums there is a thread discussing the use of the OP25 decoding software which can be found here. There is a post in the thread that shows an easy Linux install procedure for the OP25 software.
Version 1.5 of Digital Speech Decoder Plus (DSD+) has been released. DSD+ is a popular Windows software tool used for decoding digital speech such as P25 with the RTL-SDR. The latest version comes with a simple GUI interface that has an event log that shows call target and source ID history and an audio waveform plot which can help determine if DSD+ is receiving audio correctly. This version of DSD+ has the ability to decode the following protocols.
P25 Phase 1
In addition to the above, the new version comes with an LRRP decoder and display program which should allow you to see on a map the GPS location of broadcasting radios.
This version of DSD+ comes with all the files needed to make it run already. To use DSD+ V1.5 simply extract the zip file into a folder and double click on DSDPlus.EXE. DSD+ will listen to your default audio device that is set in the Windows sound recording properties. Simply tune to a digital voice signal in SDR# or any other SDR receiver and set the output audio settings accordingly. To start the LRRP display program simply open LRRP.exe.
The popular trunking decoding software Unitrunker now supports the RTL2832U R820T RTL-SDR directly in its new version. This means that extra SDR receiver software like SDR# is no longer required to use Unitrunker.
In a normal radio system, one company (or talkgroup) might use a single frequency for radio communications. However, this is very inefficient as the frequency may not be in use for the majority of the time. In a trunked radio system, a small set number of frequencies are shared between a large number of talkgroups. Each radio receives a special computer controlled control channel. The control channel determines a vacant frequency that a particular talkgroup should use. This helps to make radio frequency allocations more efficient.
Because a talkgroup might switch between various frequencies often, it can make listening to a conversation difficult for radio scanners. Unitrunker can be used to decode the control channel and follow a voice conversation as it hops across various frequencies. With two RTL-SDR dongles you can set up a trunking receiver station with just Unitrunker. What follows below is a tutorial on how to set this up.
To run DSD+. you will need to place an MP3 encoder file lame_enc.dll into the same folder as the dsd.exe executable. This file is not included with DSD+ due to licencing. For Windows, lame_enc.dll can be downloaded from http://lame1.buanzo.com.ar/#lamewindl (Mega Mirror). Download the ZIP option, and then copy the dll file into the same folder as DSD+.
If you don’t know how to use DSD, see our tutorial on using DSD here, and if desired simply use DSD+ instead of the original DSD. (Note cygwin is not required for DSD+)
The popular digital speech decoder (DSD) software has now been wrapped into a GNU Radio Companion block. Previously, DSD required use of virtual audio cables to get decoding to work with GNU Radio, but now the signal audio can be passed directly into this block.
Luke Berndt from the HackRF-dev forums has posted his work to make the functionality of DSD available to GNU Radio users in the form of a GRC block. “I have been playing around a bit and found an easy way to receive and playback digital LMR. More and more of the radio systems are going from narrow band FM to Digital. This makes it tough to listen to them on GQRX. DSD is a great program which can decoded the audio you get when you tune in a system in GQRX, but you either have to run it on another machine with a audio cable in between or figure out how to do a virtual audio cable on your machine.
Luckily, someone wrapped the DSD libraries so they can be accessed as GRC blocks. I have put together a GRC file and a Python program that make it a little easier to use the block.
If you have a chance, give them a try and let me know if they work. There is a good chance I have messed up the values in the filters or else where, but I have gotten clean audio out of it.”