OP25 Changing from rx.py to multi_rx.py

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
I'm running the latest Boatbod version of OP25 on VMWare running Linux Mint. This is my command line:

./rx.py --args "rtl" --gains 'lna:40' --nocrypt -S 1000000 -x 2 -q 0 -o 25000 -d -200 -V -U -T cstrunk.tsv -D cqpsk 2> stderr.2 -l http:0.0.0.0:8080

It works. However I would like to try multi_rx.py, which I have never used.

What modifications do I have to make to pull this off? I tried substituting multi_rx.py in the command line, but of course it isn't that simple.
 

wgbecks

Active Member
Joined
Jan 17, 2005
Messages
1,145
Reaction score
404
Location
NE Wisconsin
I'm running the latest Boatbod version of OP25 on VMWare running Linux Mint. This is my command line:

./rx.py --args "rtl" --gains 'lna:40' --nocrypt -S 1000000 -x 2 -q 0 -o 25000 -d -200 -V -U -T cstrunk.tsv -D cqpsk 2> stderr.2 -l http:0.0.0.0:8080

It works. However I would like to try multi_rx.py, which I have never used.

What modifications do I have to make to pull this off? I tried substituting multi_rx.py in the command line, but of course it isn't that simple.
You have to create a JSON file to use with your multi_rx.py command line. See the example JSON's contained in the apps folder
as well as the op25-multi_rx.sh script in the op25 folder.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
I can't get it to work. All I want is to use two dongles on a type 1 P25 system. I only need the audio on the laptop itself.
Control channel is 856.1625; WACN BEE00, NAC is 547, SYS ID is 544. I'm not sure of the meaning of some of the entries in the .json file.
 

Attachments

  • CS.json.zip
    1 KB · Views: 12

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
If you start with the file "p25_single_rtl_example.json" as your base configuration template, you just have to add the control channel frequency on line 41 for it to start trunking and receiving.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
If you start with the file "p25_single_rtl_example.json" as your base configuration template, you just have to add the control channel frequency on line 41 for it to start trunking and receiving.
Okay, that worked, thanks. Where do I put the talkgroup .tsv file, somewhere in the .json file? Also where to put the command to bring up the web browser display?
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
Okay, that worked, thanks. Where do I put the talkgroup .tsv file, somewhere in the .json file? Also where to put the command to bring up the web browser display?
The talkgroup.tsv file gets referenced in the trunking section using the "tgid_tags_file" parameter.
To enable the web interface, look in the terminal section and edit the "terminal_type" parameter. The easiest thing is to comment out the curses entry and un-comment the http entry.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
The talkgroup.tsv file gets referenced in the trunking section using the "tgid_tags_file" parameter.
To enable the web interface, look in the terminal section and edit the "terminal_type" parameter. The easiest thing is to comment out the curses entry and un-comment the http entry.
Thanks, I am now up and running with multi rx.py with the web interface.

My last step is to utilize two dongles. Will it utilize two dongles automatically if I have two connected, or must I specify them in the .json file? If so, which lines and what information do I need to edit? Both of my dongles have unique serial numbers.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
My last step is to utilize two dongles. Will it utilize two dongles automatically if I have two connected, or must I specify them in the .json file? If so, which lines and what information do I need to edit? Both of my dongles have unique serial numbers.
Using two (or more) dongles is generally only beneficial if you want to monitor two (or more) channels simultaneously. Let me know your use-case and I'll advise further.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
Using two (or more) dongles is generally only beneficial if you want to monitor two (or more) channels simultaneously. Let me know your use-case and I'll advise further.
I only monitor one system at a time, only a single site and a single control channel. So I really wouldn't benefit from using more than one dongle?
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
In addition, I noted something else. In the .json file, under the "Trunking" section, I tried changing the name of the trunked system from "Trunked System" to "Broward County". This caused the program to not run. All I got on the GUI was "Waiting for Data" and "0 tbsk" in the curses display. I changed it back to "Trunked System" and it worked again. This makes no sense.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
I only monitor one system at a time, only a single site and a single control channel. So I really wouldn't benefit from using more than one dongle?
No, there's nothing an extra dongle will enable you to do in that scenario.
The change from rx.py to multi_rx.py will however allow you to utilize the new UI, which IMO is pretty nice compared to the old one.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
No, there's nothing an extra dongle will enable you to do in that scenario.
The change from rx.py to multi_rx.py will however allow you to utilize the new UI, which IMO is pretty nice compared to the old one.
Thanks!
I noted something else. In the .json file, under the "Trunking" section, I tried changing the name of the trunked system from "Trunked System" to "Broward County". This caused the program to not run. All I got on the GUI was "Waiting for Data" and "0 tbsk" in the curses display. I changed it back to "Trunked System" and it worked again.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
Thanks!
I noted something else. In the .json file, under the "Trunking" section, I tried changing the name of the trunked system from "Trunked System" to "Broward County". This caused the program to not run. All I got on the GUI was "Waiting for Data" and "0 tbsk" in the curses display. I changed it back to "Trunked System" and it worked again.
The "sysname" parameter in the trunking section of the config file defines the name that channels use to define which specific trunked system they want to associate with. If you change sysname, you also have to change "trunking_sysname" in channels.
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
The "sysname" parameter in the trunking section of the config file defines the name that channels use to define which specific trunked system they want to associate with. If you change sysname, you also have to change "trunking_sysname" in channels.
Got it, thanks again.
One last question: In the new user interface, I have selected "Enable Smart Colors". Where do I go to view or edit these colors?
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
Got it, thanks again.
One last question: In the new user interface, I have selected "Enable Smart Colors". Where do I go to view or edit these colors?
The colors are defined in the .json configuration file. See the example in cfg.json down in the terminal section.

Here's what I'm using for my streaming server:
Code:
    "terminal": {
        "module": "terminal.py",
        "terminal_type": "http:192.168.3.13:8081",
        "curses_plot_interval": 0.1,
        "http_plot_interval": 1.0,
        "http_plot_directory": "../www/images",
        "smart_colors": [
            { "keywords": [ "fire" ], "color":"#ff5c5c" },
            { "keywords": [ "pd", "police", "sheriff", "so", "law", "msp" ], "color": "#66aaff" },
            { "keywords": [ "ems", "med", "ambulance", "miemss" ], "color": "#ffb84d" }
        ]
    }
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
I copied and pasted what you have under "smart colors" in your .json file, into my .json file. My .json file had no entry for "smart colors".
The program won't launch with this configuration. I suspect lines 91 and 92 are the culprits; the colons are highlighted in red and I can't fix it.
 

Attachments

  • 1-BCFRTAC (copy).json.zip
    1.1 KB · Views: 1

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
Thanks, I got everything working.
I had been using "p25_rtl_example.json" as my base for modification. This example has no "Smart Color" options in it. So I started with "cfg.json" as this example has the Smart Color starting at line #115. So this is what I used as a starting point to get it working. Yesterday, I tried copy and paste from your example in post #15, but the program wouldn't open. I suspect formatting problems which I couldn't figure out. These .json files don't tolerate any errors or formatting issues at all.
 

boatbod

Member
Joined
Mar 3, 2007
Messages
3,619
Reaction score
1,018
Location
Talbot Co, MD
Thanks, I got everything working.
I had been using "p25_rtl_example.json" as my base for modification. This example has no "Smart Color" options in it. So I started with "cfg.json" as this example has the Smart Color starting at line #115. So this is what I used as a starting point to get it working. Yesterday, I tried copy and paste from your example in post #15, but the program wouldn't open. I suspect formatting problems which I couldn't figure out. These .json files don't tolerate any errors or formatting issues at all.
That's right!. JSON is unforgiving with it's syntax, but there are lots of tools that help spot an error. Personally I use GVim as my editor which does a fine job at that, but then I'm an old school unix guy brought up on "vi". Most people are going to want to find something much easier to learn...
 

W4KRR

Member
Premium Subscriber
Joined
Apr 1, 2001
Messages
3,614
Reaction score
260
Location
Coconut Creek
That's right!. JSON is unforgiving with it's syntax, but there are lots of tools that help spot an error. Personally I use GVim as my editor which does a fine job at that, but then I'm an old school unix guy brought up on "vi". Most people are going to want to find something much easier to learn...
In the .json file, are the "Smart Colors" limited to just three lines of keywords? When I try to add another line of keywords, the program won't run.
 
Top