Welcome to OP25

OP25 is a not-for-profit project to bring together folks that are interested in implementing APCO P25 using a software-defined radio. Our goal is to build a software-defined analyzer for APCO P25 signals that is available under the GNU Public License (GPL).

APCO Project 25 is the digital communications standard used by many police and emergency services throughout the world. Most notably the US, Canada and Australia deploy systems based on P25. Compared to existing analogue systems P25 offers improved spectrum use, coverage and flexibility. Provision is made to ensure the confidentiality of traffic, to allow the use of trunking and the provision of data in addition to voice services.

Hardware scanners such as the Uniden BCD996T offer APCO P25 functionality but software-defined radio (SDR) offers significantly improved flexibility. For example, software radio approaches can receive many channels at once, handle both voice and data (including the trunking control channel), decrypt encrypted traffic when the key is known and log traffic to disk for later analysis. With the right software an SDR is a powerful analysis tool for debugging and monitoring of P25 networks.

That's the sales message. The reality is software-defined radio isn't yet as simple as the plug-and-play of hardware radios. You will need a lot of patience and a fair amount of software skills to get working. To get an idea of the work involved you can check out Hardware for Your Software Radio By Stephen Cass. In that sense this really is an amateur radio project and requires the same kind of skill and dedication but we've a few people who will help out if you run into trouble. A project like this needs many different skills so even if you're not technical you maybe able to help in other ways.

A short video that demonstrates OP25 transmitting audio from a PC's microphone input, then to a USRP being received by a GRE scanner is available on  Youtube.

Project Tasks

From here we have a number of tasks that immediately suggest themselves. In increasing order of difficulty these are:

  • Understand P25, the physical layer and the messages being passed over the air.
  • Implement a decoder which takes P25 signals and produces a message stream.
  • Extend the WireShark sniffer to allow sniffing of P25 message.
  • Analyzing the various security issues and demonstrating the insecurity of P25 systems.
  • Implement an IMBE decoder to recover voice traffic.
  • Provide a practical logging service for P25 monitors.
  • Incorporate the use of both the C4FM demodulator and the "CQPSK" demodulator.
  • Locate and track the locations of P25 mobile stations.

As all Wiki pages, this page is editable so these ideas are not fixed in stone. Developers can simply click on the "Edit this page" link at the bottom of the page (although it is worth familiarizing oneself with Wiki formatting beforehand).

Starting Points

Please realise that this is developmental software and it does take a fair degree of skill and understanding of hardware and software development under Linux to get it working. The mailing list  op25-dev is there to help people that try to help themselves.

  • Hardware -- The recommended hardware for this project.
  • Software -- An overview of the project software.
  • Samples -- User-collected samples of P25 signals.
  • Papers -- Papers relating to OP25.
  • Presentations -- some videos, talks and interviews about OP25.
  • FAQ -- Frequently asked questions and answers.

Email Lists ¶

  •  op25-dev -- elist for the project.
  •  Project25 -- elist discussion forum for APCO Project 25 and related technologies.

Related Projects

OP25 depends on a number of free software projects:

A similar project has been undertaken by Project 54 at UNH

OP25 is only one of a number of projects in this area and you should check out  Project54 OpenP25 and  Unitrunker for related work.

License for Wiki Contents

All wiki contents are provided under the terms of the Creative Commons  Attribution-ShareAlike 3.0 license. Authors that wish to contribute to our wiki expressly agree that their contributions can be re-distributed on these terms. Redistributors must credit the OP25 project as the original source of any re-distributed material.