You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
3.8 KiB
90 lines
3.8 KiB
|
|
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 configureation menu:
|
|
"sudo raspi-config".
|
|
|
|
1) Install the only external library you need: sudo apt-get install libconfig++-dev
|
|
Yeah! No wxWidgets!
|
|
|
|
Now in your home directory...
|
|
|
|
2) Clone the MMDVMHost repository: git clone git://github.com/g4klx/MMDVMHost.git
|
|
|
|
3) cd into the MMDVMHost directory and compile: make
|
|
If you're on a multicore system use: make -jx
|
|
where x is the number of processors on you system.
|
|
To tell how many processors you have: cat /cpu/info | grep processor | wc -l
|
|
|
|
4) Copy the ini file: cp MMDVM.ini MMDVM.qn
|
|
|
|
5) 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 except for
|
|
D-Star (at least for now). Very important: Set the [D-Star] Module. For UHF
|
|
use B and for VHF use C.
|
|
|
|
6) Let's test it! Start it: ./MMDVMHost MMDVM.qn
|
|
|
|
7) Key your radio and see if the MMDVMHost responds with an acknowledgement. Then
|
|
you'll know that everything on the MMDVM side is fine.
|
|
|
|
8) Stop the MMDVMHost with a Control-C and edit the MMDVM.qn file again. Change
|
|
the [D-Star] AckReply=0
|
|
You won't/don't want this reply from MMDVMhost. You want the acknowledgement
|
|
from QnetGateway, it's more informative.
|
|
|
|
We'll come back to MMDVMHost later, but for now let's work on the QnetGateway.
|
|
|
|
9) cd back to the home directory and clone the QnetGateway:
|
|
git clone git://github.com/n7tae/QnetGateway.git
|
|
|
|
10) Get into the build directory: cd QnetGateway
|
|
|
|
11) Then compile: make
|
|
don't forget the -j option!
|
|
|
|
12) You need a configuration file called qn.cfg for QnetGateway. A good, nearly
|
|
working config file is qn.mmdvm.cfg. Copy it to qn.cfg and edit it.
|
|
|
|
13) You need a gwys.txt file for all the reflectors: ./reflist.sh
|
|
This will download and format your reflect list. If you find you can no longer
|
|
connect to a reflector, it may be because its IP address has changed. You can
|
|
execute the reflist.sh script again, copy it to /usr/local/etc, and then
|
|
either reboot you system, or put "_ _ _ _ _ _ _ L" in your URField and key
|
|
your radio.
|
|
|
|
14) Install and start the three QnetGateway services: sudo make install
|
|
|
|
Now it's time to start the MMDVMHost service. You'll do this from the
|
|
QnetGateway directory you are aleady in...
|
|
|
|
15) Start the MMDVM service: sudo make installmmdvm
|
|
This command will fail if it can't find both MMDVMHost and MMDVM.qn
|
|
in the ../MMDVMHost directory.
|
|
|
|
You should be up and running now! Congratulations! <Fireworks!>
|
|
|
|
16) You can see the log of any of the 4 services that make up the QnetGateway +
|
|
MMDVMHost system:
|
|
sudo journalctl -u qngateway -f
|
|
sudo journalctl -u qnlink -f
|
|
sudo journalctl -u qnrelay -f
|
|
sudo journalctl -u mmdvm -f
|
|
|
|
You can do all four of these in one terminal window (that you can detach from!)
|
|
by using "screen": sudo apt-get install screen
|
|
If you don't know how to use screen: http://aperiodic.net/screen/quick_reference
|
|
Being able to detach from a screen session is very useful, especially if you are
|
|
operating "headless"!
|
|
|
|
17) Start other MMDVMHost services...
|