From 577bd6175c6c7882df7c45c66427aeea247f50e1 Mon Sep 17 00:00:00 2001 From: Tom Early Date: Fri, 13 Apr 2018 17:12:27 -0700 Subject: [PATCH] updated all documents --- ACKNOWLEDGEMENTS | 14 ++--- BUILDING | 117 ++++++++++++++-------------------- CONFIGURING | 159 +++++++++++++++++++++++------------------------ COPYING | 2 +- LICENSE | 2 +- README.md | 46 +++----------- 6 files changed, 142 insertions(+), 198 deletions(-) diff --git a/ACKNOWLEDGEMENTS b/ACKNOWLEDGEMENTS index d9196a9..686dcff 100644 --- a/ACKNOWLEDGEMENTS +++ b/ACKNOWLEDGEMENTS @@ -1,13 +1,11 @@ -g2_ircddb was original written by Scott Lawson, KI4LKF. Many of Scott's original comments are contained in the this -package. +QnetGateway started as g2_ircddb written by Scott Lawson, KI4LKF. Many of Scott's original comments are contained +in the this package. -g2_ircddb uses IRCDDB software written by Michael Dirska, DL1BFF. Both Scott and Michael published their code under -version 2 of the GNU General Public License. Since I have substantially modified both source streams, I have largely -removed their original copyright statements in source code and and have acknowledged their contribution to this -current project here. The current form of g2_ircddb would be completely impossible without Scott and Michael's -contribution. Thank you for a great starting point of this current project! +QnetGateway uses IRCDDB software written by Michael Dirska, DL1BFF. Both Scott and Michael published their code under +version 2 of the GNU General Public License. The current form of QnetGateway would be completely impossible without +Scott and Michael's contribution. Thank you for a great starting point of this current project! -g2_ircddb continues to be published under Version 2 of the GNU General Public License, see the LICENSE file. +QnetGateway continues to be published under Version 2 of the GNU General Public License, see the LICENSE file. Tom n7tae (at) arrl (dot) net diff --git a/BUILDING b/BUILDING index 66c9b3f..2e8ccfb 100644 --- a/BUILDING +++ b/BUILDING @@ -1,27 +1,20 @@ Creating a DVAP or a Version 1 DVRPTR hotspot based on a Raspberry Pi or a BeagleBone Black that can connect to both DStar reflectors as well as XREF reflectors based on -Scott Lawson KI4LKF software is easy. +QnetGateway software is easy. Start with a Raspberry Pi with the latest Raspbian image (see http://raspberrypi.org) -or a BeagleBone Black with the latest Debian image (see -http://beagleboard.org/latest-images). For this latest version of QnetGateway requires -the c++ compiler of at least version 4.9. This means you will need Debian 8 (Jessie). +or most any other computer with the latest Debian-based image. For this latest version +of QnetGateway requires the c++ compiler of at least version 4.9. -For the BBB, the jessie Debian version is small enough to fit onto the on-board 2gb -memory.The basic process is to first burn the image to a micro SD card then put -it into the BBB and power it up while holding down switch S2 until the BBB lights -start blinking. The process is done when the BBB LEDs quit blinking. Remove the -SD card and boot up off the on-board jessie! See info on the BBB website listed -above. +Even if you are building an MMDVMHost-based hot-spot, the executables and their +source code are very small, so you can get away with a system with minimum storage +capacity. We have build gui-less versions on two gigabyte partitions! On the RPi, do "sudo raspi-config" and expand the partition, change the password for the 'pi' user and do any other configuration setup. You don't need to overclock -the RPi for QnetGateway, the default clock rate is just fine. On the BBB, if you're -using the armhf.com image, follow the instructions on the armhf.com website to -expand the linux partion. Also don't forget to change the password for the 'debian' -user. +the RPi for QnetGateway, the default clock rate is just fine. -After your Linux is set up, login and plug in your DVAP or DVRPTR_V1 device to see +If you are using a DVAP Dongle or a DVRPTR_V1, login and plug in your device to see if the OS is recognizing it. The kernel should auto load drivers and you will see that with the "lsusb" command. The DVAP uses a FTDI chip and the DVRPTR uses Atmel. If you don't see an approprite output from "lsusb" after your device is plugged in, @@ -34,24 +27,16 @@ where YOURDEVICEMODULE is "ftdi_sio" for the DVAP or is "cdc_acm" for the DVRPTR After a reboot you should see the device in the "lsusb" list. If you don't see the device listed, QnetGateway software will never be able to open it either. -You will need several packages to build the QnetGateway gateway. You may already -have all or most of these but it still doesn't hurt to be sure: +You will need several packages to build the QnetGateway gateway. You will probably +already have all or most of these but it still doesn't hurt to be sure: sudo apt-get update sudo apt-get upgrade sudo apt-get install make g++ unzip git libconfig++-dev -and maybe a few more. Here is one of my favorites: - -sudo apt-get install avahi-daemon - -Then you can "ssh @.local" instead of "ssh $. -NOTE: Windows user can download and use 'putty' to connect to the RPi or -BBB. - -After you configure you RPi or BBB, update, upgrade and install all the required -packages, the gateway installation can begin. Go to your login home directory and -(without root privileges type: +If you are building a QnetGateway + MMDVMHost system, please use the instructions +in the MMDVM.README file. If you are building a QnetGateway for a DVAP or a +DVRPTR_V1 read on... git clone git://github.com/n7tae/QnetGateway.git @@ -72,7 +57,7 @@ at: Remeber the everything file contain detailed comments about all of the values you can set. Just read through it and edit accordingly. In the end you will need -a configuration file called "g2.cfg". +a configuration file called "qn.cfg". Additional information about the configuration as well as other important and useful features are also in the CONFIGURING file. @@ -97,55 +82,47 @@ will download a HUGE list of reflectors and gateways from www.va3uv.com with por address that may need port-forwarding to your sytem. I have provided anotherscript, 'get_reflectors.sh' that will download the same list from va3uv.com, but filter it so that it only contains DCS x-reflectors (DCSXXX), DStar reflectors (REFXXX) and -X-reflectors (XRFXXX) and it will put all x-reflectors on port 20001 so you won't -need any port-forwarding on your home router. +X-reflectors (XRFXXX) and it will put all x-reflectors on port 20001 so you +probably won't need any port-forwarding on your home router. There is another script, reflist.sh, that will download REF, XRF and DCS reflectors -from the W6KD file server. This has the advantage over VA3UV in that the reflector -IP address are in dotted-name format, rather than dotted-number format. These -dotted-name IP address will be resolved to dotted-number by QnetLink when it starts -up. The hope is that dotted-name IP addresses will change less frequently than -dotted-number addresses, so this method should last longer than the other two -methods. +from another source. This is probably the preferred method to getting a gwys.txt +file. Based on the above discussion, execute either "./reflist.sh", "./get_reflectors.sh" or -"./get_gwy_list.sh". If you want to be able to update your hotspot dynamically, -you can modify either one of these scripts by adding a "reboot" or "service -QnetLink restart" command at the end and moving it to /usr/local/etc/exec_?X.sh -where "?" is a number or letter. You can then execute this script with ?X in YRCALL. -See the discussion of executables in the CONFIGURING text file. +"./get_gwy_list.sh". -If you plan on using DTMFS, you can also edit proc_QnetGateway_dtmfs.sh to add new +If you plan on using DTMFS, you can also edit proc_qnlinktest to add new dtmfs commands. -Then install your system. you have two choices, either QnetDVAP or dvrptr by +Then install your system. you have two choices, either DVAP or DVRPTR_V1 by typing "sudo make installdvap" or "sudo make installdvrptr", respectively. +This should get you up and running. It will take a few minutes for QnetGateway +to get fully connected to the IRCDDB network. + Finally, if you want/need DTMFS, type "sudo make installdtmfs". -This will install the service scripts and symbolic links in /etc/init.d and -everything else in /usr/local. The executables will be in /usr/local/bin and the -g2.cfg file and other data will be in /usr/local/etc. If you find that you need to -modify the configuration file, edit the one in /usr/local/etc as root. If you edit -the file in the build directory, you will either have to copy these modified -configuration files you you will have to reinstall the application. - -At this point, you can either reboot to start the three or four services, or start -them manually with the "service" command. For example to start ircddb, type "sudo -service QnetGateway start". (See the man page for service.) - -If you are having trouble connecting, look in the *.log files in /var/log. These -log files are recreated every time you restart a service. The beginning of each -log file will report the values of all the configuration parameters (even the ones -you didn't specify in g2.cfg) and after that -you will see the verbose reports of what each service is doing. These logs are -invaluable for traking down problems with your g2.cfg file. In a putty or ssh -shell, you can see in real time what is being added to the logs during operation -by typing "tail -f /var/log/.log", where is one of the -service programs, 'QnetGateway', 'QnetLink', 'QnetDVAP', etc. +The service scripts in /lib/systemd/system and everything else in /usr/local: +The executables will be in /usr/local/bin and the qn.cfg file and other data +will be in /usr/local/etc. + +If you find that you need to modify the configuration file, remember that the +installed systems read the /usr/local/etc/qn.cfg file, NOT THE ONE IN YOUR +BUILD DIRECTORY. To keep them synced, it is good admin practice to modify the +qn.cfg file in your build directory and then do a "sudo make uninstall" followed by an "sudo make install. -These services talk to each other through ports and the default values -are set up for a 2 meter gateway (module C). If you are using a 70cm setup, just -change the module from "c" to "b". +If you are having trouble connecting, use journalctl to view the log output +of each process. "sudo journalctl -u will show the log from that +service. The QnetGateway service is qngateway, QnetLink is qnlink, QnetDVAP is +qndvap and QnetDVRPTR is qndvrptr. + +The beginning of each log file will report the values of all the configuration +parameters (even the ones you didn't specify in qm.cfg) and after that +you will see the verbose reports of what each service is doing. These logs are +invaluable for traking down problems with your qn.cfg file. You can see in real +time what is being added to the logs during operation appending "-f" to the +journalctl command. You can clean up the build directory of intermediate *.o files with "make clean" or, you can remove the intermediate *.o files and binary executables with "make @@ -155,7 +132,7 @@ build directory and not the copies you installed into /usr/local/bin with the If you want to uninstall everything return to the build directory and type either "sudo make unistalldvap" or "sudo make uninstalldvrptr" and possibly "sudo make -uninstalldtmfs". This will shutdown and remove the service scripts and links and -remove most everything from /usr/local. +uninstalldtmfs". This will shutdown the services and remove the service scripts +and everything from /usr/local. -Tom Early, n7tae@arrl.net +Tom Early, n7tae (at) arrl (dot) net diff --git a/CONFIGURING b/CONFIGURING index ec70667..2de0492 100644 --- a/CONFIGURING +++ b/CONFIGURING @@ -1,5 +1,24 @@ +/* + * Copyright (C) 2010, 2011, 2012 by Scott Lawson KI4LKF + * addition Copyright (C) 2015 by Thomas A. Early N7TAE + * + * This program 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; either version 2 of the License, or + * (at your option) any later version. + * + * This program 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + I have substantially modified (and hopefully simplified) the configuration -of this software, now, modules g2_ircddb, g2_link, dvap_rptr and dvrptr +of this software, now, modules QnetGateway, QnetLink, QnetDVAP and QnetDVRPTR all use a single configuration file. Further, and this is the exciting part, NEARLY ALL of the parameters these modules need have a useful default value. If the default value is acceptible to you (and it @@ -7,7 +26,7 @@ probably will be) then you only need to specify what you need to change. This means that for most users, you will only need to specify a few -parameters. For example, if you want to set up a 70cm dvap, your a working +parameters. For example, if you want to set up a 70cm dvap, your working configuration file might be: ------------------------------------------------------------------- @@ -20,14 +39,15 @@ ircddb = { module = { b = { - type = "dvap" + type = "dvap" frequency = 445.474 serial_number = "AP123456" } } -g2_link { +link = { link_at_start = "CREF020A" + admin = [ "XX0XXX"] } ------------------------------------------------------------------- @@ -39,48 +59,31 @@ different modules running on different computers and these hidden configuration parameters to allow that are there, waiting to be defined. However, most hams won't have to bother with them! -Some other features are discussed below. +Some other features are discussed below and are pretty much directly +quoted from KI4LKF original documentation. Tom Early, n7tae (at) arrl (dot) net -/* - * Copyright (C) 2010, 2011, 2012 by Scott Lawson KI4LKF - * addition Copyright (C) 2015 by Thomas A. Early N7TAE - * - * This program 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; either version 2 of the License, or - * (at your option) any later version. - * - * This program 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 - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ -G2_ircDDB adapted from the OpenG2 +G2_ircDDB adapted from the OpenG2 DESCRIPTION ================= -g2_ircddb is a Dstar G2 gateway for the Dstar network with ircDDB routing +QnetGateway is a Dstar G2 gateway for the Dstar network with ircDDB routing and USroot routing. It runs on Linux(as a Linux service). ircddb originated from the OpenG2 with only one change. - Instead of using the local Postgres database server, + Instead of using the local Postgres database server, we use the remote IRC database server.(group2 or group1) So, the difference between OpenG2 and ircddb is 0.01% -This new software g2_ircddb has been approved for use on the ircDDB network. +This new software QnetGateway has been approved for use on the ircDDB network. IRC Gateways such as g2_ircdb (other IRC gateways copied from our OpenG2) connect to group2 server(USA/Canada) or group1 server(Europe). What are these group1, group2 servers? Group1 and group2 servers are really the combination of 2 programs running together: -These are: +These are: ---- An IRC (Internet Relay Chat) program, in this case it is the inspIRCd program ---- the LDAP (Light Directory Access Protocol) program @@ -97,15 +100,15 @@ home-network. Using a PERSONAL callsign to set up an ircDBB gateway ===================================================== -In g2_ircddb.cfg, set OWNER equal to your personal callsign. -In g2_link.cfg, set OWNER equal to your personal callsign. +In qn.cfg, set OWNER equal to your personal callsign. +In QnetLink.cfg, set OWNER equal to your personal callsign. In your repeater config file, set OWNER equal to your personal callsign. Using a REPEATER callsign to set up an ircDBB gateway ===================================================== -In g2_ircddb.cfg, set OWNER equal to a REPEATER callsign (that you received +In QnetGateway.cfg, set OWNER equal to a REPEATER callsign (that you received from the ham authority of your Country). -In g2_link.cfg, set OWNER equal to a REPEATER callsign (that you received +In QnetLink.cfg, set OWNER equal to a REPEATER callsign (that you received from the ham authority of your Country) In your repeater config file, set OWNER equal to a REPEATER callsign (that you received from the ham authority of your Country). @@ -137,7 +140,7 @@ installations. That is all there is to it. -When LDAP runs, it checks the Gateway password as listed in g2_ircddb.cfg: +When LDAP runs, it checks the Gateway password as listed in QnetGateway.cfg: IRC_PASS=... When LDAP does NOT run, then the IRC_PASS is NOT checked. So, some groups of hams, have installed the inspIRCd server, without installing @@ -146,14 +149,14 @@ you can use your personal callsign. g2_ircDDB supports the following commands in YRCALL -Note: In the commands that folow, _ is a SPACE. +Note: In the commands that folow, _ is a SPACE. 1) -For Echotest/playback. +For Echotest/playback. YRCALL=_ _ _ _ _ _ _E 2) -For Voice Mail: +For Voice Mail: YRCALL=_ _ _ _ _ _ S0 The above command will Store/create voice mail in the dvtool file x_voicemail.dat. @@ -170,7 +173,7 @@ For inquiring the status of the link: YRCALL=_ _ _ _ _ _ _I 4) -For unlinking: +For unlinking: YRCALL=_ _ _ _ _ _ _U 5) @@ -195,23 +198,23 @@ Then the script exec_1.sh will be executed. Two scripts, exec_R.sh and exec_H.sh are included to reboot and halt your system, respectively. Also note that rpt1 is passed to these scripts\ so you can use this as an input parameter for your scripts. -Only admins can execute scripts, so set g2_link.admin to your callsign +Only admins can execute scripts, so set QnetLink.admin to your callsign 7) -Enabling and disabling INCOMING HotSpotNode connections: +Enabling and disabling INCOMING HotSpotNode connections: To Enable: YRCALL=_ _ _ _ _ _ D1 To Disable: YRCALL=_ _ _ _ _ _ D0 -Required software to run the g2_ircddb gateway correctly: ---- g2_ircddb: The G2 audio gateway. ---- g2_link: This communicates with g2_ircddb to link the local G2 gateway - to reflectors. Note: g2_link is NOT required if you only make +Required software to run the QnetGateway gateway correctly: +--- QnetGateway: The G2 audio gateway. +--- QnetLink: This communicates with QnetGateway to link the local G2 gateway + to reflectors. Note: QnetLink is NOT required if you only make routing calls or talk locally on the repeater. --- rptr: This is our dstar repeater software that uses a GMSK adapter/modem. - Instead of rptr, you can use our dvap_rptr dstar repeater software - which uses a DVAP device. Intead of rptr, you can use our dvrptr + Instead of rptr, you can use our QnetDVAP dstar repeater software + which uses a DVAP device. Intead of rptr, you can use our QnetDVRPTR dstar repeater software which uses the DV-RPTR modem(dg1ht). ROUTING methods @@ -221,7 +224,7 @@ KJ4NHF is one of our own Dstar repeaters, and KI4LKF is a personal callsign in our group. Example of ZONE routing: - Lets say that your repeater is KJ4NHF, and you are currently on + Lets say that your repeater is KJ4NHF, and you are currently on your local repeater module B, your callsign is KI4LKF and you want to reach remote gateway XXNYYY module C In this case, your radio should be programmed like this: @@ -231,7 +234,7 @@ Example of ZONE routing: RPT2=KJ4NHF G Example of CALLSIGN routing: - Lets say that your repeater is KJ4NHF, and you are currently on + Lets say that your repeater is KJ4NHF, and you are currently on your local repeater module B, your callsign is KI4LKF and you want to talk to user XX0XXX In this case, your radio should be programmed like this: @@ -241,7 +244,7 @@ Example of CALLSIGN routing: RPT2=KJ4NHF G Example of Cross-Band routing: - Lets say that your repeater is KJ4NHF, and you are currently on + Lets say that your repeater is KJ4NHF, and you are currently on your local repeater module B, your callsign is KI4LKF and you want to talk from your local module B to your local module C In this case, your radio should be programmed like this: @@ -254,24 +257,24 @@ DTMF decoding and processing ============================= Prepare the software to decode and process DTMF tones ----------------------------------------------------- -Edit the Shell script proc_g2_ircddb_dtmfs.sh +Edit the Shell script proc_qnlinktest.sh Correct the value for G2 to be the local G2 gateway -callsign(same value in g2_ircddb.cfg ----> OWNER) +callsign(same value in qn.cfg ----> OWNER) Edit G2_INT_IP as follows: - If your g2_ircddb.cfg, says "G2_INTERNAL_IP=0.0.0.0" then set + If your QnetGateway.cfg, says "G2_INTERNAL_IP=0.0.0.0" then set G2_INT_IP=127.0.0.1. - If your g2_ircddb, says G2_INTERNAL_IP= + If your QnetGateway, says G2_INTERNAL_IP= then set G2_INT_IP equal to the exact value of G2_INTERNAL_IP. -Edit G2_INT_PORT to be equal to G2_INTERNAL_PORT in g2_ircddb.cfg. +Edit G2_INT_PORT to be equal to G2_INTERNAL_PORT in QnetGateway.cfg. Note: When local RF user has entered dtmf tones on the Dstar HT - and then PTT is released, g2_ircddb will print the whole - sequence in the g2_ircddb.log just before it creates the + and then PTT is released, QnetGateway will print the whole + sequence in the QnetGateway.log just before it creates the dtmf file under /tmp. How to enter DTMF tones correctly on your Dstar HT -------------------------------------------------- -If you want to have perfect DTMF decoding/processing in g2_ircddb, +If you want to have perfect DTMF decoding/processing in QnetGateway, follow these suggestions: 1) Hold down each dtmf key for at least 150 milliseconds. @@ -311,15 +314,15 @@ Note: You can extend the shell ascript to do more things. like force your repeater to ID itself. Any YRCALL command that can be executed by g2link_test, can be added to the shell script. Basically, the -Linux shell script proc_g2_ircddb_dtmfs.sh converts the decoded +Linux shell script proc_QnetGateway_dtmfs.sh converts the decoded dtmf tones into YRCALL commands using g2link_test program. =========== -g2_link is a small program that is used to link a local RF repeater -band to a remote reflector. g2_link software is used by our g2_ircddb +QnetLink is a small program that is used to link a local RF repeater +band to a remote reflector. QnetLink software is used by our QnetGateway (an IRCddb gateway) and by our g2_ccs (a CCS gateway). -Before we begin, there are some dat files included in the g2_link +Before we begin, there are some dat files included in the QnetLink ZIP package. These dat files are: already_linked.dat @@ -353,7 +356,7 @@ Start talking, and the gateway will record your audio into the file x_voicemail.dat where x is one of A.B or C. Now copy that file into id.dat. -Open the file g2_link.cfg: +Open the file QnetLink.cfg: You can add as many lines to gwys.txt, if you know of any other reflectors that you want to be able to connect to. REF reflectors use port 20001(for USER connections), DCS reflectors use port @@ -361,54 +364,48 @@ Open the file g2_link.cfg: or 20001(for USER connections). You can have as many ADMIN lines as you want. ADMIN is user - callsign that can connect to your own gateway(g2_link) using + callsign that can connect to your own gateway(QnetLink) using DVTool, ... - - Only ADMIN users can use the scripts feature of this software. -Note: -The zip file g2_lh conatain a small program that you can run to create -the Dashboard for your gateway. + Only ADMIN users can use the scripts feature of this software. Note: -You may be thinking why did we put all this source code inside g2_link -instead of putting it all inside the Gateway software g2_ircddb (or +You may be thinking why did we put all this source code inside QnetLink +instead of putting it all inside the Gateway software QnetGateway (or g2_ccs CCS gateway software). Because it is NOT a good design to burden the G2 gateway with code that is not DSTAR protocol and reflectors are NOT part of Dstar and they are not Dstar protocol. The only code that should be in a gateway, is G2 protocol code. This way -we keep the gateways (g2_ircddb, g2_ccs) clean of any unneccesary source +we keep the gateway (QnetGateway) clean of any unneccesary source code logic and containing only pure G2/dstar logic. -dvap_rptr +QnetDVAP The serial number required in the .cfg file is obtained from the label that can be seen on the DVAP circuit board. In most cases set the power to maximum level. -dvrptr - - +QnetDVRPTR -The serial number required in the .cfg file can most easily be obtained -by examining the /var/log/dvrptr.log file once the board has been +The serial number required in the qn.cfg file can most easily be obtained +by examining the /var/log/QnetDVRPTR.log file once the board has been powered up by the BBB or RasPi. Once you know the board serial number, edit /usr/local/etc/g2.cfg. Please note that once installed, you need to edit the configuration files in /usr/local/etc, not where you build the software. You need to be root to edit files in /usr/local/etc. After editing /usr/local/etc/g2.cfg file you can restart the effected -program with "sudo service dvrptr restart". Or you can alway just +program with "sudo service QnetDVRPTR restart". Or you can alway just reboot with "sudo reboot". -Rig specific parameters are in "dvrptr.rf_rx_level", "dvrptr.inverse.rx" and -"dvrptr.inverse.tx". You need to play with these to work best with your rig. +Rig specific parameters are in "QnetDVRPTR.rf_rx_level", "QnetDVRPTR.inverse.rx" and +"QnetDVRPTR.inverse.tx". You need to play with these to work best with your rig. With my Kenwood TM-V71, I use the default values. You can first start with inverse.rx, trying true or false. Use the echo command on your radio and look in the logs to see if you are getting into the -dvprtr. Remember to restart the dvrptr service anytime you modify -/usr/local/etc/g2.cfg. Once you are able to get into the dvrptr, +dvprtr. Remember to restart the QnetDVRPTR service anytime you modify +/usr/local/etc/g2.cfg. Once you are able to get into the QnetDVRPTR, then you can work out the inverse.tx paramter. Once you hear anything with in the echo mode, move rf_rx_level up or down to get the best audio. diff --git a/COPYING b/COPYING index 3912109..999ca85 100644 --- a/COPYING +++ b/COPYING @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. diff --git a/LICENSE b/LICENSE index d7f1051..985dc35 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -GNU GENERAL PUBLIC LICENSE + GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., diff --git a/README.md b/README.md index d0451a8..7ca8c7a 100644 --- a/README.md +++ b/README.md @@ -1,46 +1,18 @@ -g2_ircddb -========= +QnetGateway +=========== -NEWEST! g2_ircddb now no longer depends on wxWidgits. You will need a to have a reasonably modern compiler. Type "g++ --version" to see what you have before you get started. I know it will compile properly with version 4.9, but I'm not sure how far back you can go. The jessie Raspbian works, but the wheezy Raspbian probably will not, at least out of the box. If you are stuck with an older compiler, you'll have to go with an earlier version of g2_ircddb, and there, you will have to make wxWidgits. +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 and the DVRPTR_V1. It is *incredibly easy* to build and install the system. -NEW! Software configuration is SIGNIFICANTLY easier because most parameters now have default values. Most hams will only need to define a few things. +For building a QnetGateway + MMDVMHost system, see the MMDVM.README file. For a QnetGateway for a DVAP or DVRPTR, see the BUILDING file. -PRETTY NEW: g2_ircddb has come up to current practices when it comes to ":IRCDDB" irc commands. This means irc hosts like rr.openquad.net can list your repeater frequency, offset, location and URL automatically if you want. +For details of interesting things QnetGatway can do, see the CONFIGURING file. For example, with QnetGateway, you can execute up to 36 different Linux scripts from you radio. Two scripts are include: -This package is for making a ircddb gateway based on Scott Lawson KI4LKF g2_ircddb gateway software. I have now been adding new stuff to Scott's code. If your having problems with something, it's probably my fault. Please give be a shout! +YourField = _ _ _ _ _ _ H X will halt your system. +YourField = _ _ _ _ _ _ R X will reboot your system. -Two repeater devices are supported so far: the DVAP dongle (http://www.dvapdongle.com) and the dvrptr V1 (http://www.dvrptr.net). +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. -Creating a portable ircddb hotspot based on a Raspberry Pi or a BeagleBone Black that can connect to DStar reflectors, XREF reflectors and DCS reflectors based on this software is easy. - -As configured, this software requires a Debian or Debian-based Linux OS and works very well on a Raspberry Pi (http://raspberrypi.org) on Raspbian Liunx or a BeagleBone Black (http://beagleboard.org) running Debian Linux. Depending on your knowledge with your choice of OS, you can probably get this to work on others as well. The closer you are to a Debian base, the easier it will be. - -Start with a Raspberry Pi with the latest Raspbian image (see http://raspberrypi.org) or a BeagleBone Black with the latest Debian image (see http://beagleboard.org/latest-images). This software will EASILY fit on the 2gb on-board memory of the older Rev. B of the BBB, but you will still need a uSD card to install the armhf.com Debian image to the on-board memory. If you are using Raspbian on a RasPi, be sure to configure Raspbian with the `sudo raspi-config` command. If you are using Debian on a BBB, be sure to look over the notes on expanding the uSD memory on the www.armhf.com website. - -You can also use the new Debian images on BeagleBone.org. New BBBs (with the 4gb on-board memory) are now shipping with Debian instead of Angstrom and g2_ircddb will compile and install just fine on this Debian image. However, right now (late June 2014) there are still some minor bugs in this package, e.g., `halt` in a ssh shell will hang the shell. Hopefully, `sudo apt-get upgrade` will eventually fix this. - -You will need several packages to build software. The RasPi will probably have most of these but it still doesn't hurt to be sure: - -``` -sudo apt-get update -sudo apt-get upgrade -sudo apt-get install make g++ unzip git libconfig++-dev -``` - -and maybe a few more of your favorite packages. Here is one of my favorites: `sudo apt-get install avahi-daemon`. Then you can `ssh user@hostname.local` instead of `ssh user@ip_address`. If you are starting with a "bare bones" distribution, you may need usb support: `sudo apt-get install usbutils`. - -After you install all the required packages, the g2_ircddb gateway installation can begin. Go to your login home directory and (without root privileges) type: -``` -git clone git://github.com/n7tae/g2_ircddb.git -``` -Then cd into the new g2_ircddb directory and review the `BUILDING` and `CONFIGURING` file for further instructions, here is an outline: -``` -Make the g2 modules.......................... "make" -Make the configuration file, g2.cfg.......... start by copying one of the examples to g2.cfg and then editing. -Download the latest gateway list, gwys.txt... "./get_gwy_list.sh" or "./get_reflectors.sh" -Install g2................................... "sudo make installdvap" or "sudo make installdvrptr" -Reboot and enjoy!............................ "sudo reboot" -``` +QnetGateway is brought to you by the folks at QuadNet, but it should work on any IRCDDB network. 73