 
            For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            Wow, has the wireshark dissector been kept up to date? I thought it was abandoned long ago!
On 17 December 2017 at 12:08, gnorbury@bondcar.com [op25-dev] < op25-dev@yahoogroups.com> wrote:
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            The rx.py app and underlying library code supports sending raw UDP data to wireshark, but I think the wireshark code itself is rather out of date and (at least when I tried it) did not work properly.
That said, the "--wireshark-port" feature is also used for streaming audio frames over udp in cases where you want to play the audio remotely from the SDR.
 
            Graham,
Thanks for all your hard work on updating and adding new features to op25.
 
            rx.py doesn't look for signals like SIGUSR1 at present, but there's no reason it couldn't be implemented if desired. There is already a facility to lock out TG's using the "L" key in the terminal, but it doesn't write back to the blacklist file.
 
            On 12/17/17 18:47, gnorbury@bondcar.com [op25-dev] wrote:
rx.py doesn't look for signals like SIGUSR1 at present, but there's no reason it couldn't be implemented if desired. There is already a facility to lock out TG's using the "L" key in the terminal, but it
Thanks, Graham. If it could handle the signal from an external program, that would be ideal. It would be managed remotely, and by people I don't necessarily want at the command-line. :)
I tried hacking it together myself but my python skills are lacking. But I can build my web UI and middleware in another language if rx.py can handle the signal.
 
            Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well.
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Saturday, December 16, 2017 7:08 PM To: op25-dev@yahoogroups.com Subject: [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            rx.py can already monitor conventional traffic. In fact this feature was there before trunking was.
On Tue, 19 Dec 2017 at 06:55, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well.
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
*From:* op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] *Sent:* Saturday, December 16, 2017 7:08 PM *To:* op25-dev@yahoogroups.com *Subject:* [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            OK. How does one setup the rx.py command line and/or trunk.tsv file if required to monitor conventional traffic? Can you please post example configuration?
Thank you,
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Monday, December 18, 2017 2:43 PM To: op25-dev@yahoogroups.com Subject: Re: [op25-dev] Recent changes
rx.py can already monitor conventional traffic. In fact this feature was there before trunking was.
On Tue, 19 Dec 2017 at 06:55, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well.
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Saturday, December 16, 2017 7:08 PM To: op25-dev@yahoogroups.com Subject: [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            Hi Bill,
trunk.csv isn't required for conventional. Here's a few exmaple commands I have used with my USRPs (via UHD) and airspy:-
../rx.py -S 2500000 -o 50000 -q 2 -f 434075000 --args 'uhd' -D fsk4 -P fft --gains 'PGA:10'
../rx.py -S 1000000 -o 50000 -q 39 -f 434075000 --args 'uhd' --gains 'PGA:40'
../rx.py -S 2500000 -o 50000 -q 2 -f 438187500 --args 'airspy' -D fsk4 -P fft --gains 'MIX:5'
/rx.py -S 1000000 -o 50000 -q 2 -f 438187500 --args 'uhd' -D fsk4 -P fft --gains 'PGA:30'
Cheers, Matt
On 19 December 2017 at 09:06, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
OK. How does one setup the rx.py command line and/or trunk.tsv file if required to monitor conventional traffic? Can you please post example configuration?
Thank you,
Bill, WA8WG
*From:* op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] *Sent:* Monday, December 18, 2017 2:43 PM *To:* op25-dev@yahoogroups.com *Subject:* Re: [op25-dev] Recent changes
rx.py can already monitor conventional traffic. In fact this feature was there before trunking was.
On Tue, 19 Dec 2017 at 06:55, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well..
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
*From:* op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] *Sent:* Saturday, December 16, 2017 7:08 PM *To:* op25-dev@yahoogroups.com *Subject:* [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            Matt,
I am using an RTL SDR with my rx.py command line formatted <./rx.py --args 'rtl' --gains 'lna:49' -f 146.460e6 -S 1000000 -q 0 -D fsk4 -V –U>
but no joy. Please see the screen output below…. Any ideas? Are you sure that I don’t need some sort of trunk.tsv? How would one
input the desired NAC?
Thank you,
Bill, WA8WG
linux; GNU C++ version 6.3.0 20170221; Boost_106200; UHD_003.009.005-0-unknown
gr-osmosdr 0.1.4 (0.1.4) gnuradio 3.7.10
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy soapy redpitaya
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
gain: name: LNA range: start 0 stop 0 step 0
setting gain lna to 49
supported sample rates 250000-2560000 step 24000
Exact sample rate is: 1000000.026491 Hz
[R82XX] PLL not locked!
set_center_freq: 146460000
p25_demodulator::connect_chain() demod_type=fsk4
Project 25 IMBE Encoder/Decoder Fixed-Point implementation
Developed by Pavel Yazev E-mail: pyazev@gmail.com
Version 1.0 (c) Copyright 2009
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; see the file ``LICENSE'' for details.
op25_audio::open_socket(): enabled udp host(127.0.0.1), wireshark(23456), audio(23456)
p25_frame_assembler_impl: do_imbe[1], do_output[0], do_audio_output[1], do_phase2_tdma[0], do_nocrypt[0]
Exception in thread Thread-2 (most likely raised during interpreter shutdown):rock64@rock64:~/op25/op25/gr-op25_repeater/apps$
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Monday, December 18, 2017 5:54 PM To: op25-dev@yahoogroups.com Subject: Re: [op25-dev] Recent changes
Hi Bill,
trunk.csv isn't required for conventional. Here's a few exmaple commands I have used with my USRPs (via UHD) and airspy:-
./rx.py -S 2500000 -o 50000 -q 2 -f 434075000 --args 'uhd' -D fsk4 -P fft --gains 'PGA:10'
./rx.py -S 1000000 -o 50000 -q 39 -f 434075000 --args 'uhd' --gains 'PGA:40'
./rx.py -S 2500000 -o 50000 -q 2 -f 438187500 --args 'airspy' -D fsk4 -P fft --gains 'MIX:5'
/rx.py -S 1000000 -o 50000 -q 2 -f 438187500 --args 'uhd' -D fsk4 -P fft --gains 'PGA:30'
Cheers, Matt
On 19 December 2017 at 09:06, 'William Becks' mailto:wa8wg@centurytel.net wa8wg@centurytel.net [op25-dev] < mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com> wrote:
OK. How does one setup the rx.py command line and/or trunk.tsv file if required to monitor conventional traffic? Can you please post example configuration?
Thank you,
Bill, WA8WG
From: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com [mailto: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com] Sent: Monday, December 18, 2017 2:43 PM To: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com Subject: Re: [op25-dev] Recent changes
rx.py can already monitor conventional traffic. In fact this feature was there before trunking was.
On Tue, 19 Dec 2017 at 06:55, 'William Becks' mailto:wa8wg@centurytel.net wa8wg@centurytel.net [op25-dev] < mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com> wrote:
Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well..
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
From: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com [mailto: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com] Sent: Saturday, December 16, 2017 7:08 PM To: mailto:op25-dev@yahoogroups.com op25-dev@yahoogroups.com Subject: [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            Matt.
I don’t think this works with Graham’s op25 (rx.py) fork having tried a number of configurations (combinations) but not able to decode conventional P25 non-trunked IMBE. Perhaps Graham or Max can elaborate if this functionality is still supported.
Thanks again!
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Monday, December 18, 2017 5:54 PM To: op25-dev@yahoogroups.com Subject: Re: [op25-dev] Recent changes
Hi Bill,
trunk.csv isn't required for conventional. Here's a few exmaple commands I have used with my USRPs (via UHD) and airspy:-
../rx.py -S 2500000 -o 50000 -q 2 -f 434075000 --args 'uhd' -D fsk4 -P fft --gains 'PGA:10'
../rx.py -S 1000000 -o 50000 -q 39 -f 434075000 --args 'uhd' --gains 'PGA:40'
../rx.py -S 2500000 -o 50000 -q 2 -f 438187500 --args 'airspy' -D fsk4 -P fft --gains 'MIX:5'
/rx.py -S 1000000 -o 50000 -q 2 -f 438187500 --args 'uhd' -D fsk4 -P fft --gains 'PGA:30'
Cheers, Matt
On 19 December 2017 at 09:06, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
OK. How does one setup the rx.py command line and/or trunk.tsv file if required to monitor conventional traffic? Can you please post example configuration?
Thank you,
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Monday, December 18, 2017 2:43 PM To: op25-dev@yahoogroups.com Subject: Re: [op25-dev] Recent changes
rx.py can already monitor conventional traffic. In fact this feature was there before trunking was.
On Tue, 19 Dec 2017 at 06:55, 'William Becks' wa8wg@centurytel.net [op25-dev] op25-dev@yahoogroups.com wrote:
Graham,
Thank you so much for your efforts in the continuing development of op25. Especially for the recent coding changes allowing for FQDN --wireshark-host command line entry. The addition of the --nocrypt function was very innovative and solved an issue in my area where some talkgroups use a mix of clear, and encrypted transmissions that were previously impossible to reject without also filtering the clear voice transmissions as well..
I am personally very grateful for the work that you and Max have done to improve the code. If I could wish for one new feature, it would be to incorporate code allowing rx.py to monitor conventional IMBE non-trunked transmissions. Such a feature would be great for monitoring small non-trunked systems in addition to providing a great resource to monitor and analyze amateur P25 transmissions from MMDVM and similar devices.
Keep up the good work and best of holiday greetings!
Bill, WA8WG
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Saturday, December 16, 2017 7:08 PM To: op25-dev@yahoogroups.com Subject: [op25-dev] Recent changes
For my version of op25 I've just pushed a change to support using hostnames/fully qualified domain names (or straight IP addresses) in the --wireshark-host command line parameter (-W).
Earlier changes include the addition of the source radio id (where available) to the terminal screen, as well as indication of when encryption is active (only applies when using --nocrypt command line option).
 
            Bill, Matt,
I'm not aware of a specific reason why conventional wouldn't work, but I'm happy to look at it if we can localize the problem. Since I don't have any P25 conventional to test against, might I request the first step is to enable log level 10 (-v 10) and then park the app on top of a conventional frequency and see what appears in the log.
-D fsk4 (this is a guess, so try with and without) -f <desired frequency> -V -U -v 10 -S 960000 -q <ppm> -d <offset> (or whatever values work for you on a trunked system)
You shouldn't need (or want to use) the -T trunk.tsv parameter.
In an ideal world you'd see some LDU1 / LDU2 messages in the log and hear audio, but I'm going to guess that's not happening right now for whatever reason.
 
            Graham,
Below are two test examples of my attempts to monitor conventional P25 (IMBE) voice transmissions. I am using my VHF XTS5000 as a test signal generator having one of the conventional personalities programed for ASTRO25 IMBE on an amateur simplex (146.460) frequency. However, rx.py reports an exception and terminates without decoding LDU1/LDU2. In a previous attempt, I setup a dummy.tsv file to include the NAC with control channels fields set to “”, and then with set to “0” but no joy although rx.py didn’t report an exception and terminate. There was just no indication of decoding LDU1/LDU2 in the console output with an on-frequency P25 signal applied to the SDR.
Please let me know if there are any other tests that might help to diagnose this.
Thank you,
Bill, WA8WG
Test example #1: < imbe.sh> ./rx.py --args 'rtl' --gains 'lna:49' -f 146..460e6 -q 0 -S 1000000 -v 10 -V -U 2> stderr.2
Terminal output
rock64@rock64:~/op25/op25/gr-op25_repeater/apps$ ./imbe.sh
linux; GNU C++ version 6.3.0 20170221; Boost_106200; UHD_003.009.005-0-unknown
gain: name: LNA range: start 0 stop 0 step 0
setting gain lna to 49
supported sample rates 250000-2560000 step 24000
set_center_freq: 146460000
rock64@rock64:~/op25/op25/gr-op25_repeater/apps$
Error log output
gr-osmosdr 0.1.4 (0.1.4) gnuradio 3.7.10
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy soapy redpitaya
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
Exact sample rate is: 1000000.026491 Hz
[R82XX] PLL not locked!
p25_demodulator::connect_chain() demod_type=cqpsk
Project 25 IMBE Encoder/Decoder Fixed-Point implementation
Developed by Pavel Yazev E-mail: pyazev@gmail.com
Version 1.0 (c) Copyright 2009
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; see the file ``LICENSE'' for details.
op25_audio::open_socket(): enabled udp host(127.0.0.1), wireshark(23456), audio(23456)
p25_frame_assembler_impl: do_imbe[1], do_output[0], do_audio_output[1], do_phase2_tdma[0], do_nocrypt[0]
audio device: default
main: exception occurred
main: exception:
Traceback (most recent call last):
File "./rx.py", line 778, in <module>
if tb.process_qmsg(msg):
File "./rx.py", line 731, in process_qmsg
js = self.trunk_rx.to_json()
File "/home/rock64/op25/op25/gr-op25_repeater/apps/trunking.py", line 726, in to_json
d[self.current_nac]['srcaddr'] = self.current_srcaddr
KeyError: None
Exception in thread Thread-2 (most likely raised during interpreter shutdown):
Test example #2: < imbe.sh> ./rx.py --args 'rtl' --gains 'lna:49' -f 146..460e6 -q 0 -S 1000000 –D fsk4 -v 10 -V -U 2> stderr.2
Terminal Output
rock64@rock64:~/op25/op25/gr-op25_repeater/apps$ ./imbe.sh
linux; GNU C++ version 6.3.0 20170221; Boost_106200; UHD_003.009.005-0-unknown
gain: name: LNA range: start 0 stop 0 step 0
setting gain lna to 49
supported sample rates 250000-2560000 step 24000
set_center_freq: 146460000
rock64@rock64:~/op25/op25/gr-op25_repeater/apps$
Error log output
gr-osmosdr 0.1.4 (0.1.4) gnuradio 3.7.10
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy soapy redpitaya
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
Exact sample rate is: 1000000.026491 Hz
[R82XX] PLL not locked!
p25_demodulator::connect_chain() demod_type=fsk4
Project 25 IMBE Encoder/Decoder Fixed-Point implementation
Developed by Pavel Yazev E-mail: pyazev@gmail.com
Version 1.0 (c) Copyright 2009
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; see the file ``LICENSE'' for details.
op25_audio::open_socket(): enabled udp host(127.0.0.1), wireshark(23456), audio(23456)
p25_frame_assembler_impl: do_imbe[1], do_output[0], do_audio_output[1], do_phase2_tdma[0], do_nocrypt[0]
audio device: default
main: exception occurred
main: exception:
Traceback (most recent call last):
File "./rx.py", line 778, in <module>
if tb.process_qmsg(msg):
File "./rx.py", line 731, in process_qmsg
js = self.trunk_rx.to_json()
File "/home/rock64/op25/op25/gr-op25_repeater/apps/trunking.py", line 726, in to_json
d[self.current_nac]['srcaddr'] = self.current_srcaddr
KeyError: None
Exception in thread Thread-2 (most likely raised during interpreter shutdown):
From: op25-dev@yahoogroups.com [mailto:op25-dev@yahoogroups.com] Sent: Wednesday, December 20, 2017 6:00 AM To: op25-dev@yahoogroups.com Subject: RE: [op25-dev] Recent changes
Bill, Matt,
I'm not aware of a specific reason why conventional wouldn't work, but I'm happy to look at it if we can localize the problem. Since I don't have any P25 conventional to test against, might I request the first step is to enable log level 10 (-v 10) and then park the app on top of a conventional frequency and see what appears in the log.
-D fsk4 (this is a guess, so try with and without) -f <desired frequency> -V -U -v 10 -S 960000 -q <ppm> -d <offset> (or whatever values work for you on a trunked system)
You shouldn't need (or want to use) the -T trunk.tsv parameter.
In an ideal world you'd see some LDU1 / LDU2 messages in the log and hear audio, but I'm going to guess that's not happening right now for whatever reason.
 
            A fix for the trunking.py assertion has been pushed. While I'm told that it now works and plays conventional P25 audio thanks Bill!), it's important to note that nothing is going to be displayed on the terminal screen because all that data is derived from trunking messages that don't exist on conventional channels.



