Difference between revisions of "PTTLink FAQ"

From "PTTLink Wiki"
Jump to navigation Jump to search
 
(41 intermediate revisions by 8 users not shown)
Line 1: Line 1:
  
:'''Q''': What is DIAL?
+
{{Infobox PTTLink
:'''A''': DIAL is the software used to make an AllStar node. It consist of Linux, Asterisk and app_rpt. DIAL uses the Debian version of Linux. Asterisk is the OpenSource PBX. App_rpt is an Asterisk application giving it the radio node functions. DIAL runs on x86 or on the Rasberry Pi 3.
+
| image = Frequently_Asked_Questions.jpeg
 +
| caption = Frequently Asked Questions
 +
| category = How to
 +
}}
 +
The AllStarLink/PTTLink Frequently Asked Questions (FAQ
  
:'''Q''': What does DIAL stand for?
+
== What is AllStarLink Asterisk (ASL)? ==
:'''A''':  Debian Installation for AllStar Link.
+
:ASL is the software used to create an PTTLink node. It consists of Linux, Asterisk and app_rpt. ASL uses the Debian version of Linux. Asterisk is the OpenSource PBX. App_rpt is an Asterisk application giving it the radio node functions. ASL runs on x86 or on the Raspberry Pi (ARM version).
  
:'''Q''': How do I install DIAL?
+
== What does ASL stand for? ==
:'''A''': If you have ever installed Linux you know how to install DIAL. The DVD/SD image is available on the [https://allstarlink.org AllStarlink] home page.
+
:AllStarLink
  
:'''Q''': How is a DIAL Node configured?  
+
== How do I install PTTLink? ==
:'''A''': We need to write detailed install and configuration instructions.  But briefly, a single node configuration is straight forward. The install will walk you through a first time setup of your node by asking you an number of questions. You'll need to have created an AllStar account, created a server and requested a node number. You'll also need your node's password.  
+
:PTTLink is available as a installer for i386/AMD (PC) and as a SD card image for Raspberry Pi and other ARM boards.If you have ever installed Linux you know how to install PTTLink. The images are available from the [[Main Page]] Related Links.  
  
:'''Q''': How do I login to DIAL once it is installed?
+
== Can PTTLink be installed on an existing Linux install, for example on a VM running Debian? ==
:'''A''': With earlier versions of DIAL you can login as user debian with a password of debian (normal user) or loging as root with a password of debian (super user). This has been deprecated. The current version has the root account blocked from direct login. You must login as user "repeater" and sudo root commands. Use the passwords you chose at install time.
+
:Yes it can. More information to follow. But if you have no other option you could do this:
  
:'''Q''': When using ACID I had (insert feature here) Now it's gone. When will DIAL support this feature?
+
<syntaxhighlight lang="bash">
:'''A''':  DIAL supports all the same channel drivers, features and apps that ACID supported. Under DIAL, modules are not loaded by default. They must be enabled in /etc/asterisk/modules.conf. This is the single biggest configuration change from ACID.
+
cd /tmp
 +
wget http://dvswitch.org/install-allstarlink-repository
  
:'''Q''': Will DIAL run as a hub / reflector?
+
chmod +x install-allstarlink-repository
:'''A''': YES, DIAL will run as a hub. To build a hub set rxchannel = dahdi/pseudo in rpt.conf and set noload => chan_simpleusb.so in modules.conf
+
./install-allstarlink-repository
  
:'''Q''': Do I need a monitor and keyboard to run DIAL?
+
If Raspbian: apt-get install raspberrypi-kernel-headers -y
:'''A''': No, DIAL can be managed via SSH on port 222. This can be changed in /etc/ssh/sshd.conf. X86 DIAL does require a monitor and keyboard to install. After that same as the ARM version.
 
  
:'''Q''': What is the IP address of the new node?
+
Otherwise: apt-get install linux-headers-`uname -r` -y
:'''A''': DIAL configures the machine via DHCP. Check your DHCP server for the address. The machine defaults to repeater.allstarlink.org. This can be changed with /usr/local/sbin/netsetup
 
  
:'''Q''': Does my remote access program (insert IAXRPT, Web Transceiver, Zoiper, AndroidIAX here) work with DIAL?
+
apt-get update
:'''A''': Yes, either using the sample configuration files or your custom files.
+
apt-get install allstarlink -y
 +
</syntaxhighlight>
  
:'''Q''': What about SIP support?
+
== Will PTTLink run on Windows? ==
:'''A''': By default, SIP is not enabled. If you want to enable it, see /etc/asterisk/modules.conf
+
: No, PTTLink is a Linux application.
  
:'''Q''': What audio file format does DIAL use?
+
== How do I login to PTTLink once it is installed? ==
:'''A''': By default, DIAL installs the ulaw formatted audio files installed in /var/lib/asterisk/sounds/.
+
:The initial user  login ID is '''repeater''' with a password of '''pttlink'''. When you login the first time you will be forced to change the password. The user repeater has sudo rights. You can then continue the customization process. To enable console root login you will need to set a password for user root.
  
:'''Q''': What version of app_rpt is DIAL built with?
+
== How is a PTTLink Node configured? ==
:'''A''': DIAL is built from the current version of asterisk taken from the SVN. As of now, The version of the code from the SVN is 1520 and app_rpt is version 0.325 10/19/2014
+
:Briefly, a single node configuration is straight forward. Once you are logged in run ptt-menu. The system will walk you through a first time setup of your node by asking you a number of questions. You'll need to have created an PTTLink account, created a server, requested a node number and have your node's password.  
  
:'''Q''': DIAL is built on Debian 8, why Debian, why not (insert distro here)?
+
== How many nodes can PTTLink support on a single server? ==
:'''A''': There are a lot of great Linux distributions available. Debian is a 20+ year old distribution with a large developer base. Many of the other distributions are based on Debian.
+
:It depends on the hardware. A high power Intel box may support 25 or more RTCM clients. A the other end of the spectrum, a Raspberry Pi 3 would be good for 2 USB nodes.
  
:'''Q''': I run a custom script (insert script here). Does it work with DIAL?
+
== When using ACID I had (insert feature here) Now it's gone. When will PTTLink support this feature? ==
:'''A''': Unless the script does something really strange or uses something specific to only one Linux distribution, The script should be made to work. I'll be happy to work with script writers to move their script to DIAL.
+
:PTTLink supports all the same channel drivers, features and apps that ACID supported. Under PTTLink, modules are not loaded by default. They must be enabled in /etc/asterisk/modules.conf.  
  
:'''Q''': I updated my kernel now what?
+
== Will PTTLink run as a hub / reflector? ==
:'''A''': You must have the kernel headers for the version of the kernel you installed. Install the headers, recompile and install DAHDI.
+
: Yes, PTTLink will run as a hub. To build a hub set rxchannel = dahdi/pseudo in rpt.conf and set noload => chan_simpleusb.so in modules.conf
  
:'''Q''': I need a Linux program that is not in DIAL, what do I do?
+
== Do I need a monitor and keyboard to run PTTLink? ==
:'''A''': apt-get is the Debian utility to install, remove and upgrade programs. apt-get install foo will install the program foo if it is available.
+
:No, PTTLink can be managed via SSH on port 22. The port can be changed in /etc/ssh/sshd.conf. PTTLink for the Raspberry Pi does require a monitor and keyboard to install.
  
:'''Q''': I would like to create my own custom version of DIAL. Can you help me?
+
== What is the IP address of my new node? ==
:'''A''': There are a number of new versions in the works. The scripts, patches and configuration files used to build DIAL are at https://github.com/N4IRS/AllStar
+
:PTTLink configures the machine via DHCP. Check your DHCP server for the address. The machine defaults to repeater.pttlink.org. This can be changed with ptt-menu.
  
:'''Q''': I have a question not covered in this FAQ, how do I get an answer?
+
== Does my remote access program (insert IAXRPT, Web Transceiver, Zoiper, AndroidIAX here) work with PTTLink? ==
:'''A''': There is a wealth of information on AllStar Asterisk at http://docs.allstarlink.org/drupal/ There is also a user mail list at http://ohnosec.org/cgi-bin/mailman/listinfo/app_rpt-users
+
:Yes, either using the sample configuration files or your custom files.
  
:'''Q''': How do I change my network (adapter) setup?
+
== What about SIP support? ==
:'''A''': /usr/local/sbin/netsetup
+
:By default, SIP is not enabled. If you want to enable it, see /etc/asterisk/modules.conf
  
:'''Q''': How do I change my DNS setup?
+
== What audio file format does PTTLink use? ==
:'''A''': /etc/resolv.conf
+
:By default, PTTLink installs the ulaw formatted audio files installed in /var/lib/asterisk/sounds/.
  
:'''Q''': How do I restart Asterisk?
+
== What version of app_rpt is PTTLink built with? ==
:'''A''': You will need to stop it and start it.
+
: PTTLink is built from the current version of asterisk taken from the github. As of now, The version of the code from the github is 1.01 2/13/2018
service asterisk stop
 
service asterisk start
 
  
If it does not stop:
+
== PTTLink is built on Debian 9, why Debian, why not (insert distro here)? ==
killall -9 asterisk
+
: There are a lot of great Linux distributions available. Debian is a 20+ year old distribution with a large developer base. Many of the other distributions are based on Debian.
  
To see if it's running:
+
== I run a custom script (insert script here). Does it work with ASL/PTTLink? ==
ps ax | grep asterisk
+
: Node operators have the freedom to use and install any custom scripts that run on Linux. Unless the script does something really strange or uses something specific to only one Linux distribution, the script can be modified to work. We will be happy to work with script writers to move their script to ASL.
  
:'''Q''': What are the specific differences between a single node, and a hub, to which can accept many connections?
+
== I updated my kernel now what? ==
:'''A''': Any node can be a "HUB". A node is not limited to one connection. There may be hardware limitations about the number of connections a given piece of hardware and internet connection can support. Typically, a HUB is located on a higher bandwidth Internet connection and is running a more "stout" piece of hardware. A HUB usually does not have a node radio connected to it, but there is no reason it can't. A HUB usually runs DAHDI/pseudo for it's rxchannel. This is changed in the rpt.conf file.
+
:PTTLink uses DKMS to manage the installation of kernel modules. DKMS will update when you install a new kernel.
  
:'''Q''': On some x86 and some raspberry pi2's, I have noticed dtmf falsing and would like to recompile app_rpt to set the radio relax feature off to reduce/eliminate the false dtmf tones that get decoded from voice transmissions.
+
== I need a Linux program that is not in PTTLink, what do I do? ==
:'''A''': Here's how to recompile with RADIO_RELAX off in DIAL.
+
:apt-get is the Debian utility to install, remove and upgrade programs. apt-get install foo will install the program foo if it is available.
Stop asterisk:
 
service asterisk stop
 
  
Verify asterisk is stopped:
+
== I have a question not covered in this FAQ, how do I get an answer? ==
ps ax | grep asterisk If you see /usr/sbin/asterisk it is not stopped
+
: There is a wealth of information on PTTLink Asterisk at on this [[Main Page|wiki]] There is also a user mail list at [http://lists.keekles.org/cgi-bin/mailman/listinfo/app_rpt-users http://lists.keekles.org/]
killall -9 asterisk
 
ps ax | grep asterisk If you see /usr/sbin/asterisk it is not stopped
 
  
Change compiler setting:
+
== How do I change my network (adapter) setup? ==
cd /usr/src/astsrc-1.4.23-pre/asterisk
+
:Use ptt-menu
make menuselect
 
select 10. Compiler Flags
 
select 6. RADIO_RELAX set to off
 
x
 
make
 
make install
 
  
service asterisk start
+
== How do I change my DNS setup?==
 +
:Use ptt-menu
 +
:
 +
==  How do I restart Asterisk? ==
 +
:Asterisk can be restarted by running the script <code>astres.sh</code> or stoped with <code>astdn.sh</code> and started with <code>astup.sh</code>.
  
:'''Q''': I exited the firsttime script for setting up a DIAL system, and would now like to run it. How is this accomplished?
+
== What are the specific differences between a single node, and a hub, to which can accept many connections? ==
:'''A''': Do the following:
+
:Any node can be a "HUB". A node is not limited to one connection. There may be hardware limitations about the number of connections a given piece of hardware and internet connection can support. Typically, a HUB is located on a higher bandwidth Internet connection and is running a more "stout" piece of hardware. A HUB usually does not have a node radio connected to it, but there is no reason it can't. A HUB usually runs DAHDI/pseudo for it's rxchannel. This is changed in the rpt.conf file.
touch /etc/asterisk/firsttime
+
 
/usr/local/sbin/firsttime
+
== On some x86 and some raspberry pi2's, I have noticed dtmf falsing and would like to recompile app_rpt to set the radio relax feature off to reduce/eliminate the false dtmf tones that get decoded from voice transmissions. ==
 +
: PTTLink has radio relax turned off..
 +
 
 +
== I exited the first-time script for setting up a PTTLink system, and would now like to run it. How is this accomplished? ==
 +
: Do the following: sudo touch /etc/asterisk/firsttime && sudo /usr/local/sbin/first-time
 +
 
 +
== Q. How do I obtain the software? ==
 +
:The easy way is to download the iso image from [https://github.com/pttlink/Asterisk/releases PTTLink Github Repository], make an install CD, follow the instructions, and run the auto install disk.
 +
 
 +
For those who are technically savvy, and want to control the installation process to a fine level of granularity, app_rpt is an application which comes bundled with Asterisk, however, a later version may be available on our source repository. All you need to do is go to asterisk.org, download asterisk, configure the asterisk to build app_rpt by modifying the Makefile in the asterisk/apps directory, and then compile and install it. You can get the latest version of app_rpt.c along with the sound files, and sample configuration files from our repository mentioned in the developers section of this website.
 +
 
 +
== What are the hardware interface board options? ==
 +
:There are three different ways to interface your radio with app_rpt/Asterisk. The first (and most preferred) way is to use our Quad Radio PCI card. The audio quality the best when the Quad Radio PCI card is used. The second way is to purchase the ready-made DMK Engieering URI, and the third way is to modify a generic USB fob using the instructions on this website. See the next question.
 +
 
 +
==Can I build my own hardware interface board? ==
 +
:You can modify a CM-108 USB sound fob to bring out PTT and use that as your hardware interface. The modification procedure is located here
 +
 
 +
==How fast does the computer need to be? ==
 +
:This is going to depend on the number of simultaneous connections you wish to support. For USB interfaces, more processor horsepower is necessary. If you are going to use a USB interface, then the CPU speed should ne no less than 1.2GHz. For the quad radio PCI card, the system will work just fine with 800MHz CPU's.
 +
 
 +
== What type of Internet connection is required? ==
 +
:A broadband connection is required. The connection should support at least 512 kilobits down and 128 kilobits up.
 +
 
 +
== How much bandwidth is required per connection? ==
 +
:Because we use the ADPCM (g726aal2) codec in Asterisk, each connection from/to a remote node will require about 55 kilobits/sec (at the IP packet level) of bandwidth in both directions. Optionally, the GSM codec can be used and the bandwidth requirement will be 35 kilobits/sec, but the audio quality will suffer.
 +
 
 +
== How is the audio quality? ==
 +
:The frequency response when ADPCM is used will be very close to telephone voice grade (telephone voice grade is defined as 3db points at 300-3400Hz, 1000Hz 0db reference). Additionally, we optionally support the G.711 codec which is superior ro ADPCM at the expense of bandwidth.
 +
 
 +
==Is there any audio delay incurred in the system? ==
 +
: Yes. Due to the fact that the system is TDM (Time Domain Multiplexed) and there is overhead involved to perform DSP functions in Asterisk, there is audio delay for both local connections and there is additional audio delay from connections made over the Internet.
 +
 
 +
== What ports need to be opened on my router? ==
 +
: If you wish to have incoming connections to your node, you must forward:
 +
 
 +
: <code>Port 4569 UDP</code>
 +
 
 +
: You may optionally forward port 22 for external SSH access, '''but do this at your own risk. Ensure you have a strong password set on your account.'''
 +
 
 +
== Does app_rpt work through NAT routers? ==
 +
Yes. Port 4569 should be forwarded to the Asterisk machine behind the router to accept incoming connections. In addition, it will work when both ends are behind a NAT router.
 +
 
 +
== Is a static IP address required? ==
 +
No. In fact, direct dynamic-IP to dynamic-IP connections are possible using standard authentication (see next question).
 +
 
 +
== How are incoming PTTLink connections authenticated? ==
 +
: Authentication is done by verifying source and destination node number and IP address and the intrinsic security features of the IAX2 protocol. A table of valid PTTLink nodes is periodically downloaded from one of several PTTLink Link servers. No call will be connected unless the IAX2 call is completed without failure, and the calling node number, called node number, and source IP address all match what is in the table.
 +
 
 +
== How does a node know how to connect to another node on PTTLink? ==
 +
: PTTLink has an IP address distribution mechanism to periodically update all valid PTTLink nodes. This information is automatically retrieved from a set of redundant PTTLink node servers by a script which runs in the background on the PTTLink node. Additionally, each node periodically informs an PTTLink registration server of its current IP address using the IAX register statement in iax.conf. In this way, all nodes in the PTTLink system are kept up to date with everyone's latest IP address.
 +
 
 +
== Will app_rpt interconnect with Echolink? ==
 +
:Yes. There are two channel drivers chan_echolink for Echolink connections. Echolink incoming and outgoing connections are supported through this channel driver. Incoming connections are made from any Echolink node in the usual manner. An app_rpt user dials an additional prefix digit in the connect command to distinguish between PTLink ([2,4-5]), Echolink (3) node numbers.
 +
 
 +
== Do I have to join the PTTLink Network? ==
 +
:No. You may implement your own private network, or allow connections to many networks including or not including PTTLink.
 +
 
 +
== Can I use app_rpt/Asterisk on an existing Asterisk PBX setup? ==
 +
: Yes. You just have to have compatible Asterisk hardware installed for both the phones and the radio.
 +
 
 +
== Can I use a SIP ATA in place of a Zaptel Interface? ==
 +
: This is a popular question. The short answer: No. Even though Asterisk supports SIP, the SIP protocol currently does not support signalling to detect COR state changes and to key and unkey the transmitter. This is really unfortunate as there are lots of SIP analog telephone adapters available inexpensively.
 +
 
 +
== Why would I use app_rpt instead of IRLP or Echolink? ==
 +
: To have control of your radio network, and understand how it works and be able to change it.
 +
 
 +
To be able to:
 +
*Change something if you don't like the way it works.
 +
*Use full duplex audio connections everywhere.
 +
*To be able to connect to a remote base anywhere in the world.
 +
*To make phone calls over VOIP from any node.
 +
*Remotely command any node from any other node.
 +
 
 +
== Can I connect to an app_rpt node with my computer? ==
 +
: Yes. See our Iaxrpt project
 +
 
 +
== Do I have to be an Linux wiz, Asterisk wiz, Radio wiz, and TCP/IP wiz to use app_rpt effectively? ==
 +
: Yes, it certainly helps, but with the auto-install CD available from [[Main Page#Downloads|wiki.allstarlink.org]], all you do to get a single node system up and running is follow our instructions, burn the ISO image, plug in your interface hardware, and boot from the ISO image to install everything.
 +
 
 +
== Why did we fork Asterisk? ==
 +
:Asterisk is undergoing a significant amount of change at Digium. Because of this, and the long time it takes to get patches approved, we decided to drive a stake in the ground and archive the Asterisk and Zaptel/Dahdi sources on our repository with the required changes to support the latest version of app_rpt. If the need arises, we may fetch a later version of Asterisk and Dahdi from Digium and make the necessary changes to it to support app_rpt (a forward port). Back pointing changes to support app_rpt into the Digium source tree at this point does not seem likely at least at this point in time.

Latest revision as of 06:02, 28 January 2022

PTTLink FAQ
Frequently Asked Questions.jpeg
Frequently Asked Questions

The AllStarLink/PTTLink Frequently Asked Questions (FAQ

What is AllStarLink Asterisk (ASL)?

ASL is the software used to create an PTTLink node. It consists of Linux, Asterisk and app_rpt. ASL uses the Debian version of Linux. Asterisk is the OpenSource PBX. App_rpt is an Asterisk application giving it the radio node functions. ASL runs on x86 or on the Raspberry Pi (ARM version).

What does ASL stand for?

AllStarLink

How do I install PTTLink?

PTTLink is available as a installer for i386/AMD (PC) and as a SD card image for Raspberry Pi and other ARM boards.If you have ever installed Linux you know how to install PTTLink. The images are available from the Main Page Related Links.

Can PTTLink be installed on an existing Linux install, for example on a VM running Debian?

Yes it can. More information to follow. But if you have no other option you could do this:
cd /tmp
wget http://dvswitch.org/install-allstarlink-repository

chmod +x install-allstarlink-repository
./install-allstarlink-repository

If Raspbian: apt-get install raspberrypi-kernel-headers -y

Otherwise: apt-get install linux-headers-`uname -r` -y

apt-get update
apt-get install allstarlink -y

Will PTTLink run on Windows?

No, PTTLink is a Linux application.

How do I login to PTTLink once it is installed?

The initial user login ID is repeater with a password of pttlink. When you login the first time you will be forced to change the password. The user repeater has sudo rights. You can then continue the customization process. To enable console root login you will need to set a password for user root.

How is a PTTLink Node configured?

Briefly, a single node configuration is straight forward. Once you are logged in run ptt-menu. The system will walk you through a first time setup of your node by asking you a number of questions. You'll need to have created an PTTLink account, created a server, requested a node number and have your node's password.

How many nodes can PTTLink support on a single server?

It depends on the hardware. A high power Intel box may support 25 or more RTCM clients. A the other end of the spectrum, a Raspberry Pi 3 would be good for 2 USB nodes.

When using ACID I had (insert feature here) Now it's gone. When will PTTLink support this feature?

PTTLink supports all the same channel drivers, features and apps that ACID supported. Under PTTLink, modules are not loaded by default. They must be enabled in /etc/asterisk/modules.conf.

Will PTTLink run as a hub / reflector?

Yes, PTTLink will run as a hub. To build a hub set rxchannel = dahdi/pseudo in rpt.conf and set noload => chan_simpleusb.so in modules.conf

Do I need a monitor and keyboard to run PTTLink?

No, PTTLink can be managed via SSH on port 22. The port can be changed in /etc/ssh/sshd.conf. PTTLink for the Raspberry Pi does require a monitor and keyboard to install.

What is the IP address of my new node?

PTTLink configures the machine via DHCP. Check your DHCP server for the address. The machine defaults to repeater.pttlink.org. This can be changed with ptt-menu.

Does my remote access program (insert IAXRPT, Web Transceiver, Zoiper, AndroidIAX here) work with PTTLink?

Yes, either using the sample configuration files or your custom files.

What about SIP support?

By default, SIP is not enabled. If you want to enable it, see /etc/asterisk/modules.conf

What audio file format does PTTLink use?

By default, PTTLink installs the ulaw formatted audio files installed in /var/lib/asterisk/sounds/.

What version of app_rpt is PTTLink built with?

PTTLink is built from the current version of asterisk taken from the github. As of now, The version of the code from the github is 1.01 2/13/2018

PTTLink is built on Debian 9, why Debian, why not (insert distro here)?

There are a lot of great Linux distributions available. Debian is a 20+ year old distribution with a large developer base. Many of the other distributions are based on Debian.

I run a custom script (insert script here). Does it work with ASL/PTTLink?

Node operators have the freedom to use and install any custom scripts that run on Linux. Unless the script does something really strange or uses something specific to only one Linux distribution, the script can be modified to work. We will be happy to work with script writers to move their script to ASL.

I updated my kernel now what?

PTTLink uses DKMS to manage the installation of kernel modules. DKMS will update when you install a new kernel.

I need a Linux program that is not in PTTLink, what do I do?

apt-get is the Debian utility to install, remove and upgrade programs. apt-get install foo will install the program foo if it is available.

I have a question not covered in this FAQ, how do I get an answer?

There is a wealth of information on PTTLink Asterisk at on this wiki There is also a user mail list at http://lists.keekles.org/

How do I change my network (adapter) setup?

Use ptt-menu

How do I change my DNS setup?

Use ptt-menu

How do I restart Asterisk?

Asterisk can be restarted by running the script astres.sh or stoped with astdn.sh and started with astup.sh.

What are the specific differences between a single node, and a hub, to which can accept many connections?

Any node can be a "HUB". A node is not limited to one connection. There may be hardware limitations about the number of connections a given piece of hardware and internet connection can support. Typically, a HUB is located on a higher bandwidth Internet connection and is running a more "stout" piece of hardware. A HUB usually does not have a node radio connected to it, but there is no reason it can't. A HUB usually runs DAHDI/pseudo for it's rxchannel. This is changed in the rpt.conf file.

On some x86 and some raspberry pi2's, I have noticed dtmf falsing and would like to recompile app_rpt to set the radio relax feature off to reduce/eliminate the false dtmf tones that get decoded from voice transmissions.

PTTLink has radio relax turned off..

I exited the first-time script for setting up a PTTLink system, and would now like to run it. How is this accomplished?

Do the following: sudo touch /etc/asterisk/firsttime && sudo /usr/local/sbin/first-time

Q. How do I obtain the software?

The easy way is to download the iso image from PTTLink Github Repository, make an install CD, follow the instructions, and run the auto install disk.

For those who are technically savvy, and want to control the installation process to a fine level of granularity, app_rpt is an application which comes bundled with Asterisk, however, a later version may be available on our source repository. All you need to do is go to asterisk.org, download asterisk, configure the asterisk to build app_rpt by modifying the Makefile in the asterisk/apps directory, and then compile and install it. You can get the latest version of app_rpt.c along with the sound files, and sample configuration files from our repository mentioned in the developers section of this website.

What are the hardware interface board options?

There are three different ways to interface your radio with app_rpt/Asterisk. The first (and most preferred) way is to use our Quad Radio PCI card. The audio quality the best when the Quad Radio PCI card is used. The second way is to purchase the ready-made DMK Engieering URI, and the third way is to modify a generic USB fob using the instructions on this website. See the next question.

Can I build my own hardware interface board?

You can modify a CM-108 USB sound fob to bring out PTT and use that as your hardware interface. The modification procedure is located here

How fast does the computer need to be?

This is going to depend on the number of simultaneous connections you wish to support. For USB interfaces, more processor horsepower is necessary. If you are going to use a USB interface, then the CPU speed should ne no less than 1.2GHz. For the quad radio PCI card, the system will work just fine with 800MHz CPU's.

What type of Internet connection is required?

A broadband connection is required. The connection should support at least 512 kilobits down and 128 kilobits up.

How much bandwidth is required per connection?

Because we use the ADPCM (g726aal2) codec in Asterisk, each connection from/to a remote node will require about 55 kilobits/sec (at the IP packet level) of bandwidth in both directions. Optionally, the GSM codec can be used and the bandwidth requirement will be 35 kilobits/sec, but the audio quality will suffer.

How is the audio quality?

The frequency response when ADPCM is used will be very close to telephone voice grade (telephone voice grade is defined as 3db points at 300-3400Hz, 1000Hz 0db reference). Additionally, we optionally support the G.711 codec which is superior ro ADPCM at the expense of bandwidth.

Is there any audio delay incurred in the system?

Yes. Due to the fact that the system is TDM (Time Domain Multiplexed) and there is overhead involved to perform DSP functions in Asterisk, there is audio delay for both local connections and there is additional audio delay from connections made over the Internet.

What ports need to be opened on my router?

If you wish to have incoming connections to your node, you must forward:
Port 4569 UDP
You may optionally forward port 22 for external SSH access, but do this at your own risk. Ensure you have a strong password set on your account.

Does app_rpt work through NAT routers?

Yes. Port 4569 should be forwarded to the Asterisk machine behind the router to accept incoming connections. In addition, it will work when both ends are behind a NAT router.

Is a static IP address required?

No. In fact, direct dynamic-IP to dynamic-IP connections are possible using standard authentication (see next question).

How are incoming PTTLink connections authenticated?

Authentication is done by verifying source and destination node number and IP address and the intrinsic security features of the IAX2 protocol. A table of valid PTTLink nodes is periodically downloaded from one of several PTTLink Link servers. No call will be connected unless the IAX2 call is completed without failure, and the calling node number, called node number, and source IP address all match what is in the table.

How does a node know how to connect to another node on PTTLink?

PTTLink has an IP address distribution mechanism to periodically update all valid PTTLink nodes. This information is automatically retrieved from a set of redundant PTTLink node servers by a script which runs in the background on the PTTLink node. Additionally, each node periodically informs an PTTLink registration server of its current IP address using the IAX register statement in iax.conf. In this way, all nodes in the PTTLink system are kept up to date with everyone's latest IP address.

Will app_rpt interconnect with Echolink?

Yes. There are two channel drivers chan_echolink for Echolink connections. Echolink incoming and outgoing connections are supported through this channel driver. Incoming connections are made from any Echolink node in the usual manner. An app_rpt user dials an additional prefix digit in the connect command to distinguish between PTLink ([2,4-5]), Echolink (3) node numbers.

Do I have to join the PTTLink Network?

No. You may implement your own private network, or allow connections to many networks including or not including PTTLink.

Can I use app_rpt/Asterisk on an existing Asterisk PBX setup?

Yes. You just have to have compatible Asterisk hardware installed for both the phones and the radio.

Can I use a SIP ATA in place of a Zaptel Interface?

This is a popular question. The short answer: No. Even though Asterisk supports SIP, the SIP protocol currently does not support signalling to detect COR state changes and to key and unkey the transmitter. This is really unfortunate as there are lots of SIP analog telephone adapters available inexpensively.

Why would I use app_rpt instead of IRLP or Echolink?

To have control of your radio network, and understand how it works and be able to change it.

To be able to:

  • Change something if you don't like the way it works.
  • Use full duplex audio connections everywhere.
  • To be able to connect to a remote base anywhere in the world.
  • To make phone calls over VOIP from any node.
  • Remotely command any node from any other node.

Can I connect to an app_rpt node with my computer?

Yes. See our Iaxrpt project

Do I have to be an Linux wiz, Asterisk wiz, Radio wiz, and TCP/IP wiz to use app_rpt effectively?

Yes, it certainly helps, but with the auto-install CD available from wiki.allstarlink.org, all you do to get a single node system up and running is follow our instructions, burn the ISO image, plug in your interface hardware, and boot from the ISO image to install everything.

Why did we fork Asterisk?

Asterisk is undergoing a significant amount of change at Digium. Because of this, and the long time it takes to get patches approved, we decided to drive a stake in the ground and archive the Asterisk and Zaptel/Dahdi sources on our repository with the required changes to support the latest version of app_rpt. If the need arises, we may fetch a later version of Asterisk and Dahdi from Digium and make the necessary changes to it to support app_rpt (a forward port). Back pointing changes to support app_rpt into the Digium source tree at this point does not seem likely at least at this point in time.