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 61bcc6cfd9
fixed LINKSTATUS problem with REF systems
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 moved example.php to index.php 6 years ago
ACKNOWLEDGEMENTS initial qnmodem commit 7 years ago
CONFIG+INSTALL libsqlite3-dev has to be installed before compiling QnetGateway.o 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 clean up 7 years ago
DPlusAuthenticator.h logging changes 7 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
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 roughly working index.php 6 years ago
QnetConfigure.h qnrelay uses QnetConfigure 7 years ago
QnetDB.cpp rptr_status moved to CQnetDB 6 years ago
QnetDB.h rptr_status moved to CQnetDB 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 rptr_status moved to CQnetDB 6 years ago
QnetGateway.h rptr_status moved to CQnetDB 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 fixed LINKSTATUS problem with REF systems 6 years ago
QnetLink.h rptr_status moved to CQnetDB 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 qnlink uses CSockAddress for v6 support 7 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 Breakout CTimer from Modem and use in DVAP and ITAP 7 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 installdash does a apt update and ii->find will go in state 6 6 years ago
aprs.h got rid of rptr.mod[x].desc 6 years ago
bash_aliases better bash aliases 6 years ago
defaults rptr_status moved to CQnetDB 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 report Unlinked 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 typos 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.