OP25 VirtualBox Project - Run OP25 on Windows 7

Status
Not open for further replies.

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
Is it possible to have the logs output and op25_stats.sh to record when a talkgroup is encrypted?
If you remove the --nocrypt command line option the app will produce the same stats and logs for both unencrypted and encrypted traffic. It's also play garbled audio...

With --nocrypt enabled, encrypted audio is muted and the voice frames aren't decoded, but signaling will be decoded and logged same as before.
 

VA3DBJ

Ontario Database Admin
Database Admin
Joined
Dec 19, 2002
Messages
512
Location
Durham Region, Ontario
Thanks boatbod,

I have been messing around with it, and even after a number of hours, op25-tgid-frequency.txt, op25-tagless-frequency.txt and op25-tagless-numeric.txt end up being empty. Not sure whats up there. All the other files seem fine, unless I am doing something wrong. I have tested with different log (v) values.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
Thanks boatbod,

I have been messing around with it, and even after a number of hours, op25-tgid-frequency.txt, op25-tagless-frequency.txt and op25-tagless-numeric.txt end up being empty. Not sure whats up there. All the other files seem fine, unless I am doing something wrong. I have tested with different log (v) values.

Do you have the log level configured sufficiently high? You'll need at least "-v 5" in the command line for the stats to work.
 

N9TKF

Member
Joined
Jul 29, 2012
Messages
8
Looked through the message thread but didn't find an answer. I start ./rx.py and get the errors below and then back to the command line. Anyone have a solution to try?

john@john-GB-BXA8-5557:~/op25/op25/gr-op25_repeater/apps$ ./rx.py --args "rtl=0" -N 'LNA:48' -f 385.0625e6 -S 2560000 -q 82
linux; GNU C++ version 4.8.4; Boost_105400; UHD_003.010.git-90-g33419b5f

gr-osmosdr v0.1.4-58-g810a981d (0.1.5git) gnuradio 3.7.10git-12-gddb1e778
built-in source types: file osmosdr fcd rtl rtl_tcp uhd hackrf bladerf rfspace airspy redpitaya
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Detached kernel driver
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
gain: name: LNA range: start 0 stop 0 step 0
setting gain LNA to 48
supported sample rates 250000-2560000 step 24000
[R82XX] PLL not locked!
Using Volk machine: avx_64_mmx
Using two-stage decimator for speed=2560000, decim=20/4 if1=128000 if2=32000
Traceback (most recent call last):
File "./rx.py", line 837, in <module>
rx = rx_main()
File "./rx.py", line 761, in __init__
self.tb = p25_rx_block(self.options)
File "./rx.py", line 186, in __init__
self.open_usrp()
File "./rx.py", line 688, in open_usrp
self.__set_rx_from_osmosdr()
File "./rx.py", line 633, in __set_rx_from_osmosdr
self.__build_graph(self.src, capture_rate)
File "./rx.py", line 260, in __build_graph
self.decoder = p25_decoder.p25_decoder_sink_b(dest='audio', do_imbe=self.options.vocoder, num_ambe=num_ambe, wireshark_host=self.options.wireshark_host, udp_port=udp_port, do_msgq = True, msgq=self.rx_q, audio_output=self.options.audio_output, debug=self.options.verbosity, nocrypt=self.options.nocrypt)
File "/home/john/op25/op25/gr-op25_repeater/apps/p25_decoder.py", line 106, in __init__
self.p25_decoders.append(op25_repeater.p25_frame_assembler(wireshark_host, udp_port, debug, do_imbe, do_output, do_msgq, msgq, do_audio_output, do_phase2_tdma, do_nocrypt))
File "/home/john/target/lib/python2.7/dist-packages/op25_repeater/op25_repeater_swig.py", line 722, in make
return _op25_repeater_swig.p25_frame_assembler_make(*args, **kwargs)
TypeError: p25_frame_assembler_make() takes at most 9 arguments (10 given)
Reattached kernel driver
john@john-GB-BXA8-5557:~/op25/op25/gr-op25_repeater/apps$
 

N6ML

Member
Joined
Sep 26, 2008
Messages
1,277
Looked through the message thread but didn't find an answer. I start ./rx.py and get the errors below and then back to the command line. Anyone have a solution to try?

<SNIP>

TypeError: p25_frame_assembler_make() takes at most 9 arguments (10 given)

Looks like your git repo doesn't match what you have installed in /usr/local. Run install.sh
 

N9TKF

Member
Joined
Jul 29, 2012
Messages
8
Looks like your git repo doesn't match what you have installed in /usr/local. Run install.sh

Ran install.sh with the same results. What should I look for in usr/local? fwiw I have op25 with scope.py on the same machine. Scope.py is working ok but very choppy audio.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
Ran install.sh with the same results. What should I look for in usr/local? fwiw I have op25 with scope.py on the same machine. Scope.py is working ok but very choppy audio.

Note that you CANNOT have scope.py and rx.py variants installed at the same time due to differences in the underlying library code. When switching versions you have to first "make uninstall" before you do the "make install" of the new version.

At this point you may need to go into the build directory of the old scope.py and do a "make install" immediately followed by a "make uninstall" in order to clean things up. Once the old version is out of /usr/local you can install the current sw.

One of the biggest changes between scope.py and rx.py is audio buffering. You get way less underruns, pops and stutters. That alone is worth the upgrade, and on top of that there are significant improvements to trunking logic and features too.
 

N9TKF

Member
Joined
Jul 29, 2012
Messages
8
Thanks dseven and boatbod for the notes. I will clean up the installations and start again.
 

maus92

Member
Premium Subscriber
Joined
Jun 23, 2004
Messages
8,125
Location
The OP
I know that OP25 can do scatter plots. Has anyone been able to add an eye diagram function to the program. Or add color to the charts? Is this possible?
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
I know that OP25 can do scatter plots. Has anyone been able to add an eye diagram function to the program. Or add color to the charts? Is this possible?
Op25 already has an eye diagram capability but it only works with fsk4 modulation, not qpsk. The qpsk alternative is the correlation plot (#2).

You can modify the gnuplot code; it's all contained in the gr_gnuplot.py module.
 

KA1RBI

Member
Joined
Aug 15, 2008
Messages
799
Location
Portage Escarpment
Op25 already has an eye diagram capability but it only works with fsk4 modulation, not qpsk.

Not exactly true. The eye diagram plot does require you to run with the "-D fsk4" option, and that option will very likely result in poor decoding if the signal is actually a pqsk modulated signal.

However the eye diagram itself will plot qpsk signals just as well as it plots fsk4 ones. The eye diagram (when properly interpreted) is in fact the best way to identify which of these two modulations is in use.

The moral of the story is the "-D" option should match the system being monitored. However there's no reason you can't run "-D fsk4" temporarily so as to enable the eye diagram.

We could readily add the ability to plot the eye diagram in qpsk mode; the reason why this isn't currently done is the addition of an FM demodulator would add extra overhead - perhaps not a lot but it all adds up.

OP25 can do scatter plots.

What exactly do you mean by scatter plots?

Max
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
We could readily add the ability to plot the eye diagram in qpsk mode; the reason why this isn't currently done is the addition of an FM demodulator would add extra overhead - perhaps not a lot but it all adds up.
Max

Just for the heck of it I ran a test to compare cpu load with and without the additional fm demodulator chain necessary to support a datascope plot on qpsk demod.
27% cpu with no active plots and just the qpsk demod chain
34% cpu with no active plots, the qpsk demod chain and the fm demod chain

As Max says, its actually a pretty simple change to just two python modules. The question is whether it's worth implementing as a feature or not...
 

SDRPlayer

Member
Premium Subscriber
Joined
Jul 22, 2016
Messages
185
cpu load is an issue across all p25 decoders, i'd like see op25s usage remain as it is. great work Max and Boatbod!
 

maus92

Member
Premium Subscriber
Joined
Jun 23, 2004
Messages
8,125
Location
The OP
Not exactly true. The eye diagram plot does require you to run with the "-D fsk4" option, and that option will very likely result in poor decoding if the signal is actually a pqsk modulated signal.

However the eye diagram itself will plot qpsk signals just as well as it plots fsk4 ones. The eye diagram (when properly interpreted) is in fact the best way to identify which of these two modulations is in use.

The moral of the story is the "-D" option should match the system being monitored. However there's no reason you can't run "-D fsk4" temporarily so as to enable the eye diagram.

We could readily add the ability to plot the eye diagram in qpsk mode; the reason why this isn't currently done is the addition of an FM demodulator would add extra overhead - perhaps not a lot but it all adds up.



What exactly do you mean by scatter plots?

Max
Something similar to these;

https://dsp.stackexchange.com/questions/42756/scatter-plot-of-oqpsk?rq=1
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,375
Location
Talbot Co, MD
I was thinking of an implementation that selectively enabled the fm decoder only when a datascope plot was being displayed.

Datascope (plot #4) is now supported for "cqpsk" modulation type (as well as 'fsk4') on the boatbod fork.

The implementation is based on adding an auxiliary fm demodulator chain into the flowgraph only when required, so there is no cpu impact unless you are actually displaying that specific plot type.

Note: all the various plot types have considerable cpu overhead so I don't recommend running them on low end hardware such as the rpi3 as they rob cpu cycles from more important tasks such as audio decoding.
 

maus92

Member
Premium Subscriber
Joined
Jun 23, 2004
Messages
8,125
Location
The OP
OK, so I have successfully installed op25 on a Raspberry Pi 3 B+. Runs, but no audio. Can someone look at my command line below and point me in the right direction?

./rx.py --args 'rtl' -N 'LNA:47' -S 2400000 -f 773.83125e6 -o 25000 -T trunk.tsv -n -w -2 -U 2> stderr.2


The SDR is running and op25 decodes the TGIDs and the the plots show good signal, just no audio. The internal device is a bcm2835 ALSA.

BTW the datascope plot looks cool, thx. It's a bit choppy on the Pi (haven't tried it on the desktop yet.)

Thanks.


NEVERMIND - operator error. The audio source was set to auto, needed to be set to the 3.5mm jack. Works fine now.
 
Last edited:

DRL-XM43

Member
Joined
Jun 23, 2015
Messages
842
Location
Durham Region
OK I have read thru the threads - was going to give it a go, would like TII capability.

My head feels like it is going to splode lol

My only hope I think is if the great team over at DSD+ fastlane crack the nut for me.

Anyway, it was good to read all the stuff in the thread.

D.
 
Status
Not open for further replies.
Top