Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Cannot retrieve contributors at this time
Building a QnetGateway + MMDVMHost System
Copyright (C) 2018 by Thomas A. Early N7TAE
I'll assume you'll be doing this on a Raspberry Pi, but any modern Debian-based
system should work. It just needs a g++ compiler with version greater than 4.9.
These instructions assume you have configured your system with the locale, keyboard
and time zone. When choosing locale, always choose a "UTF-8" version of your
locale. And make sure you do "sudo apt-get update && sudo apt-get upgrade" before
your start. On a Raspberry Pi, you can do all of this with the configuration menu:
"sudo raspi-config".
If you are using a device that uses the GPIO header on the raspberry pi, you need to
disable the serial0 console in the /boot/cmdline.txt file: Remove the reference to
"console=serial0,115200" in this file. You should also disable bluetooth by adding:
"dtoverlay=pi3-disable-bt" (without the quotes) to the end of the /boot/config.txt.
In your parent directory of your QnetGateway build...
1) Clone the QnetGateway repository: git clone
Clone the MMDVMHost repository: git clone
Likewise if you want DMRGateway: git clone
Likewise if you want YSFGateway: git clone
2) cd to the QnetGateway directory and configure it: cd QnetGateway; ./qnconfig
Make sure you set your callsign in the irc menu and set an mmdvmhost modem
in module A, B or C. Write out the configuration file before you leave qnconfig.
3) cd into the MMDVMHost directory and copy the ini file template:
cp MMDVM.ini MMDVM.qn
Edit the MMDVM.qn file. Set your Callsign and Id. Turn off duplex. Enable an
external display, if you have one. Set the Frequency(s). Set the Latitude and
other location info if you want. Change the log levels. I use DisplayLevel=2
and FileLevel=0. Set the Port on your modem. Disable all services you aren't
going to use. Very important: Set the [D-Star] Module. For UHF use B and for
VHF use C.
4) If you are using the DMRGateway cd to that directory and copy the ini file:
cp DMRGateway.ini DMRGateway.qn
Edit this new DMRGateway.qn file for your system.
5) If you are using the YSFGateway cd to that directory and copy the ini file:
cp YSFGateway.ini YSFGateway.qn
In the [General] section, set your callsign and suffix (either RPT or ND).
In the [Info] section, set your RX & TX frequencies, and any other details
as you like. In the [Log] section, set your log levels as your like, set a
/FULL/PATH/TO/LOGROOTFILE for the log, and define the FileRoot--or disable
logging by setting both DisplayLevel and FileLevel to '0'. in the [Network]
section, set a startup reflector (FCS, YSF or XLX), and set InactivityTimeout
(in minutes) as desired. If the reflector is changed, it will return to the
startup reflector after the inactivity timeout is reached if 'Revert' is set
to '1'. 'Options' allows you to monitor multiple DG-IDs if connected to a YCS
server such as QuadNet's FCS310. You set the TX DG-ID on your radio to which
ever DG-ID you wish to transmit into. This has its benfits and drawbacks.
The to TX DG-ID is a global setting on Yaesu radios, so you cannot save it in
a channel like a DMR talkgroup. You must change the DG-ID in the GM menu each
time. Basically, it is good for monitoring, a little cumbersome for talking.
For [YSFNetwork], set the /FULL/PATH/TO/YSFHosts.txt. And finally for
[FCSNetwork], set the /FULL/PATH/TO/FCSRooms.txt. __NEVER__ connect to a
transcoding reflector network such as QuadNet with more than one mode on the
same MMDVM hotspot/ node/ repeater.
6) Next, your ready to install your software. For that, first move back to the
QnetGateway directory andstart the administration script: ./qnadmin
First you want to create you gwys.txt file. This file contains a list of
reflectors and repeaters you might like to link. Got into the gwys.txt menu
creation sub-menu with "gw" and select one of three different methods to
generate a gwys.txt file. You can add and/or delete records manually in
this sub-menu. Return to the main menu because your now ready to build and
install your system. Install your configured system with "is". This will
compile and install everything that you have configured.
7) There are many additional things that can be done in the administration menu.
Enter the log menu with "l" and from there you can view logs from each
running process.
8) DTMF is _not_ enabled by default if you want it, type "id" in the main menu.