This is an old revision of the document!
Table of Contents
Allstar : The Nodes
VHF Gateway
Platform | Raspberry Pi 2 Model B Rev 1.1 |
Interface | CM108 Soundcard - modified |
Radio | FT-1500M @ 5W |
Frequency | 144.900MHz |
Allstar Node | 481480 |
Echolink | GM4SLV-L : 886089 |
Dashboard | http://gm4slv.plus.com:42110/ |
The initial node, described here → gm4slv_allstar_2025 got too cumbersome after adding DMR Bridging, along with handling Echolink.
I decided, since I had a few spare Raspberry Pi boards doing nothing much, to split the DMR Bridging to a separate node.
I removed the DVSwitch bridging from the VHF Gateway node and changed its node ID to 481480
(NNX)
DMR Bridging Node
Platform | Raspberry Pi 3 Model B Rev 1.2 |
Allstar Node | 481481 |
Dashboard | http://gm4slv.plus.com:42111/ |
This one is for running DVSwitch to bridge to (at the moment) TGIF TG2354429 (my so-called ID Talkgroup )
I added the DVSwitch software, in the same way described here gm4slv_allstar_2025 and decided to bridge to TGIF
instead of Brandmeister.
I also decided to use the md380_emu
emulator for the AMBE transcoding.
MMDVM_Bridge.ini
[General] Callsign=GM4SLV Id=235442999 Timeout=180 Duplex=0 [Info] RXFrequency=144900000 TXFrequency=144900000 Power=1 Latitude=60.2885 Longitude=-1.4215 Height=0 Location=GM4SLV Bridge1 Description=MMDVM_Bridge URL=https://gm4slv.org.uk [Log] # Logging levels, 0=No logging, 1=Debug, 2=Message, 3=Info, 4=Warning, 5=Error, 6=Fatal DisplayLevel=1 FileLevel=2 FilePath=/var/log/mmdvm FileRoot=MMDVM_Bridge [DMR Id Lookup] File=/var/lib/mmdvm/DMRIds.dat Time=24 [NXDN Id Lookup] File=/var/lib/mmdvm/NXDN.csv Time=24 [Modem] Port=/dev/null RSSIMappingFile=/dev/null Trace=0 Debug=0 [D-Star] Enable=0 Module=B [DMR] Enable=1 ColorCode=1 EmbeddedLCOnly=1 DumpTAData=0 [System Fusion] Enable=0 [P25] Enable=0 NAC=293 [NXDN] Enable=0 RAN=1 Id=12345 [D-Star Network] Enable=0 GatewayAddress=127.0.0.1 GatewayPort=20010 LocalPort=20011 Debug=0 [DMR Network] Enable=1 Address=tgif.network Port=62031 ;Jitter=360 Jitter=750 Local=62032 Password=XXXXXXXXXXXXXXXXXXXXx # for DMR+ see https://github.com/DVSwitch/MMDVM_Bridge/blob/master/DOC/DMRplus_startup_options.md # for XLX the syntax is: Options=XLX:4009 # Options= Slot1=0 Slot2=1 Debug=0 [System Fusion Network] Enable=0 LocalAddress=0 LocalPort=3200 GatewayAddress=127.0.0.1 GatewayPort=4200 Debug=0 [P25 Network] Enable=0 GatewayAddress=127.0.0.1 GatewayPort=42020 LocalPort=32010 Debug=0 [NXDN Network] Enable=0 #LocalAddress=127.0.0.1 Debug=0 LocalPort=14021 GatewayAddress=127.0.0.1 GatewayPort=14020
==== Analog_Bridge.ini
; Analog_Bridge configuration file. ; This file should be placed in either /etc or it can be ; supplied as a path on the Analog_Bridge command line. ; The best way to think of this file is that there are two main sections, the USRP (analog audio) and ; AMBE_AUDIO (compressed audio). Analog_Bridge will take everything sent to the USRP port and ; encode it for transmission on the AMBE_AUDIO port. The encoder will use the format defined in ambeMode. ; As you might expect, the reverse direction is defined too. ; Analog_Bridge supports include files. More on this later... include = dvsm.macro ; include = asl.macro ; General Section describes settings for Analog_Bridge itself. [GENERAL] logLevel = 2 ; Show messages and above 0=No logging, 1=Debug, 2=Message, 3=Info, 4=Warning, 5=Error, 6=Fatal ; Metadata management exportMetadata = true ; Export metadata to USRP partner (transcode setups require this) transferRootDir = /tmp ; Export database files to USRP partner subscriberFile = /var/lib/dvswitch/subscriber_ids.csv ; DMR ID to callsign lookup data ; General vocoder setup information decoderFallBack = true ; Allow software AMBE decoding if a hardware decoder is not found useEmulator = true ; Use the MD380 AMBE emulator for AMBE72 (DMR/YSFN/NXDN) emulatorAddress = 127.0.0.1:2470 ; IP address and port of the md380 server pcmPort = 2222 ; UDP port to send to the WebProxy ; Information for xx_Bridge (Where xx is MMDVM, Quantar, HB, IPSC) [AMBE_AUDIO] address = 127.0.0.1 ; IP address of xx_Bridge txPort = 31103 ; Transmit TLV frames to partner on this port rxPort = 31100 ; Listen for TLV frames from partner on this port ambeMode = DMR ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW (encode PCM to this format) minTxTimeMS = 2500 ; Analog -> Digital Minimum time in MS for hang delay (0-10000) ; The metadata below is used when ASL is the source since it does not have any concept of digital modes gatewayDmrId = 2354429 ; ID to use when transmitting from Analog_Bridge 7 digit ID repeaterID = 235442999 ; ID of source repeater 7 digit ID plus 2 digit SSID txTg = 2354429 ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge txTs = 2 ; Slot to use for frames sent from Analog_Bridge -> xx_Bridge colorCode = 1 ; Color Code to assign DMR frames ; Information for USRP channel driver. This interface uses PCM to transfer audio information ; There are two typical configurations, ASL and Transcode. ASL (AllstarLink) is for analog clients connected ; to a digital network. Transcode is when Analog_Bridge actually points its PCM interfaces back at itself, ; causing a TLV <-- (pcm <--> pcm) --> TLV type of architecture. ; When using ASL, this matches the rpt.conf ASL file with a setting like: ; rxchannel = usrp/127.0.0.1:34001:32001 ; When Transcoding, make two ini files and set txPort equal to the other instance rxPort (crossover). Launch ; each instance with its own ini file. [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 usrpAudio = AUDIO_USE_GAIN ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC) usrpGain = 5.0 ; Gain factor when usrpAudio = AUDIO_USE_GAIN (0.0 to 5.0) (1.0 = AUDIO_UNITY) usrpAGC = -20,10,100 ; Set the agc threshold (db), slope (db) and decay (ms) tlvAudio = AUDIO_USE_GAIN ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF) tlvGain = 1.0 ; Gain factor when tlvAudio = AUDIO_USE_GAIN (0.0 to 5.0) (1.0 = AUDIO_UNITY) [MACROS] ; Where the macros are ; xxxx=yyyy ; xxxx is the dial string to match ; yyyy is the command line to execute ; xxxx must be preceded by a * ; xxxx can be any string (alphanumeric) ; yyyy is the command to execute ; yyyy will replace xxxx in the dial string ; arguments follow the macro name with a # delimiter ; For example using macro "5678" above would look like: ; *5678#9876 ; Which would invoke: ; echo 9876 ; Information for DV3000 hardware decoder ; There are two configuration modes: IP (AMBEServer) and serial (direct connect hardware) ; Use top server and port if using AMBEServer ; Use bottom server/port and serial = true if using the DV3000u (thumbdv) ; Did you run AMBETest4.py before using this? [DV3000] address = 127.0.0.1 ; IP address of AMBEServer rxPort = 2460 ; Port of AMBEServer ; address = /dev/ttyUSB0 ; Device of DV3000U on this machine ; baud = 460800 ; Baud rate of the dongle (230400 or 460800) ; serial = true ; Use serial=true for direct connect or serial=false for AMBEServer
Test Node
Platform | Raspberry Pi 2 Model B Rev 1.1 |
Allstar Node | 481482 |
Dashboard | http://gm4slv.plus.com:42112/ |
This one is to use for tests and experiments….
Friday 6th June 2025
Make a 2nd DMR Bridge to monitor DVSPh TG733 “MilNet”
- Made a new private node
1398
- Connect
481482
to internal private1398
- Set up DVSwitch MMDVM_Bridge & Analog_Bridge
- MMDVM set to use Hotspot ID
235442998
- Options=StartRef=4000;RelinkTime=0;UserLink=0;TS1_1=733;
- Connected MMDVM_Bridge to DVS_Ph F server - linked to TG733
- Main VHF Gateway Node
481481
connected to Test Node481482
in “Monitor” mode.
Saturday 7th June 2025
Change this DMR bridge to TGIF TG2354435
This is the ID Talkgroup for my 2nd DMR ID
- MMDVM_Bridge set to connect to TGIF, using my alternative DMR ID, as hotspot
235443598
- this requires the correct User Security passphrase for
2354435
- Also confirmed operation with MMDVM_Bridge connecting as normal
235442998
(my “usual” DMR ID with SSID=98) - Analog_Bridge set to use TG2354435
— John Pumford-Green 08/06/25 18:44 BST