Get on the Air

Four ways to use OpLine, from no hardware to a full RF node. Last updated by Justin Calvert, W0ABE.

To get on the air with OpLine you need an amateur radio license, the app, and one of four ways to reach the AllStarLink network. The quickest needs no hardware at all: an AllStarLink account and Web Transceiver mode. OpLine supports two ways to connect into someone else's node (Web Transceiver and IAXRpt) and two ways to run your own (Radioless and RF). Pick the path that matches your setup. Node-build documentation lives on allstarlink.org; this page is the OpLine-specific on-ramp.

License required. A valid FCC-issued amateur radio license and call sign are required to operate an AllStarLink node and to transmit through OpLine, regardless of which path you choose. Don't have a license yet? Start here.
Pick your path
  1. Web Transceiver Mode. Easy. AllStarLink Portal account, no node number required.
  2. IAXRpt / IAX Direct. Easy. Per-node credentials issued by the node operator.
  3. Radioless Node. Intermediate. Your own ASL3 node on a Raspberry Pi, no radio attached. Includes adding the IAX user on current and older ASL layouts.
  4. RF Node. Advanced. Full node with a radio interface for over-the-air operation.
  5. Connect from OpLine. IAX2 field reference for IAXRpt and your-own-node modes.
  6. Enable AMI. Optional. Recommended for live link awareness.
PathWhat you needWhat you get
Web Transceiver
Easy
AllStarLink Portal account with a verified call sign. No node number, no hardware. Token-authenticated access to any node that has Web Transceiver enabled. Quickest way on, but many nodes specifically block WT.
IAXRpt / IAX Direct
Easy
Host, port, username, and secret issued to you by the node operator. Authenticated access to that specific node. Works even when the operator has WT turned off (common for club nodes).
Radioless Node
Intermediate
Raspberry Pi, ASL3 install, one UDP port forward, your own AllStarLink node number. Your private hub on the network. Connect from OpLine and link to anything on AllStarLink.
RF Node
Advanced
Everything above plus a radio interface (USB sound fob / RIM / repeater controller) and a radio. Full over-the-air node. OpLine becomes a remote control / mic for your station.

1. Web Transceiver Mode Easy

The fastest way onto AllStarLink. You authenticate with your AllStarLink Portal account (the same username and password you use at allstarlink.org) and OpLine uses that to obtain a token for connecting to any node where the operator has enabled Web Transceiver. You do not need to apply for a node number for this mode.

Why use this mode

Disadvantages

Steps

  1. Create an account at allstarlink.org and get your call sign verified.
  2. In OpLine, enter your AllStarLink Portal username and password and switch into Web Transceiver mode. OpLine requests a token from the portal; once that succeeds, you're authenticated.
  3. Dial any node that has Web Transceiver enabled.
Check whether a node supports WT before you dial. Look up the node on the AllStarLink node list and check the WT-enabled flag. Listing as enabled isn't a hard guarantee you'll be let in (operators can layer additional restrictions on top), but it's the right starting filter.

If you frequently get blocked, the IAXRpt path below works against any node where you've been issued credentials, including ones with WT off. For the widest coverage, run your own node (the Radioless or RF path).

2. IAXRpt / IAX Direct Easy

In this mode you authenticate with a username and password (secret) issued to you by a node operator, not a global Portal account. The operator adds a user on their node (the same step as Add an IAX user below) and tells you what host, port, username, and secret to use. OpLine then connects directly over IAX2.

Why use this mode

Disadvantages

Steps

  1. Get the following from the node operator:
    • Hostname of their AllStarLink server
    • IAX port (typically 4569)
    • Your assigned username
    • Your assigned password (secret)
  2. In OpLine, add a new account/node and fill in those values. See Connect from OpLine below for the exact fields.
  3. Connect and key up.

3. Radioless Node Intermediate

A radioless node is a Raspberry Pi running ASL3 with no radio attached. It acts as your personal hub on the AllStarLink network. OpLine connects to it over IAX2, and from there you can link to any other node on the network. No radio means no over-the-air operation from the node itself, but full network access.

What you'll need

Steps

  1. Get a node number. Sign up at allstarlink.org, request a node number, set a node password.
  2. Install ASL3. Follow the official install at allstarlink.github.io. The short version: flash Raspberry Pi OS Lite (64-bit, Bookworm), add the ASL3 apt repo, install asl3, run sudo asl3-node-setup, and choose radioless when asked for the radio interface.
  3. Forward UDP 4569 on your router to your Pi's LAN IP. Set a DHCP reservation so the Pi keeps the same address.
  4. Add an IAX user for OpLine. Which file you edit depends on how recent your ASL3 install is. See Add an IAX user, just below.

Add an IAX user for OpLine

OpLine signs in to your node as an IAX2 user, the same way the old IAXRpt PC client did. Where that user lives depends on how recent your install is, so check which layout you have first:

grep -n '^\[iaxrpt\]' /etc/asterisk/iax.conf

Current ASL3: the template and iaxrpt-users.conf

Current ASL3 installs ship [iaxrpt](!) in /etc/asterisk/iax.conf as a template. It holds the shared settings (context, codecs, requirecalltoken = no) and ends with #tryinclude custom/iax/iaxrpt-users.conf, which pulls in the real users. Lines added to the template do not create a login. A secret placed there is ignored, which is why "I edited iax.conf, restarted Asterisk, and nothing changed" is the usual symptom.

Instead, add one stanza per user to /etc/asterisk/custom/iax/iaxrpt-users.conf. Create the file if it is missing:

sudo mkdir -p /etc/asterisk/custom/iax
sudo nano /etc/asterisk/custom/iax/iaxrpt-users.conf
[w0abe](iaxrpt)
secret = a-long-random-secret
callerid = "W0ABE" <0>

Then reload IAX2 (no Asterisk restart needed) and confirm the user is listed:

sudo asterisk -rx "iax2 reload"
sudo asterisk -rx "iax2 show users"

Your user should appear with context iaxrpt. If it does not, check that the #tryinclude custom/iax/iaxrpt-users.conf line is still inside the [iaxrpt](!) block in iax.conf, and that the stanza name has no stray spaces.

Older installs: a plain [iaxrpt] stanza

ASL 2, HamVoIP, and ASL3 nodes whose iax.conf predates the template ship [iaxrpt] as a normal stanza with the secret inside it. There is no template and no users file. Edit the stanza in /etc/asterisk/iax.conf so it looks like this (add it if it is missing):

[iaxrpt]
type = user
context = iaxrpt
auth = md5
secret = a-long-random-secret
host = dynamic
disallow = all
allow = ulaw
transfer = no

Here the stanza name, iaxrpt, is the User, and everyone who connects shares the one secret. For a user per person, copy the whole stanza under a new name such as [w0abe]. Reload and verify the same way:

sudo asterisk -rx "iax2 reload"
sudo asterisk -rx "iax2 show users"
Why a hostname instead of an IP? Once your node is registered with AllStarLink, the network publishes NODENUM.nodes.allstarlink.org automatically and keeps it pointed at your current public IP. You don't need DuckDNS or No-IP. That's the host you'll use in OpLine.

For the full ASL3 install (commands, dialplan, troubleshooting), follow the official AllStarLink documentation. The active AllStarLink forums are the right place for ASL3-specific issues.

4. RF Node Advanced

An RF node is the same as a radioless node, plus a radio interface. The Pi side is identical; the additional work is wiring (and tuning) a USB sound interface, a RIM, or a repeater controller to a radio, and configuring simpleusb.conf or usbradio.conf in Asterisk so PTT, COS, and audio levels are right.

From OpLine's perspective nothing changes. You still connect to the node over IAX2 with the same IAX user shown above. The difference is what happens on the node side: keying OpLine keys the radio.

What's extra (vs. radioless)

Full RF node build documentation lives at allstarlink.github.io. Once the node is on the air, return to Connect from OpLine below. The connection setup is identical to the radioless case.

5. Connect from OpLine

This field reference applies to IAXRpt, Radioless, and RF modes (anywhere OpLine connects directly over IAX2). Web Transceiver mode uses your AllStarLink Portal credentials instead and doesn't need these fields.

FieldValue
HostFor your own node: NODENUM.nodes.allstarlink.org. For IAXRpt: whatever hostname the node operator gives you.
Port4569 (unless the operator specifies otherwise)
Node #The node number you're connecting to.
UserThe IAX user's stanza name on the node: the bracketed name in iaxrpt-users.conf on current ASL3, or iaxrpt on the older layout (OpLine's default). For IAXRpt to someone else's node: the username the operator assigned you.
PasswordThe secret = line in that stanza.
ContextLeave it at iaxrpt. For the default, OpLine sends no context at all, so the node uses the context = line from its own [iaxrpt] stanza. Only type a context if the operator told you to, and then exactly as written: the node compares it byte for byte and reports a mismatch as a wrong password.

There is no codec field. OpLine always negotiates ulaw, which the stock [iaxrpt] stanza allows. If you trimmed the allow = lines on the node, keep allow = ulaw.

Save the node, mark it as a favorite, and tap Connect. Hold push-to-talk and you should hear your node ID. Try connecting to the AllStarLink Parrot (node 2002) for an echo test.

If Test says "Authentication failed"

6. Enable AMI optional, recommended

The Asterisk Manager Interface (AMI) is a TCP control channel built into every AllStar node. When OpLine talks to AMI, it sees every node currently linked to yours in real time, including links created by another client or an earlier session. Without AMI, OpLine only knows about links it created in the current session and limits you to one peer at a time as a safety measure.

Only relevant if you run your own node (radioless or RF). Skip this for Web Transceiver and IAXRpt modes; those connect to someone else's node, where AMI is the operator's call to configure.

Quick setup

In /etc/asterisk/manager.conf, make sure the [general] stanza has these lines (default bindaddr is localhost only; that's the one to change):

[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0

Add a user stanza at the bottom with a strong password:

[opline]
secret = a-strong-password-you-pick
read = command,reporting
write = command
deny = 0.0.0.0/0.0.0.0
permit = 0.0.0.0/0.0.0.0

Reload (sudo asterisk -rx "manager reload"), then forward TCP 5038 on your router to the Pi's LAN IP. In OpLine, open Settings → Asterisk Manager (AMI) and enter the username, password, and port.

Auth fails on LTE but works on Wi-Fi? A permit rule is blocking your phone's mobile IP. Either widen the permit range (paired with a strong secret) or whitelist the carrier ranges you control. telnet your.node.host 5038 from the failing network is the quickest credential test.

Next steps

You should be on the air. From here: