OP25: Not getting plots on HTTP when running multi_rx.py

rr445566

Newbie
Premium Subscriber
Joined
Jun 12, 2023
Messages
4
Location
Boston, MA
Hi-

I'm working on getting op25 set up to monitor a couple of local agencies which recently switched over from NBFM to non-trunked P25 Phase I systems. I have 2 RTL-SDR dongles connected to a Raspberry PI to initially capture 2 agency channels.

My first step was to get two separate instances of "rx.py", each connecting to 1 dongle and providing one stream. This is working, with two separate http servers (one per stream), and I can see live plots for each of the two streams via their http server.

Next I saw some posts indicating that "multi_rx.py" was preferred for P25P1, so I then got a "config.json" built up for the two systems and the two devices. This seems to mostly work fine and I'm getting audio from both streams via UDP/liquidsoap, but I am not able to see any plots on the HTTP server for "multi_rx.py". I see the web page, and I can click over on the "Plot" page, then click "FFT", etc, but no plots show up. If I run `"multi_rx.py" with the same config but switch to "curses" terminal instead of http and I add "plot": "fft" in the config I get the plots popping up in two X windows. I am trying to make this all run headless for serving RadioReference streams, so I really would like to get the HTTP server plots working for occasional monitoring, etc. Is there anything special I need to do in order to see plots on the web page when running multi_rx.py?

Here's the "terminal" section of my JSON cfg:

"terminal": {
"module": "terminal.py",
"terminal_type": "http:0.0.0.0:8125",
"curses_plot_interval": 0.2,
"http_plot_interval": 1.0,
"http_plot_directory": "../www/images"
}

I could just go back to running two "rx.py" instances, but might also want to consider adding additional systems in the same range as the SDR dongles are tuned to, so in that case I think I'd need to be using multi_rx.py.

Thanks in advance...
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
1,017
Location
NE Wisconsin
"Plots" via the HTTP Console when using multi_rx.py are only functional when operating on Trunked Radio Systems.
However, the Curses terminal does support display of the plot screens (Keys 1-6).
 
Last edited:

rr445566

Newbie
Premium Subscriber
Joined
Jun 12, 2023
Messages
4
Location
Boston, MA
Well that would explain it. Was this an intentional design choice? It seems like it should be possible conceptually to make them work, as witnessed by the fact that they work with curses mode.

Also, I don't really see anything on the HTTP server - not even frequency of the system. Is there anything useful that the HTTP server provides when running multi_rx.py with a non-trunked system?
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
1,017
Location
NE Wisconsin
Well that would explain it. Was this an intentional design choice? It seems like it should be possible conceptually to make them work, as witnessed by the fact that they work with curses mode.
Perhaps you might care to submit a pull request" on GitHub asking the author to include conventional system frequency, talkgroup info,
radio id's and applicable plot modes to the HTTP server to augment functionality of the multi_rx.py application?
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,398
Location
Talbot Co, MD
Well that would explain it. Was this an intentional design choice? It seems like it should be possible conceptually to make them work, as witnessed by the fact that they work with curses mode.

Also, I don't really see anything on the HTTP server - not even frequency of the system. Is there anything useful that the HTTP server provides when running multi_rx.py with a non-trunked system?
I wouldn't say "by design" as such, more that the http browser code expects to find data structure being passed in that are consistent with trunking. Obviously it could be made to work, but it's a bunch of effort that would have very limited application because the vast majority of op25 users are monitoring trunked systems.
 

rr445566

Newbie
Premium Subscriber
Joined
Jun 12, 2023
Messages
4
Location
Boston, MA
Perhaps "by design" was a bad choice of words - really what I was trying to ask was whether this should work (meaning I screwed up something in my setup), or if it wasn't supposed to work in this setup. Sounds like the latter. Not a big deal to me as there are a few ways I can get the plots if needed for debug. But thanks for clarifying.

On a maybe somewhat related note, should I be able to get metadata work on multi_rx.py when monitoring a non-trunked P25P1 system? (with the goal of pushing them up to Broadcastify as alpha tags)
 
Top