diff --git a/BUILDING b/BUILDING index 01710ff..b63a84e 100644 --- a/BUILDING +++ b/BUILDING @@ -1,6 +1,6 @@ -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 -QnetGateway software is easy. +Creating a hotspot based on a Raspberry Pi or a BeagleBone Black that can connect to +XRF and DCS reflectors as well as XREF reflectors based on QnetGateway software is +easy. Start with a Raspberry Pi with the latest Raspbian image (see http://raspberrypi.org) or most any other computer with the latest Debian-based image. For this latest version @@ -8,17 +8,15 @@ of QnetGateway requires the c++ compiler of at least version 4.9. 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! +capacity. We have build gui-less versions on two gigabyte partitions! You don't need +to overclock the RPi for QnetGateway, the default clock rate is just fine. -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. - -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, -you need to enable it by executing: +If you are using a DVAP Dongle or a DVRPTR_V1, or connecting to an Icom Terminal and +Access Point enabled radio,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 and the Icom radio digital-to-serial cable 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, you need to enable it by executing: sudo depmod sudo modprobe @@ -47,11 +45,13 @@ dvrptr ircddb gateway. The first thing to do is change to the build directory with "cd QnetGateway" and then choose a target to make. There are targets for each of the supported devices: . "make icom" will build all programs needed for the Icom repeater. +. "make itap" will build all programs needed for Icom Terminal and Access mode. . "make dvap" will build all programs needed for the DVAP Dongle. . "make dvrptr" will build all programs needed for the DVRPTR_V1. . "make mmdvm" will build all programs needed for MMDVMHost support. (You need to download and build MMDVMHost separately, see the MMDVM.README file for more info. -. "make" will build all the QnetGateway executables. +. "make" will build all the QnetGateway executables. This is useful if you are + experimenting around with lots of different devices. Next, create your qn.cfg configuration file. There are three example for you to look at: @@ -63,6 +63,8 @@ at: . qn.icom.cfg is the starting place for configuring an Icom repeater. Please note that QnetGateway doesn't support the 23cm data only module in the Icom repeater stack. +. qn.itap.cfg is a simple configuration file for Icom's Terminal and Access Point + Mode. Please read ITAP.README for more information. Remeber the everything file or the icom file contain detailed comments about all of the values you can set. Just read through it and edit accordingly. In the end you will @@ -105,6 +107,9 @@ change the commands or create new commands. You are now ready to install your QnetGateway system. If you are installing an MMDVM-based system, follow the instructions in MMDVM.README. +If you are installing Icom's Terminal and Access Point mode, please follow the +instructions in ITAP.README. + To install either DVAP or DVRPTR_V1, type "sudo make installdvap" or "sudo make installdvrptr", respectively. If you are installing on an Icom repeater, type "sudo make installicom". This should get you up and running. It will take a few diff --git a/ITAP.README b/ITAP.README new file mode 100644 index 0000000..a47408e --- /dev/null +++ b/ITAP.README @@ -0,0 +1,77 @@ + + Building QnetGateway support for Icom's Terminal and Access Point Mode + + 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! + +2) From your home directory, clone the QnetGateway software: + git clone git://github.com/n7tae/QnetGateway.git + +3) Get into the build directory: cd QnetGateway + +4) Then compile: make itap + If you are building on a multi-core computer, don't forget the -j option! + On a Raspberry Pi 2 or 3, use "-j4". Sorry, a Raspberry Pi Zero or a Beagle + Bone Black just has a single core. + +5) You need a configuration file called qn.cfg for QnetGateway. A good, nearly + working config file is qn.itap.cfg. Copy it to qn.cfg and edit it. The default + device for the Icom digital cable is "/dev/ttyUSB0". If you have muliple + USB devices on your system the device might end up somewhere else. Do "ls /dev" + before and after plugging in your cable to figure out where it is. If it's + not on /dev/ttyUSB0, uncomment the device line and put in the correct device. + +6) You need a gwys.txt file for all the systems to which you may wish to link. + If you want to be able to link to repeaters: ./get_gwy_list.sh + If you are only interested in linking to reflectors: ./reflist.sh + This will download and format your gwys.txt file. If the reflector(s) or + repeater(s) you use most often are not present in the gwys.txt file, you can + add them manually, using the same syntax as the existing entries, at the end + of the file. If you find you can no longer connect to a system, it may be + because its IP address has changed. You can execute either script again, copy + it to /usr/local/etc, and then: either reboot you system, or put " F" in + your URField and key your radio, or: sudo systemctl restart qnlink + +7) Now it's time to get the Icom radio ready. Plug in the digital cable to the + radio and use the approprite cable to connect to your hot-spot. Turn on the + radio and press the menu key and go to the "DV Gateway" menu item and press + the enter key and select either Access Point or Terminal mode. If you select + Access point, adjust the frequency in the usual way. + + If you are using Access Point mode, you'll probably want to turn down the + volume and disable other audio prompts from the radio that is operating + as an access point. Please refer to the Icom manual to do this. + +8) We have a gwys.txt file and a qn.cfg in the build directory, so we are ready + to install and start the three QnetGateway services: sudo make installitap + + You should be up and running now! Congratulations! + +9) You can see the log of any of the 3 services that make up the QnetGateway + system: + sudo journalctl -u qngateway -f + sudo journalctl -u qnlink -f + sudo journalctl -u qnitap -f + + You can do all three 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"! + +10) DTMF is _not_ enabled by default if you want it, you need to do two things: + First, create a working DTMF script. In the build directory: cp qndtmf.sh qndtmf + Then, install the DTMF service: sudo make installdtmf + You should be good to go, The DTMF command "00" should announce the linked + status of you module. See DTMF+REMOTE.README for more information. + diff --git a/README.md b/README.md index 066d369..f0219b9 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ 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 and now the Icom repeater. It is *incredibly easy* to build and install the system. +The Qnet Gateway program now includes support for Icom's new Terminal and Access Point modes. For more information, please read the ITAP.README file. + For building a QnetGateway + MMDVMHost system, see the MMDVM.README file. To build QnetGateway that uses a DVAP Dongle or DVRPTR V1, see the BUILDING file. To get started, clone the software to your Linux device: diff --git a/qn.itap.cfg b/qn.itap.cfg new file mode 100644 index 0000000..e991b63 --- /dev/null +++ b/qn.itap.cfg @@ -0,0 +1,32 @@ +# g2_ircddb Configuration for me + +ircddb = { + login = "XX0XXX" +# If you are not using rr.openquad.net, you need to specify the host and possibly the password. +# +# host = "some.server.host" // others include group1-irc.ircddb.net +# password = "1111111111111" // not needed for rr.openquad.net +} + +module = { + c = { // change the module to "b" if you are operating on the UHF band + type = "itap" +# device = "/dev/ttyUSB0" // if your serial-to-usb cable ends up on another device, then specify here +# uncomment and set if you want the following to appear on you ircddb host website. +# frequency = 145.5 // this is the default value, chose a quiet frequency +# range = 0.0 // in meters (1609.344 is one mile) +# agl = 0.0 // in meters +# latitude = 0.000000 // north is positive +# longitude = 0.000000 // east is positive +# desc1 = "Location1" // up to 20 chars +# desc2 = "location2" // up to 20 chars + } +} + +link = { +# add the callsigns that can shutdown or reboot your system +# admin = [ "XX0XXX" , "YY0YYY" ] // only these users can execute scripts + +# link to the reflector of your choice. the first character is the module you are linking. +# link_at_start = "CREF001C" +} diff --git a/versions.h b/versions.h index 8fb5e86..0bee857 100644 --- a/versions.h +++ b/versions.h @@ -1,9 +1,9 @@ // version strings must be 55 characters or less! -#define IRCDDB_VERSION "QnetGateway-7.0.0" +#define IRCDDB_VERSION "QnetGateway-7.0.1" #define LINK_VERSION "QnetLink-6.0.0" #define DVAP_VERSION "QnetDVAP-5.1.1" #define RELAY_VERSION "QnetRelay-0.2.0" -#define ITAP_VERSION "QnetITAP-0.0.0" +#define ITAP_VERSION "QnetITAP-0.1.0" #define DVRPTR_VERSION "QnetDVRPTR-5.1.0" #define MMDVM_VERSION "QnetGateway-MMDVM-0.1.0" #define ICOM_VERSION IRCDDB_VERSION