Date   

Re: Macro result was 512 #analog_bridge

Geoff
 

I have attached two copies of dvsm.macro files.
One is mine and the other is for one of the user's


Re: Macro result was 512 #analog_bridge

Steve N4IRS
 

Show your dvsm.macro

On 9/16/21 7:00 AM, Geoff wrote:
Steve,

I am running a multi user server (DVLink). I have no problems using the macro to change DMR servers using other user's account.
To give you an insight of what I have done to my server, I have recently updated dvswitch.sh to v1.6.1 from v1.5.9 and also updated MMDVM_Bridge to the latest v.1.6.8.
I have not updated  other users' dvswitch.sh but updated MMDVM_Bridge to the latest.
So only difference is that as a main user myself I am using dvswitch v1.6.1 and the rest of the users are still using dvswitch.sh v 1.5.9
I wonder if I need to revert to dvswitch v1.5.9.
Hope that helps.


Re: Macro result was 512 #analog_bridge

Geoff
 

Steve,

I am running a multi user server (DVLink). I have no problems using the macro to change DMR servers using other user's account.
To give you an insight of what I have done to my server, I have recently updated dvswitch.sh to v1.6.1 from v1.5.9 and also updated MMDVM_Bridge to the latest v.1.6.8.
I have not updated  other users' dvswitch.sh but updated MMDVM_Bridge to the latest.
So only difference is that as a main user myself I am using dvswitch v1.6.1 and the rest of the users are still using dvswitch.sh v 1.5.9
I wonder if I need to revert to dvswitch v1.5.9.
Hope that helps.


Re: Macro result was 512 #analog_bridge

Geoff
 

Steve,

I ran and got "macro result was 256".
There was no file named out.txt  in /tmp.


Re: Macro result was 512 #analog_bridge

Steve N4IRS
 

Geff,
Let's verify that D is executing what you think it is.
in dvsm.macro change D to:
D=sudo /opt/Analog_Bridge/dvswitch.sh "version ALL >/tmp/out.txt"

Run the macro and see if you get the 512 result. If not, what is the contents of /tmp/out.txt

On 9/16/21 6:12 AM, Geoff wrote:
Thank you for coming back to me.
The following are my macro settings in dvsm.macro

A=sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:62031"
B=sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:62031"
C=sudo /opt/Analog_Bridge/dvswitch.sh tune "PASSWORD@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS2_1=450;TS2_2=518"
D=sudo /opt/Analog_Bridge/dvswitch.sh tune "PASSWORD@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"

If I issue the command at the prompt, it connects to the desired DMR+ server as shown below :-
~$ sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"

However, when I issue macro "*D", I get "macro result was 512" and can not connect to the server.

Thank you.


Re: Macro result was 512 #analog_bridge

Geoff
 

On Thu, Sep 16, 2021 at 08:12 PM, Geoff wrote:
~$ sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"
Correction :-

~$ sudo /opt/Analog_Bridge/dvswitch.sh tune "PASSWORD@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"


Re: Macro result was 512 #analog_bridge

Geoff
 

Thank you for coming back to me.
The following are my macro settings in dvsm.macro

A=sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:62031"
B=sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:62031"
C=sudo /opt/Analog_Bridge/dvswitch.sh tune "PASSWORD@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS2_1=450;TS2_2=518"
D=sudo /opt/Analog_Bridge/dvswitch.sh tune "PASSWORD@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"

If I issue the command at the prompt, it connects to the desired DMR+ server as shown below :-
~$ sudo /opt/Analog_Bridge/dvswitch.sh tune "1961@...:55555:StartRef=4570;RelinkTime=120;UserLink=1;TS1_1=5;TS2_1=505;TS2_2=3802"

However, when I issue macro "*D", I get "macro result was 512" and can not connect to the server.

Thank you.


Re: P25 to DMR troubles. error at MMDVM_Bridge - Cannot bind UDP address, err: 98 -and- Cannot open listener port 34103

Steve N4IRS
 

The path would be:
P25Reflector <-> P25Gateway <-> MMDVM_Bridge <->Analog_Bridge_P25 <-> Analog_Bridge_DMR <-> MMDVM_Bridge <-> DMR network This would use a single instance of MMDVM_Bridge.
Analog_Bridge_P25 [AMBE_AUDIO] should point to the UDP ports defined in DVSwitch.ini for P25 and Analog_Bridge_DMR [AMBE_AUDIO] should point to the UDP ports defined in DVSwitch.ini for DMR.

Show your DVSwitch.ini

On 9/15/21 10:06 PM, Todd, KB7RQQ wrote:
I have a P25 reflector running and it works great.  Decided to bridge to our DMR talk group. so I have P25Reflector --> P25Gateway --> Analog_Bridge_DMR --> Analog_Bridge_P25 --> MMDVM_Bridge.  Reflector is working fine, checked both AB's for port accuracy.  When I fire them up in that order, I get an error on MMDVM_Bridge.

This is cut down to the end....

M: 2021-09-16 01:32:00.439 P25, Opening INI file: DVSwitch.ini
M: 2021-09-16 01:32:00.440 P25, Setting [P25] address -> 127.0.0.1
M: 2021-09-16 01:32:00.440 P25, Setting [P25] txPort -> 34100
M: 2021-09-16 01:32:00.440 P25, Setting [P25] rxPort -> 34103
M: 2021-09-16 01:32:00.440 P25, Setting [P25] slot -> 2
M: 2021-09-16 01:32:00.440 P25, Setting [P25] RemotePort -> 6074
E: 2021-09-16 01:32:00.440 Cannot bind the UDP address, err: 98
F: 2021-09-16 01:32:00.440 P25, Can not open listener port 34103

34103 would be the rxPort of P25 side of Analog_Bridge_P25.ini    Not sure what configs would be helpful so I'll start with P25Bridge/AB_DMR/ABP25

Anyone see anything that stands out as whacky?

--P25Bridge.ini
[General]
Callsign=KB7RQQ
RptAddress=127.0.0.1
RptPort=32010
LocalPort=42020
Daemon=0
 
[Id Lookup]
Name=/var/lib/mmdvm/DMRIds.dat
Time=24
 
[Voice]
Enabled=1
Language=en_US
Directory=./Audio
 
[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=P25Gateway
 
[Network]
Port=42010
HostsFile1=/etc/P25Hosts.txt
HostsFile2=./private/P25Hosts.txt
ReloadTime=60
ParrotAddress=127.0.0.1
ParrotPort=42011
Startup=31655
InactivityTimeout=10
Debug=0
 
[Remote Commands]
Enable=0
Port=6074



--Analog_Bridge_DMR.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 = false                     ; 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 = 31100                          ; Transmit TLV frames to partner on this port
rxPort = 31103                          ; 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 = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                                ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 32001                          ; Transmit USRP frames on this port
rxPort = 34001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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




--Analog_Bridge_P25

; 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 = false                     ; 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 = 34100                          ; Transmit TLV frames to partner on this port
rxPort = 34103                          ; Listen for TLV frames from partner on this port
ambeMode = P25                          ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW (encode PCM to this format)
minTxTimeMS = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                            ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 34001                          ; Transmit USRP frames on this port
rxPort = 32001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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
 
 


Re: Macro result was 512 #analog_bridge

Steve N4IRS
 

Please post your A, B, C and D macros.

On 9/15/21 10:41 PM, Geoff wrote:
I have modified dvsm.macro file so I can switch from one DMR server to another.
There are 4 servers that I was able to switch at will and the setup has been working quite well until lately.
By pressing macro key A, B, C or D I was able to switch from a DMR server to another and so forth.
However, recently when I press D to change to another DMR server, I get "Macro result was 512".
I don't know what it means and how to go about fixing it.
Can anyone shed some light on this matter, please?

Thank you.


Re: P25 to DMR troubles. error at MMDVM_Bridge - Cannot bind UDP address, err: 98 -and- Cannot open listener port 34103

Steve N4IRS
 



On 9/15/21 10:06 PM, Todd, KB7RQQ wrote:
I have a P25 reflector running and it works great.  Decided to bridge to our DMR talk group. so I have P25Reflector --> P25Gateway --> Analog_Bridge_DMR --> Analog_Bridge_P25 --> MMDVM_Bridge.  Reflector is working fine, checked both AB's for port accuracy.  When I fire them up in that order, I get an error on MMDVM_Bridge.

This is cut down to the end....

M: 2021-09-16 01:32:00.439 P25, Opening INI file: DVSwitch.ini
M: 2021-09-16 01:32:00.440 P25, Setting [P25] address -> 127.0.0.1
M: 2021-09-16 01:32:00.440 P25, Setting [P25] txPort -> 34100
M: 2021-09-16 01:32:00.440 P25, Setting [P25] rxPort -> 34103
M: 2021-09-16 01:32:00.440 P25, Setting [P25] slot -> 2
M: 2021-09-16 01:32:00.440 P25, Setting [P25] RemotePort -> 6074
E: 2021-09-16 01:32:00.440 Cannot bind the UDP address, err: 98
F: 2021-09-16 01:32:00.440 P25, Can not open listener port 34103

34103 would be the rxPort of P25 side of Analog_Bridge_P25.ini    Not sure what configs would be helpful so I'll start with P25Bridge/AB_DMR/ABP25

Anyone see anything that stands out as whacky?

--P25Bridge.ini
[General]
Callsign=KB7RQQ
RptAddress=127.0.0.1
RptPort=32010
LocalPort=42020
Daemon=0
 
[Id Lookup]
Name=/var/lib/mmdvm/DMRIds.dat
Time=24
 
[Voice]
Enabled=1
Language=en_US
Directory=./Audio
 
[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=P25Gateway
 
[Network]
Port=42010
HostsFile1=/etc/P25Hosts.txt
HostsFile2=./private/P25Hosts.txt
ReloadTime=60
ParrotAddress=127.0.0.1
ParrotPort=42011
Startup=31655
InactivityTimeout=10
Debug=0
 
[Remote Commands]
Enable=0
Port=6074



--Analog_Bridge_DMR.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 = false                     ; 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 = 31100                          ; Transmit TLV frames to partner on this port
rxPort = 31103                          ; 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 = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                                ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 32001                          ; Transmit USRP frames on this port
rxPort = 34001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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




--Analog_Bridge_P25

; 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 = false                     ; 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 = 34100                          ; Transmit TLV frames to partner on this port
rxPort = 34103                          ; Listen for TLV frames from partner on this port
ambeMode = P25                          ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW (encode PCM to this format)
minTxTimeMS = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                            ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 34001                          ; Transmit USRP frames on this port
rxPort = 32001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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
 
 


Macro result was 512 #analog_bridge

Geoff
 

I have modified dvsm.macro file so I can switch from one DMR server to another.
There are 4 servers that I was able to switch at will and the setup has been working quite well until lately.
By pressing macro key A, B, C or D I was able to switch from a DMR server to another and so forth.
However, recently when I press D to change to another DMR server, I get "Macro result was 512".
I don't know what it means and how to go about fixing it.
Can anyone shed some light on this matter, please?

Thank you.


P25 to DMR troubles. error at MMDVM_Bridge - Cannot bind UDP address, err: 98 -and- Cannot open listener port 34103

Todd, KB7RQQ
 

I have a P25 reflector running and it works great.  Decided to bridge to our DMR talk group. so I have P25Reflector --> P25Gateway --> Analog_Bridge_DMR --> Analog_Bridge_P25 --> MMDVM_Bridge.  Reflector is working fine, checked both AB's for port accuracy.  When I fire them up in that order, I get an error on MMDVM_Bridge.

This is cut down to the end....

M: 2021-09-16 01:32:00.439 P25, Opening INI file: DVSwitch.ini
M: 2021-09-16 01:32:00.440 P25, Setting [P25] address -> 127.0.0.1
M: 2021-09-16 01:32:00.440 P25, Setting [P25] txPort -> 34100
M: 2021-09-16 01:32:00.440 P25, Setting [P25] rxPort -> 34103
M: 2021-09-16 01:32:00.440 P25, Setting [P25] slot -> 2
M: 2021-09-16 01:32:00.440 P25, Setting [P25] RemotePort -> 6074
E: 2021-09-16 01:32:00.440 Cannot bind the UDP address, err: 98
F: 2021-09-16 01:32:00.440 P25, Can not open listener port 34103

34103 would be the rxPort of P25 side of Analog_Bridge_P25.ini    Not sure what configs would be helpful so I'll start with P25Bridge/AB_DMR/ABP25

Anyone see anything that stands out as whacky?

--P25Bridge.ini
[General]
Callsign=KB7RQQ
RptAddress=127.0.0.1
RptPort=32010
LocalPort=42020
Daemon=0
 
[Id Lookup]
Name=/var/lib/mmdvm/DMRIds.dat
Time=24
 
[Voice]
Enabled=1
Language=en_US
Directory=./Audio
 
[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=P25Gateway
 
[Network]
Port=42010
HostsFile1=/etc/P25Hosts.txt
HostsFile2=./private/P25Hosts.txt
ReloadTime=60
ParrotAddress=127.0.0.1
ParrotPort=42011
Startup=31655
InactivityTimeout=10
Debug=0
 
[Remote Commands]
Enable=0
Port=6074



--Analog_Bridge_DMR.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 = false                     ; 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 = 31100                          ; Transmit TLV frames to partner on this port
rxPort = 31103                          ; 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 = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                                ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 32001                          ; Transmit USRP frames on this port
rxPort = 34001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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




--Analog_Bridge_P25

; 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 = false                     ; 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 = 34100                          ; Transmit TLV frames to partner on this port
rxPort = 34103                          ; Listen for TLV frames from partner on this port
ambeMode = P25                          ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW (encode PCM to this format)
minTxTimeMS = 2000                      ; 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 = 3153376                  ; ID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 315337613                  ; ID of source repeater 7 digit ID plus 2 digit SSID 
txTg = 31655                            ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 1                                ; 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 = 34001                          ; Transmit USRP frames on this port
rxPort = 32001                          ; Listen for USRP frames on this port
usrpAudio = AUDIO_UNITY                 ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10                         ; 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_UNITY                  ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.35                          ; 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
 
 


Re: DVSwitch.ini was not found #mmdvm_bridge

Komkit Listisard
 

Steve,

Got it working somehow.

I deleted the mmdvm_bridge4.service and re-entered again from scratch exactly as it was.   This time it work no issue.

I have no idea what was the problem!!!

The only thing I can think of was my editor "nona" must have inserted some strange hidden characters or something.  I have no clue.

root@xlx1:/lib/systemd/system# systemctl start mmdvm_bridge4
root@xlx1:/lib/systemd/system# systemctl status mmdvm_bridge4
● mmdvm_bridge4.service - MMDVM_Bridge Service 4
   Loaded: loaded (/lib/systemd/system/mmdvm_bridge4.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-09-15 09:50:08 EDT; 3s ago
  Process: 8955 ExecStartPre=/bin/sh -c echo "Starting MMDVM_Bridge: [`date +%T.%3N`]" >> /var/log/netcheck (code=exited, status=0/SUCCESS)
 Main PID: 8959 (MMDVM_Bridge4)
    Tasks: 2 (limit: 1148)
   Memory: 27.4M
   CGroup: /system.slice/mmdvm_bridge4.service
           └─8959 /opt/MMDVM_Bridge4/MMDVM_Bridge4 /opt/MMDVM_Bridge4/MMDVM_Bridge4.ini
 
Sep 15 09:50:08 w3kit-xlx1 systemd[1]: Starting MMDVM_Bridge Service 4...
Sep 15 09:50:08 w3kit-xlx1 systemd[1]: Started MMDVM_Bridge Service 4.

73, Kit
 


Re: DVSwitch.ini was not found #mmdvm_bridge

Komkit Listisard
 

Steve,

Not sure,  haven't there  (yet).

For now, I will just use DVSwitch.ini in the /opt/MMDMV_Bridge4/ since DVSwitch.ini does not show up on the UDP ports listing anyway.   As long as MMDVM_bridge4 show up,  since I like to documenting things as I go, much easier for the house keeping.

I will try 5 when I have the need :)

Thank you for your help as always.

73, Kit


Re: DVSwitch.ini was not found #mmdvm_bridge

Steve N4IRS
 

OK,
And if you number it as 5, what happens?

On 9/15/2021 9:20 AM, Komkit Listisard via groups.io wrote:
Steve,

Since this is my 4th instance of MMDMV_Bridge. I just renamed them so it would be easier for me to chasing them down when I have an issue and much easier when I list the UDP ports, so I know who is who and who is using what port.

Not sure why with other three instances I do not have an issue.

73, Kit


Re: DVSwitch.ini was not found #mmdvm_bridge

Komkit Listisard
 

Steve,

Since this is my 4th instance of MMDMV_Bridge. I just renamed them so it would be easier for me to chasing them down when I have an issue and much easier when I list the UDP ports, so I know who is who and who is using what port.

Not sure why with other three instances I do not have an issue.

73, Kit


Re: DVSwitch.ini was not found #mmdvm_bridge

Steve N4IRS
 

I don't see anything wrong with your service..
That being said, since you set the workingdirectory and the execstart, why rename MMDVM_Bridge, MMDVM_Bridge.ini and DVSwitch.ini ?

Steve N4IRS

On 9/15/2021 8:36 AM, Komkit Listisard via groups.io wrote:
Here is the mmdvm_bridge4.service



[Unit]
Description=MMDVM_Bridge Service4
# Description=Place this file in /lib/systemd/system
# Description=N4IRS 09/10/2020
 
After=netcheck.service
Requires=netcheck.service
 
[Service]
Type=simple
Restart=always
RestartSec=3
Restart=on-abort
StandardOutput=null
WorkingDirectory=/opt/MMDVM_Bridge4
Environment=DVSwitch=/opt/MMDVM_Bridge4/DVSwitch4.ini
ExecStartPre = /bin/sh -c 'echo "Starting MMDVM_Bridge: [`date +%%T.%%3N`]" >> /var/log/netcheck'
ExecStart=/opt/MMDVM_Bridge4/MMDVM_Bridge4 /opt/MMDVM_Bridge4/MMDVM_Bridge4.ini
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
 
[Install]
WantedBy=multi-user.target


73, Kit
 


Re: DVSwitch.ini was not found #mmdvm_bridge

Komkit Listisard
 

Here is the mmdvm_bridge4.service



[Unit]
Description=MMDVM_Bridge Service4
# Description=Place this file in /lib/systemd/system
# Description=N4IRS 09/10/2020
 
After=netcheck.service
Requires=netcheck.service
 
[Service]
Type=simple
Restart=always
RestartSec=3
Restart=on-abort
StandardOutput=null
WorkingDirectory=/opt/MMDVM_Bridge4
Environment=DVSwitch=/opt/MMDVM_Bridge4/DVSwitch4.ini
ExecStartPre = /bin/sh -c 'echo "Starting MMDVM_Bridge: [`date +%%T.%%3N`]" >> /var/log/netcheck'
ExecStart=/opt/MMDVM_Bridge4/MMDVM_Bridge4 /opt/MMDVM_Bridge4/MMDVM_Bridge4.ini
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
 
[Install]
WantedBy=multi-user.target


73, Kit
 


Re: DVSwitch.ini was not found #mmdvm_bridge

Steve N4IRS
 

Show your complete mmdvm_bridge.service

On 9/15/2021 6:52 AM, Komkit Listisard via groups.io wrote:
Hello,

In mmdvm_bridge.service I set an environment to Environment=DVSwitch=/opt/MMDVM_Bridge4/DVSwitch4.ini

The file is there working directory is there.

But mmdvm_bridge4 log is telling the DVSWitch.ini was not found.  However I told it to look for DVSwitch4.ini. But it kept looking for DVSwitch.ini

But as soon as I copied DVSwitch4.ini to DVSwitch.ini without number 4, the mmdvm_bridge4 is happy like a pig in the mud, no issue no complaint.

What am I missing here? Why couldn't I use DVSwitch4.ini.

For the record.  I have DVSwitch1, 2 and 3 running of sepatate instances, they all working fine no issue.

This time with #4 all of the sudden I am having and issue, I could not figured it out. 

73, Kit


DVSwitch.ini was not found #mmdvm_bridge

Komkit Listisard
 

Hello,

In mmdvm_bridge.service I set an environment to Environment=DVSwitch=/opt/MMDVM_Bridge4/DVSwitch4.ini

The file is there working directory is there.

But mmdvm_bridge4 log is telling the DVSWitch.ini was not found.  However I told it to look for DVSwitch4.ini. But it kept looking for DVSwitch.ini

But as soon as I copied DVSwitch4.ini to DVSwitch.ini without number 4, the mmdvm_bridge4 is happy like a pig in the mud, no issue no complaint.

What am I missing here? Why couldn't I use DVSwitch4.ini.

For the record.  I have DVSwitch1, 2 and 3 running of sepatate instances, they all working fine no issue.

This time with #4 all of the sudden I am having and issue, I could not figured it out. 

73, Kit

161 - 180 of 9897