OP25 running on Android phone via RTL_SDR (again)

Опубликовано: 12 Август 2026
на канале: soulnull
296
8

This is the second time I've gotten this to work, and this time was much easier. I went ahead and tried to remember the specifics of how I got it working.

First, you want termux from fdroid, the one on play store is way out of date and doesn't work correctly for this.

first, to enable audio, run this:
pulseaudio --start --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1
(you'll either need to do this every time, or install termux:boot and script it to run at startup by putting this as a script into your ~/.termux/boot/ folder)

Install proot-distro, run proot-distro install debian-oldstable

log into the environment with proot-distro login debian-oldstable

point the distro audio to termux pulseaudio server:
export PULSE_SERVER=127.0.0.1

install git using apt install git

now clone the repo using: git clone gitea.osmocom.org/op25/op25

cd op25
./install.sh

it's gonna take a bit to grab and compile everything. you can edit the install.sh file and search for where it initializes make and add -j(number), with (number) being the amount of cores your device has (mine has 8, so I used -j8). it'll speed up compilation significantly

when it finishes, do
mkdir ~/.gnuradio/
mkdir ~/.gnuradio/prefs
nano ~/.gnuradio/prefs/vmcircbuf_default_factory

paste this into the new file:
gr::vmcircbuf_mmap_tmpfile_factory

Ctrl+x, y, enter to save/exit

I recommend you run volk_profile at this point.

now, go back to Android, start the rtl-sdr driver, click expert, start an rtl_tcp instance (you can leave the settings at default), then go right back into termux and run the command, using 127.0.0.1:14423 as your device.

every time you stop the process, you'll need to go back into rtl_sdr driver and restart the rtl_tcp server. it stops itself every time. I'm not smart enough to plumb it into the API so termux automatically starts the rtl_tcp instance at this point... but it works.

it absolutely munches battery though, so just be aware of that.