Re: How to link between a Quantar on P25 to BM DMR?


Juan Carlos Pérez <km4nno@...>
 

Hi Steve,

So I think I set must of the system, but I am missing some port links that I can find the propper file to set them. Here are my settings for the diffrent files (Data that did not changed or is not relevant is not posted). The intention for testing is to use TG 5995 on a Quantar repeater using Quantra_Bridge and pass it to BrandMeister TG 334105. Everything is set on the same Raspberry Pi.

Quantar Bridge --> ???
             34103 --> 34103
             34100 <-- 34100

P25Reflector
41000

    P25Gtw      -->   MMDVMBr  -->   An_Br_P25   -->  An_Br_DMR -->   MMDVMBr   --> BrandMeister
42010 42020 --> 42020 30100 --> 30100 32001 --> 32001 30103 --> 30103 36100 --> 31100 62031
41000 32010 <-- 32010 30103 <-- 30103 34001 <-- 34001 30100 <-- 30100 36103 <-- 31103 62032


Quantar_Bridge.ini

[QUANTAR]
logFilePath = /var/log/Quantar_Bridge.log
logLevel = 2                    ; Show messages and above 0=No logging, 1=Debug, 2=Message, 3=Info,$debug = 0                       ; Debug 0 = off, 1 = on (adds lots of additional messages)
Address = 0.0.0.0               ; Address to send AMBE TLV frames to (export)
TXPort = 34103                  ; Port to send AMBE TLV frames to (export)
RXPort = 34100                  ; Port to listen on (import)
quantarPort = 1994              ; HDLC frames To/From the Quantar repeater


 P25Reflector.ini

[Network]
Port=41000
Debug=0


 P25Gateway.ini

[General]
Callsign=XE1F
RptAddress=127.0.0.1
RptPort=32010
LocalPort=42020
Announcements=1
Daemon=0
[Network]
Port=42010
HostsFile1=./P25Hosts.txt
HostsFile2=./Private_P25Hosts.txt
ReloadTime=60
ParrotAddress=127.0.0.1
ParrotPort=42011
# Startup=10100
Startup=5995
InactivityTimeout=0
Debug=0


P25Hosts.txt

# 5995 XE1F Test TG
5995    172.0.0.1       41000


DVSwitch.ini

[QUANTAR]
logFilePath = /var/log/Quantar_Bridge.log
Address = 127.0.0.1             ; Address to send AMBE TLV frames to (export)
TXPort = 34103                  ; Port to send AMBE TLV frames to (export)
RXPort = 34100                  ; Port to listen on (import)
quantarPort = 1994              ; HDLC frames To/From the Quantar repeater
logLevel = 2                    ; Show messages and above 0=No logging, 1=Debug, 2=Message, 3=Info,$
debug = 0                       ; Debug 0 = off, 1 = on (adds lots of additional messages)

; Configure the DMR Partner
; Audio format is AMBE 72 bit
[DMR]
Address = 127.0.0.1             ; Address to send AMBE TLV frames to (export)
TXPort = 31100                  ; Port to send AMBE TLV frames to (export)
RXPort = 31103                  ; Port to listen on (import)
Slot = 2                        ; Export slot

; Configure the P25 Partner
; Audio format is IMBE 88 bit
[P25]
Address = 127.0.0.1             ; Address to send AMBE TLV frames to (export)
TXPort = 34100                  ; Port to send AMBE TLV frames to (export)
RXPort = 34103                  ; Port to listen on (import)
Slot = 2                        ; Export slot

MMDVM_Bridge.ini

[General]
Callsign=XE1F
Id=334118
Timeout=120
Duplex=0

[Info]
RXFrequency=147390000
TXFrequency=147990000
Power=25
Latitude=19.3834
Longitude=-99.1446
Height=25
Location=Benito Juarez, CMX
Description=MMDVM_Bridge
URL=https://groups.io/g/DVSwitch

[DMR]
Enable=1
ColorCode=1
EmbeddedLCOnly=1
DumpTAData=0

[P25]
Enable=1
NAC=293

[DMR Network]
Enable=1
Address=hblink.dvswitch.org
Port=62031
Jitter=360
Local=62032
Password=passw0rd
Slot1=0
Slot2=1
Debug=1

[P25 Network]
Enable=1
GatewayAddress=127.0.0.1
GatewayPort=42020
LocalPort=32010
Debug=1


Analog_Bridge_P25ini

[GENERAL]
logLevel = 2                            ; Show messages and above 0=No logging, 1=Debug, 2=Message,$
; Metadata management
exportMetadata = true                   ; Export metadata to USRP partner (transcode setups require$subscriberFile = /var/lib/dvswitch/subscriber_ids.csv   ; DMR ID to callsign lookup data

; General vocoder setup information
decoderFallBack = false                 ; Allow software AMBE decoding if a hardware decoder is not$
useEmulator = false                     ; Use the MD380 AMBE emulator for AMBE72 (DMR/YSFN/NXDN)
emulatorAddress = 127.0.0.1:2470        ; IP address and port of the server

; Audio devices are normally not needed when in gateway service.  These devices should
; only be set when local monitor or dongle modes are required.
outputAudioDevice = /dev/null           ; Audio device /dev/null, /dev/dsp1, portaudio, etc
inputAudioDevice = /dev/null            ; Only used for dongle mode

; Below values are for using this as a local DMR dongle (no ASL needed)
useMicrophone = false                   ; Use app as just a fancy dongle for DMR
useVox = false                          ; If using dongle mode (useMicrophone), enable VOX
voxDecay = 2                            ; Hang time in seconds
voxTrigger = 200                        ; Value to trip PTT (0-32767)

; Information for xx_Bridges (Where xx is MMDVM, HB, IPSC)
[AMBE_AUDIO]
server = 127.0.0.1                      ; IP address of xx_Bridge.py
fromDMRPort = 34000                     ; AMBE frames from xx_Bridge (should match "toGatewayPort" $
toDMRPort = 34003                       ; AMBE frames from xx_Bridge (should match "fromGatewayPort$
ambeMode = P25                          ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW
minTxTimeMS = 2000                      ; Minimum time in MS for hang delay
gatewayDmrId = 334118                   ; ID to use when transmitting from Analog_Bridge
repeaterID = 334118                     ; ID of source repeater
txTg = 5995                             ; TG to use for all frames received from Analog_Bridge -> x$
txTs = 2                                ; Slot to use for frames received from Analog_Bridge -> xx_$
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$; to a digital network.  Transcode is when Analog_Bridge actually points its PCM interfaces back at$; 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 toASLPort equal to the other instance fromASLPort (crossover)
[USRP]
server = 127.0.0.1                      ; IP address of Allstar/Asterisk
toASLPort = 32001                       ; Analog_Bridge <-- ASL
fromASLPort = 34001                     ; Analog_Bridge --> ASL
aslAudio = AUDIO_UNITY                  ; Audio to ASL (AUDIO_UNITY, AUDIO_USE_AGC, AUDIO_USE_GAIN)
agcGain = -20                           ; Gain (in db) of the AGC filter
dmrAudio = AUDIO_UNITY                  ; Audio from ASL (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
dmrGain = 0.35                          ; Gain factor of audio from ASL (0.0-1.0)

; 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]
server = 127.0.0.1                      ; IP address of AMBEServer
port = 2460                             ; Port of AMBEServer
; server = /dev/ttyUSB0                 ; Device of DV3000U on this machine
; port = 460800                         ; Baud rate of the dongle
; serial = true                         ; Use serial (DV3000U) or IP


Analog_Bridge_DMR.ini 

; General vocoder setup information
decoderFallBack = false                 ; Allow software AMBE decoding if a hardware decoder is not$
useEmulator = true                      ; Use the MD380 AMBE emulator for AMBE72 (DMR/YSFN/NXDN)
emulatorAddress = 127.0.0.1:2470        ; IP address and port of the server

; Information for xx_Bridges (Where xx is MMDVM, HB, IPSC)
[AMBE_AUDIO]
server = 127.0.0.1                      ; IP address of xx_Bridge.py
fromDMRPort = 31000                     ; AMBE frames from xx_Bridge (should match "toGatewayPort" $
toDMRPort = 31003                       ; AMBE frames from xx_Bridge (should match "fromGatewayPort$
ambeMode = DMR                          ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW
minTxTimeMS = 2000                      ; Minimum time in MS for hang delay
gatewayDmrId = 334118                   ; ID to use when transmitting from Analog_Bridge
repeaterID = 334118                     ; ID of source repeater
txTg = 334105                           ; TG to use for all frames received from Analog_Bridge -> x$
txTs = 2                                ; Slot to use for frames received from Analog_Bridge -> xx_$colorCode = 1                           ; Color Code to assign DMR frames

[USRP]
server = 127.0.0.1                      ; IP address of Allstar/Asterisk
toASLPort = 34001                       ; Analog_Bridge <-- ASL
fromASLPort = 32001                     ; Analog_Bridge --> ASL
aslAudio = AUDIO_UNITY                  ; Audio to ASL (AUDIO_UNITY, AUDIO_USE_AGC, AUDIO_USE_GAIN)
agcGain = -20                           ; Gain (in db) of the AGC filter
dmrAudio = AUDIO_UNITY                  ; Audio from ASL (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
dmrGain = 0.35                          ; Gain factor of audio from ASL (0.0-1.0)

Thank you so much for your help.


On Sunday, November 18, 2018 6:19 PM, Juan Carlos Pérez via Groups.Io <km4nno@...> wrote:


Dear Steve,

Thank you, that is exactly what I was looking for.

Juan Carlos,
XE1F


On Sunday, November 18, 2018 5:52 PM, Steve N4IRS <szingman@...> wrote:


Juan,
I'll answer the bridge between P25 and DMR here and recommend you join the Quantar Bridge subgroup at https://dvswitch.groups.io/g/Quantar-Bridge for your Quantar question.

To build a bridge between DMR and P25 you will need to transcode P25 <-> DMR. A transcoder requires 2 instances of Analog_Bridge. The system will look like this:

P25Reflector <-> P25Gateway <-> MMDVM_Bridge <-> Analog_Bridge <-> Analog_Bridge <-> MMDVM_Bridge <-> BrandMeister.

The P25Reflector is TG 334015
MMDVM_Bridge can do DMR and P25 at the same time so uyou will need only one instance
The easiest way to run 2 instances of Analog_Bridge is to have 2 .ini files. Copy the default Analog_Bridge.ini to Analog_Bridge_P25.ini and Analog_Bridge_DMR.ini
Edit each copy to configure for the mode and run the program with the name of the config file. ./Analog_Bridge Analog_Bridge_DMR.ini

These are very broad strokes. I suggest you build from the outside in.

Hope this helps,
Steve N4IRS
 

On 11/18/18 6:30 PM, Juan Carlos Pérez via Groups.Io wrote:
Hi everybody, I am really new to DV-Bridge, so I have a lot of questions after reading DVSwitch documentation.

So, I had successfully setup a Quantar repeater to connect with a Cisco 1841 and to a RaspberryPi running QuantarBridge and connecting it to MMDVM P25 talk groups.
1.- Is it possible to set an especific Talk Group to auto connect to a reflector (i.e. 10200) after lets say 10 minues that the repeater has been idle (like a reflector auto reconnect), unless a different Talk Group is selected by a PPT on that different Talk Group?

2.- It is possible to link a P25 local Talk Group (i.e. 334105) to a DMR Talk Group on BrandMeister (i.e. 334105)? In this case the TG 334105 on the BM network is the TG for my DMR repeater.

If any answer is yes, could you point me in the right direction to build that setup. 
Thank you,

Juan Carlos





Join main@DVSwitch.groups.io to automatically receive all group messages.