A multi-network DMR gateway for the MMDVM.
Find a file
Tony Corbett, G0WFV 0d13b2247d Correct message
2017-10-04 15:26:14 +01:00
Audio Use the same logic as the D-Star voice unit. 2017-10-03 09:27:40 +01:00
.gitignore Add GitVersion.h 2017-05-23 09:52:25 +01:00
BPTC19696.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
BPTC19696.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
Conf.cpp Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
Conf.h Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
CRC.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
CRC.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRCSBK.cpp Add new processing blocks for CSBK and Data Headers. 2017-08-01 21:55:47 +01:00
DMRCSBK.h Add new processing blocks for CSBK and Data Headers. 2017-08-01 21:55:47 +01:00
DMRData.cpp Initial commit. 2017-04-20 20:51:30 +01:00
DMRData.h Initial commit. 2017-04-20 20:51:30 +01:00
DMRDataHeader.cpp Add new processing blocks for CSBK and Data Headers. 2017-08-01 21:55:47 +01:00
DMRDataHeader.h Add new processing blocks for CSBK and Data Headers. 2017-08-01 21:55:47 +01:00
DMRDefines.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMREMB.cpp Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
DMREMB.h Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
DMREmbeddedData.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMREmbeddedData.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRFullLC.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRFullLC.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRGateway.cpp Correct message 2017-10-04 15:26:14 +01:00
DMRGateway.h Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
DMRGateway.ini Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
DMRGateway.sln Initial commit. 2017-04-20 20:51:30 +01:00
DMRGateway.vcxproj Merge branch 'master' into XLXs 2017-09-16 14:50:30 +01:00
DMRGateway.vcxproj.filters Allow for switching between XLX reflectors. 2017-08-20 21:48:49 +01:00
DMRLC.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRLC.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRNetwork.cpp Add optional names for each network for use in the log, 2017-08-01 21:51:22 +01:00
DMRNetwork.h Add optional names for each network for use in the log, 2017-08-01 21:51:22 +01:00
DMRSlotType.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
DMRSlotType.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
Golay2087.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
Golay2087.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
Hamming.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
Hamming.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
LICENCE Initial commit. 2017-04-20 20:51:30 +01:00
Log.cpp Initial commit. 2017-04-20 20:51:30 +01:00
Log.h Initial commit. 2017-04-20 20:51:30 +01:00
Makefile Allow for switching between XLX reflectors. 2017-08-20 21:48:49 +01:00
MMDVMNetwork.cpp Alter log messages to differentiate between DMR and MMDVM networks 2017-06-08 10:29:36 +01:00
MMDVMNetwork.h Allow for passing of beacon requests from the networks to the repeater. 2017-06-02 16:29:01 +01:00
PassAllPC.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
PassAllPC.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
PassAllTG.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
PassAllTG.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
prebuild.cmd Add compilation time stamp and GitID to binaries 2017-05-23 10:07:44 +02:00
QR1676.cpp Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
QR1676.h Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
README.md Upgrade the README. 2017-09-22 20:32:12 +01:00
Reflectors.cpp Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
Reflectors.h Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
RepeaterProtocol.cpp Virtualise the repeater protocol class. 2017-04-30 11:13:35 +01:00
RepeaterProtocol.h Allow for passing of beacon requests from the networks to the repeater. 2017-06-02 16:29:01 +01:00
Rewrite.cpp Fix LCSS bug and improve swap usage. 2017-08-03 20:49:44 +01:00
Rewrite.h Fix LCSS bug and improve swap usage. 2017-08-03 20:49:44 +01:00
RewritePC.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewritePC.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteSrc.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteSrc.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteTG.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteTG.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteType.cpp Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RewriteType.h Handle TA and Embedded GPS data correctly. 2017-08-02 19:30:39 +01:00
RingBuffer.h Initial commit. 2017-04-20 20:51:30 +01:00
RS129.cpp Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
RS129.h Add the TG rewrite code. 2017-04-28 16:45:05 +01:00
SHA256.cpp Initial commit. 2017-04-20 20:51:30 +01:00
SHA256.h Initial commit. 2017-04-20 20:51:30 +01:00
StopWatch.cpp Initial commit. 2017-04-20 20:51:30 +01:00
StopWatch.h Initial commit. 2017-04-20 20:51:30 +01:00
Sync.cpp Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
Sync.h Initial commit for voice prompts. 2017-05-01 09:35:17 +01:00
Thread.cpp Initial commit. 2017-04-20 20:51:30 +01:00
Thread.h Initial commit. 2017-04-20 20:51:30 +01:00
Timer.cpp Initial commit. 2017-04-20 20:51:30 +01:00
Timer.h Initial commit. 2017-04-20 20:51:30 +01:00
UDPSocket.cpp Initial commit. 2017-04-20 20:51:30 +01:00
UDPSocket.h Initial commit. 2017-04-20 20:51:30 +01:00
Utils.cpp Initial commit. 2017-04-20 20:51:30 +01:00
Utils.h Initial commit. 2017-04-20 20:51:30 +01:00
Version.h Bump the version date. 2017-09-22 21:17:55 +01:00
Voice.cpp Use the same logic as the D-Star voice unit. 2017-10-03 09:27:40 +01:00
Voice.h Use an unordered_map for the AMBE phrases. 2017-10-01 08:10:08 +01:00
XLXHosts.txt Simplify the format of the XLX Hosts file a little. 2017-09-26 14:58:22 +01:00
XLXHostsupdate.sh Fix newline problem in the output file. Thanks to Steve G8ZMG. 2017-09-29 10:13:00 +01:00

This is the DMR Gateway which allows for the connection of up to three different DMR networks to one MMDVM system. One of the networks is defined as being XLX950, while the other two may be DMR+ and BrandMeister. All are optional.

This software works by use of powerful rewriting rules which allow for changes in the slot, talk group, the type, and even the destination, of the messages. Without a rewrite rule, even if it does no actual rewriting, traffic will not be passed through from that defined network to the MMDVM and back again.

For example, the default configuration moves the announcements from BrandMeister for linking and unlinking to the same talk group slot as the reflectors themselves, a far more reasonable configuration than the default BrandMeister one.

The rewrite rules dont apply to the XLX reflector, where only the slot and the talk group used may be changed. The controls i.e. private calls, for altering the reflector are fixed.

The MMDVM .ini file should have the IP address and port number of the client in the [DMR Network] settings.

They build on 32-bit and 64-bit Linux as well as on Windows using Visual Studio 2017 on x86 and x64.

This software is licenced under the GPL v2 and is intended for amateur and educational use only. Use of this software for commercial purposes is strictly forbidden.