If you’re an amateur radio operator, and want to use the Raspberry Pi (models 2B, 3B, and 3B+) to power your PTTLink node, RasLink will let you do just that.
1. Notes For Node Owners
To use RasLink, you need to have a server configured at PTTLink.
If you are an existing RasLink user, your AllStarLink node numbers will work. You can request that your AllStarLink node numbers be made active on the PTTLink network by following the instructions on the PTTLink Wiki.
For the moment, there is no interconnectivity to the AllStarLink network. It’s being worked on.
If you choose to use the AllStarLink network, make sure that RasLink is up-to-date before configuring your node. In
/etc/asterisk/rpt.conf, remove the ; (semicolon) from the front of the
extnodes = /var/lib/asterisk/rpt_allstarlink line.
RasLink will self-expand to fit your micro SD card on the first boot.
You may need to run system-update before bringing your node online. Please read the information displayed when you log in. Information about how this works is found in the “Updating RasLink” section.
Here’s a video made by Skyler [W0SKY] showing how RasLink works.
Note: A lot of the commands shown in this video have changed. See /etc/asterisk/rpt.conf for more information.
RasLink is a moving target. For the latest enhancements, please see The RasLink ChangeLog.
4. What’s Included In RasLink?
- Asterisk (with notch filter and mdc1200 support)
To use RasLink, you will need a Raspberry Pi 2B, 3B, or 3B+, 8GB or larger class 6, 8, or 10 micro SD card, and a USB interface.
A really nice starter kit for the Rpi3B+ can be found on Amazon. The URI (USB Radio Interface) can be found at DMK Engineering. If you cannot, or do not want to build your own cables, they can be purchased from uricables.com.
6. Downloading RasLink
You can download RasLink as either a Compressed Disk Image
or a Torrent. (Usually faster than a web browser)
7. Extracting RasLink
You cannot flash RasLink in its compressed form.
You must extract it.
Windows users should use 7-Zip.
Mac users should use The Unarchiver.
After extracting the .xz file, you will have a file ending in .img. The .img file is the one you want to flash to your SD card.
8. Flashing RasLink
Note: Dd will not ask if it is ok to write to the device, so make sure that the device you choose is the one you want to write to.
9. Booting RasLink
After inserting your SD card into the pi, plug in the power. In thirty seconds or so, your pi will be booted. Ssh into the pi. The user name is root, and the password is raspberry. The ssh port is 22.
After logging into the pi, CHANGE YOUR PASSWORD!
To change your password, type:
You will be asked for your new password twice.
In the raspi-config menu, choose item 2→1 to set your Pi’s hostname.
Next, choose item 4 to set your locale and region settings.
After that, choose “Finish”.
You will be asked if you want to reboot. Choose “Yes”.
If you want to change the ssh port on your pi for better security, edit
You can do this by typing:
The file is very well commented, so you shouldn’t have any trouble.
To save the changes, type:
CTRL+x, y, enter key
To make the new port active, type:
systemctl restart ssh
You will need to log out then back in to make further changes.
10. Port Forwarding
You need to forward the following ports to your RasLink server, if not using it mobile.
- PTTLink: 4569 UDP
- EchoLink (if you use it): 5198-5199 UDP
- Your TCP ssh port (if you want to control your server from outside your network)
11. Connecting To PTTLink
To connect to the PTTLink network, edit the following files:
If you want to use EchoLink, edit /etc/asterisk/echolink.conf. If you don’t want to use EchoLink, you don’t need to do anything. EchoLink is disabled by default.
The files are very well commented, so you shouldn’t have any trouble.
Note: In iax.conf, 1999 is your PTTLink node number, and 123456 is your node password. Do not forget to remove the ; (semicolon) from the front of the registration line. (
You can find your node password under your profile in the
After setting up the files, reboot to activate the changes:
12. Updating RasLink
To update RasLink, type:
System-update will update RasLink to the latest software.
If a new release is found (e.g. from Jessie to stretch), you will be asked if you wish to upgrade to the new release.
For both a normal system update, as well as a release upgrade, all the nodes on your RasLink server will be disabled until the update completes.
System-update will reboot your server a few times. Twice for a normal update, and three times for a release upgrade.
After your server reboots, you need to log in to finish the update.
After you log in, the update will automatically complete.
You will not lose any of your configuration files.
You can check the version of the software you are running, as well as get notified about available updates at anytime by typing:
Version will be run once automatically after each log in.
13. Using Fail2Ban
Fail2Ban is used to block brute force attackers from gaining access to RasLink.
You have 6 (six) attempts to send the correct login information to RasLink over ssh.
If you don’t send the correct login information within 6 (six) attempts, you will be banned for 2 (two) hours.
After 2 (two) hours, if repeated failed login attempts continue from the same IP address, the IP address will be banned for up to 1 (one) week.
To regain access to RasLink if you get banned, you should Fill In The Contact Us form.
When filling in the form, you should request to have your IP address unbanned.
The default RasLink rules for Fail2Ban are loaded from
/etc/fail2ban/jail.d/00raslink.local. Do Not Edit This File.
If you would like to create custom jails (for example: apache2 for allmon), you should edit
To find out what jails are loaded, run:
You can learn more about Fail2Ban at The Fail2Ban Wiki.
14. Using uricheck
Uricheck is used to insure that your USB Radio Interface (URI) is working properly
Uricheck can be run by typing:
You need to build a loop back circuit to use Uricheck.
You cannot have your radio connected while running the tests.
the pin out can be found at the DMK Engineering Website.
15. Setting Up Wi-Fi
If you want to use wifi with your pi, do the following.
15.1. Raspberry Pi 2B
Plug in your USB wifi module.
Then, log in using ssh.
15.2. Raspberry Pi 3B and 3B+
Log in using ssh.
Wifi-setup will ask which Wi-Fi card you want to use. If you do not enter a card name such as wlan1, wlan0 will be assumed.
After choosing your Wi-Fi card, Wifi-setup will scan for networks.
When the first scan finishes, you will be asked if you want to scan again.
This is useful if the name of the network that you want to connect to isn’t listed in the results of the first scan.
After scanning completes, you will be asked to type the name of the network you want to connect to, as well as the password for that network.
Wifi-setup will setup the connection, and connect you to the network.
After a connection is established, your IP address information will be displayed.
Note: You cannot remove a network with Wifi-setup.
To remove a network, edit
The block of code for each network starts with:
and ends with:
} (right brace).
16. Using End
End can be used in two ways.
If you type only the node to control,
End assumes that you want to drop all connected nodes from that node.
The node to control must be on your RasLink server.
If you type the node to control plus another node number,
End will drop that node.
end 12345 67890
17. Using Nodenames
Nodenames are short messages that play whenever a node connects or disconnects. Instead of hearing “Node XXXX”, you will hear a custom message if one is available.
Nodenames accepts the following options:
- [on] enable nodenames
- [off] disable nodenames
- [status] show status of nodenames
- [help] show this help message
Nodenames are synced once an hour from the
If you would like your Nodename added to the repository, please fill in the Contact Form.
In the subject field, please include your node number.
Your Nodename should be in the following format:
- Length: 15 seconds or less
- Number of channels: 1
- Sample rate: 8000
- Bit rate: 16
- Header: RAW (header-less)
- Encoding: U-law
- Name: Your AllStar Node Number
- Extension: .ulaw
A good audio editor to create Nodenames with is Audacity. If you have trouble getting your Nodename in the correct format, please upload a high quality mp3 or wav file, and it will be converted for you. All Nodenames will be reviewed before being added to the repository. Once your Nodename has been added, you will receive an email from JL Applied Technologies.