public:radio:allstar:allstar_nxdn
Table of Contents
NXDN Bridging
A change from DMR!
Overview of IP UDP ports
Asterisk Analog_Bridge DVSwitch NXDNGateway ======== ============= MMDVM_Bridge =========== ============ [node] [USPR] rxPort 31001 <------- txPort 31001 txPort 34001 -------> rxPort 34001 ↓ ↑ [md380-emu]:2470 ↓ ↑ [AMBE] [NXDN] txPort 33103 ------> rxPort 33103 rxPort 33100 <------ txPort 33100 ↓ ↑ [NXDN Network] [General] LocalPort 14021 <----- RptPort 14021 GatewayPort 14020 -----> LocalPort 14020 ↓ ↑ [Network] Host IP/Port obtained from hostfiles by reference to Analog_Bridge txTG=xxxx
The main Things
- Make sure
Analog_Bridge.ini
has the correct txPort and rxPort in its [USRP] section
[USRP] address = 127.0.0.1 ; IP address of USRP partner (Analog_Reflector, Allstar/Asterisk or another Analog_Bridge) txPort = 31001 ; Transmit USRP frames on this port rxPort = 34001 ; Listen for USRP frames on this port
- It should match Asterisk's private node as defined in
/etc/asterisk/rpt.conf
- in this case it's [1398]
[1398] rxchannel = USRP/127.0.0.1:34001:31001 ; Use the USRP channel driver. Must be enabled in modules.conf ; 127.0.0.1 = IP of the target application ; 34001 = UDP port the target application is listening on ; 32001 = UDP port ASL is listening on
- Make Sure
Analog_Bridge.ini
has the correct txPort and rxPort in its [AMBE] section
[AMBE_AUDIO] address = 127.0.0.1 ; IP address of xx_Bridge ; For DMR - match the ports set in DVSwitch.ini ;txPort = 31103 ; Transmit TLV frames to partner on this port ;rxPort = 31100 ; Listen for TLV frames from partner on this port ; FOr NXDN - match the ports set in DVSwitch.ini txPort = 33103 ; Transmit TLV frames to partner on this port rxPort = 33100 ; Listen for TLV frames from partner on this port ambeMode = NXDN ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW (encode PCM to this format)
- should match the ports in
DVSwitch.ini
[NXDN] section
; Configure the NXDN Partner ; Audio format is AMBE 72 bit [NXDN] address = 127.0.0.1 ; Address to send AMBE TLV frames to (export) txPort = 33100 ; Port to send AMBE TLV frames to (export) rxPort = 33103 ; Port to listen on (import)
- Disable [DMR] in
MMDVM_Bridge.ini
[DMR] Enable=0 ColorCode=1 EmbeddedLCOnly=1 DumpTAData=0
- Enable [NXDN] in
MMDVM_Bridge.ini
and set your own NXDN ID number
[NXDN] Enable=1 RAN=1 Id=7485
- Set Fallback IDs in
DVSwitch.ini
fallbackID = 2354429 ; In case we can not find a valid DMR id in the database, export this one nxdnFallbackID = 7485 ; Use this ID when the input DMR ID is not found in the database
- Set Callsign in
NXDNGateway.ini
[General] Callsign=GM4SLV Suffix=NXDN
- I don't know what
Suffix
means, I left it as found - Set the NXDN talkgroup in
Analog_Bridge.ini
- NXDN Talkgroups are listed here : https://www.pistar.uk/nxdn_reflectors.php
- A Talkgroup actually seems to specify a particular reflector IP address/Hostname & UDP port
- These are retrieved by
NXDNGateway
from the hostfile :/var/lib/mmdvm/NXDNHosts.txt
- Setting the
txTG=23551
inAnalog_Bridge.ini
causesNXDNGateway
to make a connection to the relevant reflector when you send traffic by keying up. - For example TG23551 (Scot-Multi) appears in
NXDNHosts.txt
as:
23551 nxdnscotland.ddns.net 41400
- Having
txTG=23551
inAnalog_Bridge.ini
causes DVSwitch to connect, and start to flow packets, withnxdnscotland.ddns.net:41400
- Another source of info https://dvref.com/nxdn/
- TG23551 : https://dvref.com/nxdn/nxdn-23551
Updating DVSwitch Hostfiles
- DVSwtich keep its hostfiles in
/var/lib/mmdvm
and updates viacron.daily/DVSM_Update
which calls/opt/MMDVM_Bridge/dvswitch.sh update
- This tries to download hostfiles from various places using
curl
- It seems to fail most of the time due to a SSL problem
- A workaround is to put “insecure” in root's ~/.curlrc
gm4slv@node481482:~$ sudo su - root@node481482:~# echo insecure >> ~/.curlrc root@node481482:~# /opt/MMDVM_Bridge/dvswitch.sh update
— John Pumford-Green 10/06/25 08:51 BST
Further Information
public/radio/allstar/allstar_nxdn.txt · Last modified: by john