A DStar IRCDDB client gateway that supports MMDVMHost, the DVAP Dongle, DVRPTR V1, Icom Terminal and Access Point Mode and MMDVM modems (w/o MMDVMHost). Easy (and fast) to compile and install on Debian-based OS (like Raspbian). Now with IPv4/6 dual-stack support.
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.
 
 
 
 
 
Go to file
Tom Early fd73e431fd
ack after a ' F'
6 years ago
announce restart itap if packet not acknowledged 6 years ago
ircddb move cache inside CIRCDDB 6 years ago
system changed dash start dir and dash packages 6 years ago
.gitignore ignore My_Hosts.txt 6 years ago
ACKNOWLEDGEMENTS initial qnmodem commit 7 years ago
CONFIG+INSTALL My_Hosts.txt 6 years ago
COPYING updated all documents 8 years ago
CacheManager.cpp independent cache for each IRC client 6 years ago
CacheManager.h independent cache for each IRC client 6 years ago
DASHBOARD.README Dashboard order 6 years ago
DPlusAuthenticator.cpp faster gwys.txt loading 6 years ago
DPlusAuthenticator.h database complete for gateway map 6 years ago
DStarDecode.cpp moved decode stuff to new class 6 years ago
DStarDecode.h moved decode stuff to new class 6 years ago
DTMF+REMOTE+VOICE.README changed voicemail to dat2 7 years ago
DVAPDongle.cpp move silent frame log 7 years ago
DVAPDongle.h aliases, not typdefs 6 years ago
HostQueue.h faster gwys.txt loading 6 years ago
LICENSE updated all documents 8 years ago
MMDVM.README More doucmentation changes 7 years ago
Makefile rptr_status moved to CQnetDB 6 years ago
OPERATING relink release version 6 years ago
QnetConfigure.cpp gateways are now in the database 6 years ago
QnetConfigure.h qnrelay uses QnetConfigure 7 years ago
QnetDB.cpp better CQnetDB::Init 6 years ago
QnetDB.h better CQnetDB::Init 6 years ago
QnetDVAP.cpp moved decode stuff to new class 6 years ago
QnetDVRPTR.cpp moved decode stuff to new class 6 years ago
QnetGateway.cpp better CQnetDB::Init 6 years ago
QnetGateway.h <map> no longer needed in QnetGateway 6 years ago
QnetITAP.cpp moved sigaction to std::signal 6 years ago
QnetITAP.h moved sigaction to std::signal 6 years ago
QnetLink.cpp ack after a ' F' 6 years ago
QnetLink.h ack after a ' F' 6 years ago
QnetModem.cpp moved sigaction to std::signal 6 years ago
QnetModem.h aliases, not typdefs 6 years ago
QnetRelay.cpp moved sigaction to std::signal 6 years ago
QnetRelay.h qnrelay uses QnetConfigure 7 years ago
QnetRemote.cpp taught qnremote to use '_' in URCall 6 years ago
QnetTypeDefs.h aliases, not typdefs 6 years ago
QnetVoice.cpp added bad dtmf command voice prompt 7 years ago
README.md libsqlite3-dev has to be installed before compiling QnetGateway.o 6 years ago
Random.h remove Random.cpp 7 years ago
SEcho.h aliases, not typdefs 6 years ago
SockAddress.h include for SockAddress.h 6 years ago
TCPReaderWriterClient.cpp qnlink uses CSockAddress for v6 support 7 years ago
TCPReaderWriterClient.h changed proc names for better isolation 7 years ago
Timer.h better SRPTR alias 6 years ago
UnixDgramSocket.cpp CUnixDgramReader::Read and CQnetModem::ProcessGateway improvements 7 years ago
UnixDgramSocket.h qngateway compiles 7 years ago
Utilities.h dashboard with last heard 6 years ago
aprs.cpp removed some APRS msgs 6 years ago
aprs.h better SRPTR alias 6 years ago
bash_aliases better bash aliases 6 years ago
defaults database complete for gateway map 6 years ago
exec_G.sh dtmf now includes exec commands with voice prompts for G, H and R 7 years ago
exec_H.sh dtmf now includes exec commands with voice prompts for G, H and R 7 years ago
exec_R.sh dtmf now includes exec commands with voice prompts for G, H and R 7 years ago
index.php align time in dashboard 6 years ago
qn.dvap.cfg tweaks 7 years ago
qn.everything.cfg dashboard with last heard 6 years ago
qn.itap.cfg tweaks 7 years ago
qn.mmdvm.cfg tweaks 7 years ago
qnadmin My_Hosts.txt 6 years ago
qnconfig Dashboard order 6 years ago
qndtmf.sh fix GetLetter 6 years ago

README.md

QnetGateway

The QnetGateway is an D-Star IRCDDB gateway application that supports MMDVMHost (and all of its supported repeater modems) as well as the DVAP Dongle, the DVRPTR_V1. It is incredibly easy to build and install the system.

QnetGateway now includes a dashboard with a last heard section. The lastheard section uses SQLite3, a light-weight database, so you will need a package to compile the gateway:

sudo apt install libsqlite3-dev

QnetGateway is dual-stack capable. This means it can simultaneously connect to rr.openquad.net, which is IPv4 based (using 32-bit internet addresses) and to rrv6.openquad.net which is IPv6 based (using 128-bit internet address). If your hot-spot/reapeater has IPv6 access you can enable dual-stack operation (it's IPv4-only by default) and then take advantage of direct world-routable address. The potential benefit of IPv6 to routing is significant.

The QnetGateway program includes support for Icom's new Terminal Mode and Access Point mode. For more information, Terminal Mode turns off the RF portion of you radio and just uses the AMBE vocoder to convert between audio and AMBE data and then sends and receives that data through a USB serial cable. Access Point mode turns your Icom radio into a high power, simplex hot-spot.

QnetGateway supports MMDVM modems directly, without the need for MMDVMHost. This is for hams that want to use their MMDVM devices and create a hot-spot for D-Star mode only. (You still can talk to your friends on other modes by gathering at multi-mode reflectors, like the QuadNet Array!)

For building a QnetGateway + MMDVMHost system, see the MMDVM.README file. To build QnetGateway that uses a DVAP Dongle or DVRPTR V1, see the CONFIG+INSTALL file. To build QnetGateway for an Icom Repeater Stack, I have another repo at QnetIcomGateway. Detailed information is available there.

To get started with an MMDVM-modem, DVAP, DVRPTR or Icom Terminal and/or Access Point system, clone this software to your Linux device:

git clone git://github.com/n7tae/QnetGateway.git

Then look to the MMDVM.README or the BUILDING file for more information.

QnetGateway includes a "remote control" program, called qnremote. After you build and install the system, type qnremote for a prompt on how to use it. Using this and cron, it's possible to setup schedules where you system will automatically link up to a reflector, or subscribe to a Routing Group. For More information, see DTMF+REMOTE.README.

For other details of interesting things QnetGatway can do, see the OPERATING file. For example, with QnetGateway, you can execute up to 36 different Linux scripts from you radio. Two scripts are include:

YourCall = "      HX"   will halt your system.
YourCall = "      RX"   will reboot your system.
YourCall - "      GX"   will restart QnetGateway

QnetGateway is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. QnetGateway is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LICENSE file for more details.

Many thanks go to Colby W1BSB, Will W4WWM and Carty KA2Y for recent help, suggestions, discussion and criticisms of the Qnet*/MMDVMHost phase of this long-term project! Also thanks to Jonathan G4KLX for MMDVMHost. It gave QnetGateway access to a large number of D-Star compatible modems!

Finally, QnetGateway is brought to you by the folks at QuadNet2 USA IRC Network, but it should work on any IRCDDB network.

73

Tom

N7TAE (at) arrl (dot) net

Powered by TurnKey Linux.