Welcome to DVSwitch
DVSwitch is a set of tools and programs related to provisioning and operating Amateur Radio digital voice networks.
Purpose
The purpose of DVSwitch is as follows:
1) Allows “local” networking during an outage of the regional national/international network server.
2) Allows a local network operator to “blend” upstream feeds from different Networks (capital N on purpose). These Networks can’t get their act together and learn how to play nice with each other (everyone guilty as far as we are concerned). They may not like people doing this, but the solution is to grow up and work with each other, and not keep trying to force people to take sides.
3) Allows local segregation of localized traffic with more flexibility.
4) Allows experimentation with linking and how it’s done (part 97 specifies experimentation and advancement of the radio art are a core part of amateur radio).
1) Allows “local” networking during an outage of the regional national/international network server.
2) Allows a local network operator to “blend” upstream feeds from different Networks (capital N on purpose). These Networks can’t get their act together and learn how to play nice with each other (everyone guilty as far as we are concerned). They may not like people doing this, but the solution is to grow up and work with each other, and not keep trying to force people to take sides.
3) Allows local segregation of localized traffic with more flexibility.
4) Allows experimentation with linking and how it’s done (part 97 specifies experimentation and advancement of the radio art are a core part of amateur radio).
Mission Statement/Position
Our stated position is:
WHEREAS the Networks continue to be largely islands and are not working together to create a unified network of Networks.
WHEREAS no firm reason has been given by any of the Networks why a *competent* local network operator cannot make this work effectively.
(US ONLY)
WHEREAS 47 CFR 97 (Amateur Radio Service) specifies that a core component of amateur radio is experimentation and advancement of the radio art [97.1(b)].
BE IT RESOLVED the core group of US amateur radio operators and experimenters organized around the DVSwitch project, and in the spirit of USA 47 CFR 97 and its intentions, support the *responsible* and *thoughtful* use of digital voice networking tools to create localized networks that will interconnect to the national/international Networks, and will support users of its tools in order to do this in the most effective and sustainable way possible.
WHEREAS the Networks continue to be largely islands and are not working together to create a unified network of Networks.
WHEREAS no firm reason has been given by any of the Networks why a *competent* local network operator cannot make this work effectively.
(US ONLY)
WHEREAS 47 CFR 97 (Amateur Radio Service) specifies that a core component of amateur radio is experimentation and advancement of the radio art [97.1(b)].
BE IT RESOLVED the core group of US amateur radio operators and experimenters organized around the DVSwitch project, and in the spirit of USA 47 CFR 97 and its intentions, support the *responsible* and *thoughtful* use of digital voice networking tools to create localized networks that will interconnect to the national/international Networks, and will support users of its tools in order to do this in the most effective and sustainable way possible.
Re: [Quantar-Bridge] ASL <-> P25 howto document
Stephen, you are correct. I was a little too fast cutting and pasting text and swapped the order. I have sent the updated pdf to Steve for posting. ‘Hope it helps others. Regards, Tom / K5TRA
|
|
Re: [Quantar-Bridge] ASL <-> P25 howto document
Stephen Brown - K1LNX
Looks great! Thanks Tom! One correction I think needs to be added however (unless I've missed it myself), this should be added on page 11 after the "cd /tmp" step: wget http://dvswitch.org/install-dvswitch-repo 73 Stephen K1LNX
On Wed, Aug 12, 2020 at 2:30 PM Steve N4IRS <szingman@...> wrote:
|
|
ASL <-> P25 howto document
Thanks to Tom, K5TRA we have a new instruction document.
<https://dvswitch.groups.io/g/main/files/P25-AB%20K5TRA.pdf>
The document will help you build an ASL <-> P25 Bridge (includes a P25 Reflector) This is a no frills document. Tom shows you what files to edit and what fields to change. Includes some basic troubleshooting tips. I like the simplicity of this. One of my favorite parts is that Tom ONLY changes the fields that need to change. Nothing more. Since the covers Analog_Bridge, MMDVM_Bridge and P25Gateway this is a good document for anyone bridging to P25 or connecting a Quantar to the P25 MMDVM Network for that matter. The document highlights one of the most basic principles of DVSwitch. That is the fact that most of the default settings just work. You don't have to edit every field in every file. If you understand the basic concept of DVSwitch you can get up and running pretty quickly. I'll leave it at this since it tells most everything you need to know: A very large thank you to Tom for taking the time to create the document.
|
|
Re: dvswitch.sh info - no output
If you are trying to troubleshoot, check Analog_Bridge.log when you
issue the command.
toggle quoted messageShow quoted text
On 8/11/2020 10:38 PM, Tom Corcoran
wrote:
Got it. So no messages.
|
|
Re: dvswitch.sh info - no output
Got it. So no messages.
tnx -- Tom VE3NY
|
|
Re: dvswitch.sh info - no output
info Update ABInfo and send to DVSM/UC
toggle quoted messageShow quoted text
This command refreshes the ABinfo file in /tmp and sends the data to a connected client (DVSwitch Mobile / pyUC)
On 8/11/20 4:42 PM, Tom Corcoran wrote:
When I use the following command I see no message on the DVSM or the DVS ssh session
|
|
dvswitch.sh info - no output
When I use the following command I see no message on the DVSM or the DVS ssh session
./dvswitch.sh info Is the output directed somewhere else? Or is there output ./dvswitch.sh show works as it should. -- Tom VE3NY
|
|
Re: asl.macro documentation / examples
#analog_bridge
Yes you need cmd (copy and paste error)
toggle quoted messageShow quoted text
It's in the same place as your 997 [functions] off the top of my head.
On 8/11/2020 11:43 AM, Tom wrote:
Yes, I looked at the dvswitch.sh yesterday. Pretty cool. My question is implementation from ASL.
|
|
Re: asl.macro documentation / examples
#analog_bridge
Yes, I looked at the dvswitch.sh yesterday. Pretty cool. My question is implementation from ASL.
I typically call shell scripts with a function in the following way: 997=cmd, /usr/local/sbin/on_normal.sh ; Set ON_normal state 1) Are you saying that I don't need cmd, preceeding the path/file ? 2) Is the dvswitch.sh call in the [functions] or [macro] stanza ? Tom
|
|
Re: asl.macro documentation / examples
#analog_bridge
For what you are doing, you will use the macro functions to run a
external program. That program is dvswitch.sh If you run dvswitch.sh
without any parameters:
toggle quoted messageShow quoted text
root@dvswitch:/var/www/html# /opt/Analog_Bridge/dvswitch.sh Usage: /opt/Analog_Bridge/dvswitch.sh { version | mode | tune | ambesize | ambemode | slot | update | tlvAudio | usrpAudio | usrpCodec | tlvPorts | info | show | lookup | mute | message | macro | pushfile | collectProcessDataFiles | collectProcessPushDataFiles | pushurl | collectProcessPushDataFilesHTTP } version {AB|MB|ALL} Show version of dvswitch.sh, Analog_Bridge or MMDVM_Bridge mode {DMR|NXDN|P25|YSF|DSTAR} Set Analog_Bridge digital mode tune tg Tune to specific TG/Reflector ambesize {72|88|49} Set number of bits for ambe data ambemode {DMR|NXDN|P25|YSFN|YSFW|DSTAR} Set AMBE mode slot {1|2} Set DMR slot to transmit on update Update callsign and host databases tlvAudio mode gain Set AMBE audio mode and gain usrpAudio mode gain Set PCM audio mode and gain usrpAgc threshold slope decay Set PCM audio agc threshold slope and decay usrpCodec {SLIN|ULAW|ADPCM} Set AB -> DVSM/UC audio codec tlvPorts rxport txport Set Analog_Bridge receive and transmit ports info Update ABInfo and send to DVSM/UC show Pretty print the ABInfo json file lookup Lookup a DMR ID/call in the local database mute {OFF|USRP|TLV|BOTH} Cause Aanlog_Bridge to mute a stream message msg Send a text message to DVSM/UC macro {file|text} Send a macro collection to DVSM pushfile file Push file to DVSM pushurl url Push URL to DVSM collectProcessDataFiles Collect and prepare DVSM data files collectProcessPushDataFiles Collect, prepare and upload DVSM data files collectProcessPushDataFilesHTTP Collect, prepare and upload DVSM data files over http reloadDatabase Tell AB to reload database files into memory getEnabledModes Return the list of enabled modes in MB.ini for example you would create a macro to run a external program in rpt.conf 73 = /opt/MMDVM_Bridge/dvswitch.sh tune 10200 dvswitch.sh would tell AB and MB to change TG to 10200 dvswitch.sh update dvswitch.sh would download all the host files and databases needed to /var/lib/dvswitch and /var/lib/mmdvm Steve N4IRS
On 8/11/2020 10:43 AM, Tom wrote:
ASL to control. I see provisions for that in the files; but no detail.
|
|
Re: asl.macro documentation / examples
#analog_bridge
ASL to control. I see provisions for that in the files; but no detail.
|
|
Re: asl.macro documentation / examples
#analog_bridge
Are you talking about using DVSwitch Mobile with ASL or controlling
AB/MB from ASL?
toggle quoted messageShow quoted text
On 8/11/2020 10:22 AM, Tom wrote:
Where do I find asl.macro documantation and examples ?
|
|
asl.macro documentation / examples
#analog_bridge
Where do I find asl.macro documantation and examples ?
Tom / K5TRA
|
|
Re: ASL to P25 bridge
#analog_bridge
I cleaned some of the early ASL DAHDI troubleshoot messages out of
the thread (86 messages) I hope someone reading the thread will
learn some things.
toggle quoted messageShow quoted text
Steve N4IRS
On 8/10/20 8:38 PM, Tom wrote:
Steve,
|
|
Re: ASL to P25 bridge
#analog_bridge
Inline
A general comment, most of the default values are setup for the more common connectivity. Most of the default values will "just work" Off the top of my head AB <-> P25 only needed changes in AB.ini. On 8/10/20 8:38 PM, Tom wrote:
Steve,RptAddress is valid in the [General] stanza, not in the network stanza 2) What are valid settings for InactivityTimeout ? I assume it is in units of minutes. Is a value of 0 valid ? Does that set it to infinity?Yes, it's in minutes. 0=no timeout 3) How is Parrot used in MB ?Its not, it used by the Gateway 4) How can I change the reflector connection (on the fly)? Do I need to rewrite the P25Gateway.ini and restart the service?No, you can used dvswitch.sh tune 10200 to tune to NA. (BTW, no Analog to P25 bridges on NA) run dvswitch.sh without parameters will show you what it can do. It's very capable. 73, Steve N4IRS
|
|
Re: ASL to P25 bridge
#analog_bridge
Steve,
The Host files are in ./ . I copied the P25Hosts.ini from /var/lib/mmdvm and the Private_P25Hosts is there; but empty. By commenting out the RptAddress , it seems to have fixed the remaining issues. THANK YOU. I still need to set audio levels, but that should be easy. A final couple of questions: 1) Why remove the RptAddress (what is the significance / purpose of that param)? 2) What are valid settings for InactivityTimeout ? I assume it is in units of minutes. Is a value of 0 valid ? Does that set it to infinity? 3) How is Parrot used in MB ? 4) How can I change the reflector connection (on the fly)? Do I need to rewrite the P25Gateway.ini and restart the service? Thanks again, Tom
|
|
Re: ASL to P25 bridge
#analog_bridge
OK,
toggle quoted messageShow quoted text
So, P25Gateway is not too chatty. Do you have the entry for 10888 in both private and public host file? Change P25Gateway.ini to this: [General] Callsign=K5TRA RptAddress=127.0.0.1 # RptAddress=192.168.0.188 RptPort=32010 LocalPort=42020 Announcements=1 Daemon=0 [Id Lookup] Name=/var/lib/mmdvm/DMRIds.dat Time=24 [Log] FilePath=/var/log/mmdvm FileRoot=P25Gateway [Network] # Port=41000 Port=42010 HostsFile1=./P25Hosts.txt <------------------ Do these files exist in this location? HostsFile2=./Private_P25Hosts.txt <------------------ Do these files exist in this location? ReloadTime=60 # RptAddress=192.168.0.188 <---------------------- Remove this # ParrotAddress=192.168.0.188 # RptAddress=127.0.0.1 ParrotAddress=127.0.0.1 ParrotPort=42011 Startup=10888 # Startup=10100 InactivityTimeout=0 # InactivityTimeout=10 Debug=0
On 8/10/20 7:59 PM, Tom wrote:
I'm back from dinner.
|
|
Re: ASL to P25 bridge
#analog_bridge
I'm back from dinner.
|
|
Re: ASL to P25 bridge
#analog_bridge
I should have caught this before. This is what was missing from the
MB log.
toggle quoted messageShow quoted text
I: 2020-08-10 23:30:51.942 P25 Network Parameters I: 2020-08-10 23:30:51.942 Gateway Address: 127.0.0.1 I: 2020-08-10 23:30:51.942 Gateway Port: 42020 I: 2020-08-10 23:30:51.942 Local Port: 32010 I: 2020-08-10 23:30:51.942 Mode Hang: 3s M: 2020-08-10 23:30:51.943 P25, Opening INI file: DVSwitch.ini M: 2020-08-10 23:30:51.943 P25, Setting [P25] Address -> 127.0.0.1 M: 2020-08-10 23:30:51.943 P25, Setting [P25] TXPort -> 34100 M: 2020-08-10 23:30:51.943 P25, Setting [P25] RXPort -> 34103 M: 2020-08-10 23:30:51.943 P25, Setting [P25] Slot -> 2 M: 2020-08-10 23:30:51.944 P25, Transmitting on 127.0.0.1:34100, and listening on port 34103. Result = 1 M: 2020-08-10 23:30:51.944 Opening P25 network connection For anybody willing to read through the whole thread.
On 8/10/20 7:34 PM, Tom wrote:
It WAS enabled in [P25], but not in [P25 Network] in same file.
|
|
Re: ASL to P25 bridge
#analog_bridge
OK! We now have ASL to MB action. I don't see any log activity at the gateway yet.
I have the dinner call -- I'll be back in 20 minutes or so. Thanks again for all this help. Tom
|
|