Welcome to DVSwitch
Purpose
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
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: Bad audio from analog_bridge
Just a guess... but I would look at the analog side in the area of other radios
didital noise getting back through. Perhaps from a synthesized
tx/rx where you are using a analog sound dongle.
On 12/3/2019 1:03 PM, JF via Groups.Io
wrote:
|
|
Re: Bad audio from analog_bridge
You are listening to USRP audio packets. USRP is a simple wrapper around the audio, but it is causing your sound issues. Look at USRPAudio.py for a python solution to audio monitoring.
|
|
Bad audio from analog_bridge
JF
Hi all,
I trying to broadcast our club bm tg to broadcastify. I installed mmdvm_bridge, analog_bridge and md380-emu as I don’t have ambe dongle. I’m monitoring the audio output with nc -l -u -p 32001 | play -t s16 -r 8k -c 1 - I heard the voice correctly but there is a background noise kinda a pulse, I tried playing with gain but no luck, is someone can help with this?
JF
|
|
ai6bx
That is what I thought as I have seen active negotiation in previous iterations of this config as I do still see in the file where I created a peer connecting back to the current Moto 5700 master. I will drop back and try dmrlink.py for analysis as you suggest.
From: <main@DVSwitch.groups.io> on behalf of "Cort N0MJS via Groups.Io" <n0mjs@...>
The telling thing here is what I do NOT see. I don’t see a repeater trying to connect at all. There’s nothing here to diagnose until we at least see a repeater trying to connect to it.
For troubleshooting like this, I recommend not running IPSC_Bridge.py or confbridge.py but just run dmrlink.py by itself – there’s less logging, etc. in the way and it’s easier to focus on the link establishment issue.
Cort Buffington 785-865-7206
|
|
Cort N0MJS <n0mjs@...>
The telling thing here is what I do NOT see. I don’t see a repeater trying to connect at all. There’s nothing here to diagnose until we at least see a repeater trying to connect to it.
For troubleshooting like this, I recommend not running IPSC_Bridge.py or confbridge.py but just run dmrlink.py by itself – there’s less logging, etc. in the way and it’s easier to focus on the link establishment issue.
Cort Buffington 785-865-7206
|
|
ai6bx
Court,
I have stripped back to a single system in the DMRlink.cfg file however it is not linking with the DMR repeater I have operating in peer mode. Previously, last week, this was working however I stupidly did not save a copy of that cfg file as I realized there were too many other issues and started back from scratch building in the version containing the IPSC_Bridge. Following is the output I receive when starting either IPSC_Bridge or conf bridge. Both seem to give the same response which, appears to me, indicates a handshake is not occurring.
root@AI6BX-DMR:/opt/DMRlink# python IPSC_Bridge.py INFO 2019-12-02 19:46:18,392 DMRlink 'IPSC_Bridge.py' (c) 2015 N0MJS & the K0USY Group - SYSTEM STARTING... INFO 2019-12-02 19:46:18,392 Version 20170620 INFO 2019-12-02 19:46:18,393 ID ALIAS MAPPER: 'peer_ids.json' is current, not downloaded INFO 2019-12-02 19:46:18,393 ID ALIAS MAPPER: 'subscriber_ids.json' is current, not downloaded INFO 2019-12-02 19:46:18,526 ID ALIAS MAPPER: peer_ids dictionary is available INFO 2019-12-02 19:46:20,215 ID ALIAS MAPPER: subscriber_ids dictionary is available INFO 2019-12-02 19:46:20,217 (CARLSBAD) IPSC Instance Created: 54321, 149.28.84.243:50009 INFO 2019-12-02 19:46:20,218 section = CARLSBAD INFO 2019-12-02 19:46:20,218 Section CARLSBAD was not found, using DEFAULTS INFO 2019-12-02 19:46:20,218 gateway = 127.0.0.1 INFO 2019-12-02 19:46:20,218 toGatewayPort = 50009 INFO 2019-12-02 19:46:20,219 fromGatewayPort = 62031 INFO 2019-12-02 19:46:20,219 DMRLink IPSC Bridge ^CINFO 2019-12-02 19:46:55,986 *** DMRLINK IS TERMINATING WITH SIGNAL 2 *** INFO 2019-12-02 19:46:55,986 De-Registering from IPSC CARLSBAD root@AI6BX-DMR:/opt/DMRlink# python confbridge.py INFO 2019-12-02 19:47:12,244 DMRlink 'dmrlink.py' (c) 2013 - 2015 N0MJS & the K0USY Group - SYSTEM STARTING... INFO 2019-12-02 19:47:12,245 ID ALIAS MAPPER: 'peer_ids.json' is current, not downloaded INFO 2019-12-02 19:47:12,245 ID ALIAS MAPPER: 'subscriber_ids.json' is current, not downloaded INFO 2019-12-02 19:47:12,372 ID ALIAS MAPPER: peer_ids dictionary is available INFO 2019-12-02 19:47:14,055 ID ALIAS MAPPER: subscriber_ids dictionary is available INFO 2019-12-02 19:47:14,056 (CARLSBAD) IPSC Instance Created: 54321, 149.28.84.243:50009 INFO 2019-12-02 19:47:14,057 Bridge configuration file found and imported INFO 2019-12-02 19:47:14,058 ACL file not found or invalid - all subscriber IDs are valid INFO 2019-12-02 19:47:14,058 (ALL IPSC SYSTEMS) Rule timer loop started
Following is what my dmrlink.cfg looks like.
[CARLSBAD] ENABLED: True RADIO_ID: 54321 IP:149.28.84.243 PORT: 50009 ALIVE_TIMER: 5 MAX_MISSED: 20 PEER_OPER: True IPSC_MODE: DIGITAL TS1_LINK: True TS2_LINK: True CSBK_CALL: False RCM: False CON_APP: False XNL_CALL: False XNL_MASTER: False DATA_CALL: True VOICE_CALL: True MASTER_PEER: True AUTH_ENABLED: True AUTH_KEY: AD07911 # Below not used for a Master # MASTER_IP: 1.2.3.4 # MASTER_PORT: 50000 GROUP_HANGTIME: 5
From: <main@DVSwitch.groups.io> on behalf of "Cort N0MJS via Groups.Io" <n0mjs@...>
You should only be defining one system on the dmrlink.cfg used with IPSC_Bridge.py. It’s intended to be a one-off. There is no call forwarding between systems. If you intend to use multiple IPSC Systems, you will need a pair of IPSC_Bridge.py and HB_Bridge.py for each. I explained this previously.
Address already in use is a SOCKET address, not an IP ADDRESS. Socket address is defined as the tuple of IP Address, Protocol, Port. You already have something listening on UDP port 62059. Only one process may bind to a specific socket address.
|
|
Re: Im Lost...
Cort N0MJS <n0mjs@...>
There are a number of tutorials out there. To be honest, I’ve not paid attention to a lot of them. When I helped clean up the how-to last week, I realized that, while a lot of the things out there work, they include unnecessary or duplicative steps.
Here’s a modified list of steps I just used Deb 10 x64 to verify them: # as root apt-get update apt-get upgrade -y apt-get install git -y apt-get install python3-pip -y apt-get install python3-twisted -y pip3 install dmr-utils3 # as a regular user (it's safer this way) git clone https://github.com/n0mjs710/HBlink3.git cp HBlink3/hblink-SAMPLE.cfg HBlink3/hblink.cfg cp HBlink3/rules_SAMPLE.py HBlink3/rules.py Edit the cfg and rules files to your needs.
Cort Buffington 785-865-7206
|
|
Re: Im Lost...
Skyler Fennell
This guy made a very good YouTube and article series on how to do it:
On Mon, Dec 2, 2019 at 7:45 AM <sean.riddle@...> wrote: I wanna say i was there but cant be certain for sure... i started this project yesterday @ 7:30am its now almost 10am the next day. i appreciate the nudge i know i can do this i know im just missing something...
|
|
Re: Im Lost...
sean.riddle@...
I wanna say i was there but cant be certain for sure... i started this project yesterday @ 7:30am its now almost 10am the next day. i appreciate the nudge i know i can do this i know im just missing something...
|
|
Re: Im Lost...
Cort N0MJS <n0mjs@...>
You should be over on the HBlink subgroup. We posted step-by-step install instructions there just last week.
Cort Buffington 785-865-7206
|
|
Im Lost...
sean.riddle@...
I have been beating my head off the wall over this and i feel like i am so close i can hear it....
i got a jumbo spot and a nice gd77 im trying to make... i guess... a Ad-Hoc DMR network NO INTERWBS ive tried multiple thing 1. setting up Deb and installing HBlink and it kept erroring out with some complaining about py. 2.setting up EA5GVK's wonderful rpi image. 3. googling for hours on end to find a soloution. help please!!!
|
|
Simplify script USRPAudio.py for monitoring audio only. #analog_bridge #USRPAudio.py
#analog_bridge
Philippe, f5rvx
Hi all,
Firstly I'm not sure that my question is acceptable on this group ... but I do not see what subgroup would be more appropriate (it may be missing a subgroup "stupid questions> / dev / null" ;) I would like to use USRPAudio.py only for audio monitoring (no screen, no keyboard on my orange pi). So I want to run this script as a service in systemd ... but there is no console and it ends logically with errors! Ok: it's normal since it is not intended for this purpose ... but I am not able to modify this script to remove only the minimum: a track or a little help would be nice ;) Thank you ! ---- That's what I find as errors (from /var/log/daemon.log) : Dec 2 12:52:52 localhost USRPAudio.py[1953]: File "/opt/Analog_Bridge/./USRPAudio.py", line 164, in <module> Dec 2 12:52:52 localhost USRPAudio.py[1953]: ch = getch() Dec 2 12:52:52 localhost USRPAudio.py[1953]: File "/opt/Analog_Bridge/./USRPAudio.py", line 145, in _getch Dec 2 12:52:52 localhost USRPAudio.py[1953]: old_settings = termios.tcgetattr(fd) Dec 2 12:52:52 localhost USRPAudio.py[1953]: termios.error: (25, 'Inappropriate ioctl for device') Dec 2 12:52:52 localhost USRPAudio.py[1953]: Start audio thread Dec 2 12:52:52 localhost USRPAudio.py[1953]: Unhandled exception in thread started by Dec 2 12:52:52 localhost USRPAudio.py[1953]: sys.excepthook is missing Dec 2 12:52:52 localhost USRPAudio.py[1953]: lost sys.stderr Dec 2 12:52:52 localhost USRPAudio.py[1953]: Unhandled exception in thread started by Dec 2 12:52:52 localhost USRPAudio.py[1953]: sys.excepthook is missing Dec 2 12:52:52 localhost USRPAudio.py[1953]: lost sys.stderr Dec 2 12:52:52 localhost systemd[1]: usrpaudio.service: Main process exited, code=exited, status=1/FAILURE Dec 2 12:52:52 localhost systemd[1]: usrpaudio.service: Failed with result 'exit-code'.
|
|
Re: Image for Raspberry pi3 with Debian 10 Buster with DVSWICTH SERVER, HBLINK3 AND HBMONITOR.
mfj_986
Hi Ken I have trying to install from scratch but nothing work. Could tell me th complete process u use for installing from scratch. 73 Raymond F6JIG Envoyé depuis mon smartphone.
-------- Message d'origine -------- De : ken@... Date : 02/12/2019 06:08 (GMT+01:00) À : main@DVSwitch.groups.io Objet : Re: [DVSwitch] Image for Raspberry pi3 with Debian 10 Buster with DVSWICTH SERVER, HBLINK3 AND HBMONITOR. I have installed the 2.0 image of Joaquin's Software It works fine on C4FM, NXDN and P25. The problem I am having is Dmr does not work on transmit. I have installed from scratch twice with same results, no DMR transmit. Are there any changes other than using the configuration scripts for DVSWITCH First configuration & Update Image. The only other changes I have made are changing language to en_US in NXDNGateway.ini, P25Gateway.ini, and DMRGateway.ini Thanks, Ken Smith K6EFJ
|
|
Re: Disconnection after 45 seconds
Mike,
Great news. Thanks for the update.
Steve
Sent via smoke signal (AT&T)
From: main@DVSwitch.groups.io <main@DVSwitch.groups.io> on behalf of VK4SED <vk4sed@...>
Sent: Sunday, December 1, 2019 10:47:18 PM To: main@DVSwitch.groups.io <main@DVSwitch.groups.io> Subject: Re: [DVSwitch] Disconnection after 45 seconds Hi Steve
Just an update. Thru trial and error I discovered the problem is Telstra my internet provider which apparently is blocking Port 46001 on the cellist network. Because I Changed the SIM card to another provider and boom! No registration . So now I need to change the port in dvswitch. 73’s Mike
|
|
Re: Disconnection after 45 seconds
Hi Steve
Just an update. Thru trial and error I discovered the problem is Telstra my internet provider which apparently is blocking Port 46001 on the cellist network. Because I Changed the SIM card to another provider and boom! No registration issue DVSM stays connected . So now I need to change the port in dvswitch. 73’s Mike
|
|
Re: traffic from XLX breaks the bridge
Patrick,
toggle quoted messageShow quoted text
Good to hear your issue is solved. Please, the next time you have a issue and someone is walking you through troubleshooting, let someone know you are going in another troubleshooting direction. Steve N4IRS
On 12/1/19 10:10 PM, Patrick Perdue wrote:
Well, the root cause has been identified and fixed. Apparently, Brandmeister did actually give me that interlink I asked for months ago, but I never got a notification about it. This was breaking things, because I hadn't implemented my side of the interlink. Adrian (VK4TUX) logged into my system and figured out what was going on. Now I have a nice working interlink between my XLX reflector and Brandmeister, with DVSwitch handling the bridge between Brandmeister and my Allstar link, which I will now probably move to the XLX reflector, because it makes sense to do that.
|
|
Re: traffic from XLX breaks the bridge
Patrick Perdue
Well, the root cause has been identified and fixed. Apparently, Brandmeister did actually give me that interlink I asked for months ago, but I never got a notification about it. This was breaking things, because I hadn't implemented my side of the interlink. Adrian (VK4TUX) logged into my system and figured out what was going on. Now I have a nice working interlink between my XLX reflector and Brandmeister, with DVSwitch handling the bridge between Brandmeister and my Allstar link, which I will now probably move to the XLX reflector, because it makes sense to do that.
|
|
Re: traffic from XLX breaks the bridge
Patrick Perdue
XLX log:
I: 2019-12-01 19:02:46.038 MMDVM_Bridge: I: 2019-12-01 19:02:46.038 Portions Copyright (C) 2018 DVSwitch, INAD. I: 2019-12-01 19:02:46.038 Hacks by Mike N4IRR and Steve N4IRS I: 2019-12-01 19:02:46.038 =
|
|
Re: traffic from XLX breaks the bridge
One more time:
toggle quoted messageShow quoted text
Stop both MB_BM and MB_XLX Clear both logs Start MB_XLX Start MB_BM Send one transmission through reflector Stop MB_XLX Stop MB_BM Paste both logs
On 12/1/19 1:57 PM, Patrick Perdue wrote:
Oh, doink.
|
|
Re: traffic from XLX breaks the bridge
Patrick Perdue
Oh, doink.
My clipboard must not have gotten updated. XLX log for real this time: I: 2019-12-01 18:45:51.187 MMDVM_Bridge: I: 2019-12-01 18:45:51.187 Portions Copyright (C) 2018 DVSwitch, INAD. I: 2019-12-01 18:45:51.187 Hacks by Mike N4IRR and Steve N4IRS I: 2019-12-01 18:45:51.187 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- I: 2019-12-01 18:45:51.187 This software is for use on amateur radio networks only, I: 2019-12-01 18:45:51.187 it is to be used for educational purposes only. Its use on I: 2019-12-01 18:45:51.187 commercial networks is strictly prohibited. I: 2019-12-01 18:45:51.187 Copyright(C) 2015-2018 by Jonathan Naylor, G4KLX and others M: 2019-12-01 18:45:51.187 MMDVM_Bridge-20191105_V1.4.1 is starting M: 2019-12-01 18:45:51.187 Built 14:38:14 Nov 11 2019 (GitID #9dae1ac) I: 2019-12-01 18:45:51.187 General Parameters I: 2019-12-01 18:45:51.187 Callsign: KE4DYI I: 2019-12-01 18:45:51.187 Id: 3138495 I: 2019-12-01 18:45:51.187 Duplex: no I: 2019-12-01 18:45:51.187 Timeout: 180s I: 2019-12-01 18:45:51.187 D-Star: disabled I: 2019-12-01 18:45:51.187 DMR: enabled I: 2019-12-01 18:45:51.187 YSF: disabled I: 2019-12-01 18:45:51.187 P25: disabled I: 2019-12-01 18:45:51.187 NXDN: disabled I: 2019-12-01 18:45:51.187 Modem Parameters I: 2019-12-01 18:45:51.187 Port: /dev/null I: 2019-12-01 18:45:51.187 RX Invert: no I: 2019-12-01 18:45:51.187 TX Invert: no I: 2019-12-01 18:45:51.187 PTT Invert: no I: 2019-12-01 18:45:51.187 TX Delay: 100ms I: 2019-12-01 18:45:51.187 RX Offset: 0Hz I: 2019-12-01 18:45:51.187 TX Offset: 0Hz I: 2019-12-01 18:45:51.187 RX DC Offset: 0 I: 2019-12-01 18:45:51.187 TX DC Offset: 0 I: 2019-12-01 18:45:51.187 RF Level: 100.0% I: 2019-12-01 18:45:51.187 DMR Delay: 0 (0.0ms) I: 2019-12-01 18:45:51.187 RX Level: 50.0% I: 2019-12-01 18:45:51.187 CW Id TX Level: 50.0% I: 2019-12-01 18:45:51.187 D-Star TX Level: 50.0% I: 2019-12-01 18:45:51.187 DMR TX Level: 50.0% I: 2019-12-01 18:45:51.187 YSF TX Level: 50.0% I: 2019-12-01 18:45:51.187 P25 TX Level: 50.0% I: 2019-12-01 18:45:51.187 NXDN TX Level: 50.0% I: 2019-12-01 18:45:51.187 RX Frequency: 222340000Hz (222340000Hz) I: 2019-12-01 18:45:51.187 TX Frequency: 224940000Hz (224940000Hz) M: 2019-12-01 18:45:51.187 Opening the MMDVM I: 2019-12-01 18:45:51.187 Display Parameters I: 2019-12-01 18:45:51.187 Type: I: 2019-12-01 18:45:51.187 DMR Network Parameters I: 2019-12-01 18:45:51.187 Address: 45.79.180.62 I: 2019-12-01 18:45:51.187 Port: 62030 I: 2019-12-01 18:45:51.187 Local: 62034 I: 2019-12-01 18:45:51.187 Jitter: 360ms I: 2019-12-01 18:45:51.187 Slot 1: disabled I: 2019-12-01 18:45:51.187 Slot 2: enabled I: 2019-12-01 18:45:51.187 Mode Hang: 3s I: 2019-12-01 18:45:51.187 Options: XLX:4001 I: 2019-12-01 18:45:51.187 Info Parameters I: 2019-12-01 18:45:51.187 Callsign: KE4DYI I: 2019-12-01 18:45:51.187 RX Frequency: 222340000Hz I: 2019-12-01 18:45:51.187 TX Frequency: 224940000Hz I: 2019-12-01 18:45:51.187 Power: 1W I: 2019-12-01 18:45:51.187 Latitude: 41.733299deg N I: 2019-12-01 18:45:51.187 Longitude: -50.399899deg E I: 2019-12-01 18:45:51.187 Height: 0m I: 2019-12-01 18:45:51.187 Location: "Iceberg, North Atlantic" I: 2019-12-01 18:45:51.187 Description: "MMDVM_Bridge" I: 2019-12-01 18:45:51.187 URL: "https://groups.io/g/DVSwitch" M: 2019-12-01 18:45:51.187 DMR, Opening DMR Network I: 2019-12-01 18:45:51.187 RSSI I: 2019-12-01 18:45:51.187 Mapping File: RSSI.dat W: 2019-12-01 18:45:51.187 Cannot open the RSSI data file - RSSI.dat I: 2019-12-01 18:45:51.187 DMR Id Lookups I: 2019-12-01 18:45:51.187 File: /var/lib/mmdvm/DMRIds.dat I: 2019-12-01 18:45:51.187 Reload: 24 hours I: 2019-12-01 18:45:51.323 Loaded 149631 Ids to the DMR callsign lookup table I: 2019-12-01 18:45:51.323 DMR RF Parameters I: 2019-12-01 18:45:51.323 Id: 3138495 I: 2019-12-01 18:45:51.323 Color Code: 1 I: 2019-12-01 18:45:51.323 Self Only: no I: 2019-12-01 18:45:51.324 Embedded LC Only: yes I: 2019-12-01 18:45:51.324 Dump Talker Alias Data: no I: 2019-12-01 18:45:51.324 Prefixes: 0 I: 2019-12-01 18:45:51.324 Call Hang: 3s I: 2019-12-01 18:45:51.324 TX Hang: 3s I: 2019-12-01 18:45:51.324 Mode Hang: 10s M: 2019-12-01 18:45:51.324 DMR, Opening INI file: DVSwitch.ini M: 2019-12-01 18:45:51.324 DMR, Setting [DMR] Address -> 127.0.0.1 M: 2019-12-01 18:45:51.325 DMR, Setting [DMR] TXPort -> 33100 M: 2019-12-01 18:45:51.325 DMR, Setting [DMR] RXPort -> 33103 M: 2019-12-01 18:45:51.325 DMR, Setting [DMR] Slot -> 2 M: 2019-12-01 18:45:51.325 DMR, Transmitting on 127.0.0.1:33100 and listening on port 33103. Result = 1 M: 2019-12-01 18:45:51.325 MMDVM_Bridge-20191105_V1.4.1 is running I: 2019-12-01 18:45:51.325 Started the DMR Id lookup reload thread M: 2019-12-01 18:46:11.345 DMR, Logged into the master successfully M: 2019-12-01 18:46:11.345 DMR, Remote CMD: txTg=4000 M: 2019-12-01 18:46:11.345 DMR, Tune: id=3138495, tg=4000, mode=Group M: 2019-12-01 18:46:11.347 DMR, Remote CMD: txTg=4001 M: 2019-12-01 18:46:11.347 DMR, Tune: id=3138495, tg=4001, mode=Group M: 2019-12-01 18:46:11.371 DMR Slot 2, received network voice header from KE4DYI to TG 9 M: 2019-12-01 18:46:11.376 DMR Slot 2, received network end of voice transmission, 0.1 seconds, 0% packet loss, BER: 0.0% M: 2019-12-01 18:46:56.773 DMR, TX state = ON I: 2019-12-01 18:46:56.773 DMR, Begin TX: src=3138495 rpt=0 dst=31679 slot=2 cc=0 metadata=KE4DYI M: 2019-12-01 18:46:59.306 DMR, TX state = OFF, DMR frame count was 44 frames M: 2019-12-01 18:47:00.879 DMR Slot 2, received network voice header from KE4DYI to TG 9 M: 2019-12-01 18:47:02.863 DMR Slot 2, received network end of voice transmission, 1.9 seconds, 0% packet loss, BER: 0.0% M: 2019-12-01 18:49:25.933 Closing the MMDVM I: 2019-12-01 18:49:26.350 Stopped the DMR Id lookup reload thread M: 2019-12-01 18:49:26.350 DMR, Closing DMR Network I: 2019-12-01 18:49:26.350 MMDVM_Bridge-20191105_V1.4.1 exited on receipt of SIGINT
|
|