RasLink: A Distribution For The AllStar Link System

Updated on October 12, 2017 16:35 U.S Mountain Time

If you’re an amateur radio operator, and want to use the Raspberry Pi2 or Raspberry Pi3 to power your AllStar Link node, RasLink will let you do just that.

1. Note To New Node Owners

New node owners may need to run system-update before bringing their node online. Please read the information displayed when you log in. Information about how this works is found in the “Updating The System” section.

2. Overview

Here’s a video made by Skyler (KD0WHB) showing how AllStar works.
Note: A lot of the commands shown in this video have changed. See rpt.conf for more information.

3. Enhancements

RasLink is a moving target. For the latest enhancements, please see The RasLink page on GitHub.

4. What’s Included In RasLink?

RasLink includes:

  • Dahdi
  • Libpri
  • Asterisk (with notch filter and mdc1200 support)
  • System-update
  • Wifi-setup
  • Raspi-config
  • Uricheck
  • End
  • Nodenames

5. Requirements

To use RasLink, you will need a Raspberry Pi2 or 3, 8GB or larger class 6, 8, or 10 micro SD card, and a USB interface.
A really nice starter kit for the Rpi3 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 Here.

165 Downloads

7. Burning RasLink

To burn RasLink to your SD card, you can either use WinFlashTool for Windows, or Dd for Linux and macOS.
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.
You cannot burn RasLink in its compressed form. You must extract it.
Windows users should use 7-Zip.
Linux users should use Tar, Archive Manager, or Gnome Files.
Mac users should use The Unarchiver.
After extracting the .tar.xz file, you will have a file ending in .img. The .img file is the one you want to burn to your SD card.

8. Booting RasLink

After inserting your SD card into the pi, plug in the power. In ten 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:
passwd
You will be asked for your new password twice.
Next, run raspi-config.
In the raspi-config menu, choose item 7>A1 to expand the file system. This makes sure that the whole SD card is used.
Then, choose item 2 to set your Pi’s hostname.
Next, choose item 4 to set your locale and Regen settings.
After that, choose finish.
Your pi will reboot. This reboot might take a little longer than normal.
If you want to change the ssh port on your pi for better security, edit /etc/ssh/sshd_config.
You can do this by typing:
nano /etc/ssh/sshd_config
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:
service ssh restart
You will need to log out then back in to make further changes.

9. Port Forwarding

You need to forward the following ports to your AllStar node, if not using it mobile.

  • AllStar: 4569 UDP
  • EchoLink (if you use it): 5198-5199 UDP
  • Your TCP ssh port (if you want to control your node from outside your network)

10. Connecting To AllStar

To connect to the AllStar system, edit the following files:

  • /etc/asterisk/rpt.conf
  • /etc/asterisk/iax.conf
  • /etc/asterisk/usbradio.conf
  • /etc/asterisk/extensions.conf

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 All Star 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 AllStar portal.
After setting up the files, reboot to activate the changes:
reboot

11. Updating The System

To update the system, type:
system-update
System-update will update the system to the latest software for your release, rebuild Dahdi, rebuild Libpri, and rebuild Asterisk. System-update will disable your node during this process.
Also, System-update will reboot your node half way through.
After your node 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
Version will be run once automatically after each log in.

12. Using uricheck

Uricheck is used to insure that your USB Radio Interface (URI) is working properly
Uricheck can be run by typing:
uricheck
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.

13. Setting Up Wi-Fi

If you want to use wifi with your pi, do the following.

13.1. On a Raspberry Pi2

Plug in your USB wifi module.
Then, log in using ssh.
Next, type:
wifi-setup

13.2. On a Raspberry Pi3

Log in using ssh.
Next, type:
wifi-setup

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 /etc/wpa_supplicant/ wpa_supplicant.conf.
The block of code for each network starts with:
network=
and ends with:
} (right brace).

14. 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 AllStar server.
example:
end 12345
If you type the node to control plus another node number,
End will drop that node.
example:
end 12345 67890

15. 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

Example usage:
nodenames status
Nodenames are synced once an hour from the Nodenames Repository.
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.
Example:
Node 12345
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.

16. Documentation

For more documentation on AllStar and all the many things you can do with it, go to The AllStar Documentation Page.
If you have any questions, ask in the AllStar group.
Enjoy AllStar on your Raspberry Pi!

RasLink: A Distribution For The AllStar Link System by JL Applied Technologies is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.