RTLSDR P25 decoder built with liquid-dsp
See Dockerfile if you want to install within your OS / not inside container
docker build -t rtl_p25 .
The helper script rtl_devices.sh adds args needed to map USB to the container
docker run $(./rtl_devices.sh) --rm -i rtl_p25 -x 2 -d 0 -s 1200000 -g 62 -p 0
This program has been designed to be run by other programs following mkfifo
patterns described in better sdr drivers. Run rtl_p25 as a child process in your language of choice then hold onto stdin, stdout, and stderr. All arguments follow RTLSDR conventions except -x
added for mux aka number of channels.
mkfifo /tmp/mux0 && mkfifo /tmp/mux1
rtl_p25 -x 2 -d 0 -s 1200000 -g 62 -p 0
stdin> tune,851137500,111
stderr> ok,851137500,111
stdin> demod,0,12500,/tmp/mux0,222
stderr> ok,222
stdin> demod,1,-25000,/tmp/mux1,333
stderr> ok,333
- tune - center freq, nonce
- demod - channel, offset freq, fifo, nonce
- nonce - int for acks on stderr
Programs reading from /tmp/mux0
and /tmp/mux1
will find a P25 di-bit byte stream which may be read into P25 spec frames following these examples.
Copyright 2025 - mike@rhodey.org
MIT