LoRa APRS Explained

APRS was designed around a 1200 baud AFSK modem on 2 metres, and for thirty years that is what it was. LoRa APRS keeps the protocol and the worldwide APRS-IS backbone but swaps the radio layer for chirp spread spectrum on 70 centimetres. The result is a station that runs on a 20 euro board, transmits a tenth of a watt, and is still heard tens of kilometres away.

This guide covers what actually matters when you build one: the link parameters that must match, the frequency that changes depending on where you live, which boards and firmware people are running today, and what happens to your packet once a LoRa iGate picks it up.

What the network looks like right now

Most articles about LoRa APRS describe the idea. Here is the live network instead, as seen from our own APRS-IS ingestion at the time of writing:

The callsign prefixes in that sample tell a clearer story than any adoption survey. Poland leads by a wide margin (SP, SQ, SR), followed by Spain (EA) and Germany (DL, DB), with the United States (KC) present but thinner. Individual stations turn up as far out as Sri Lanka (4S), Mexico (XE) and Monaco (3A).

That distribution matters if you are deciding whether to build one. LoRa APRS is not evenly deployed - it is a dense network in parts of central Europe and a scattering of pioneers elsewhere. Your experience depends almost entirely on whether somebody near you has already put up an iGate.

You can watch these stations live on the APRS map or open the 433.775 MHz channel page to see who is currently active on the main LoRa frequency.

How LoRa differs from 1200 baud AFSK

Classic APRS uses a Bell 202 modem: two audio tones through an FM transceiver, 1200 bits per second. It is simple, it works with any radio, and it falls apart the moment the signal drops near the noise floor. One noise burst corrupts the whole frame.

LoRa uses chirp spread spectrum. Each symbol is a chirp that sweeps across the channel bandwidth, and the receiver correlates against that sweep. The processing gain is large enough that LoRa decodes signals below the noise floor - which is why 100 mW gets results that would take several watts of AFSK.

The trade-off is speed. At the standard APRS settings, LoRa moves roughly 300 bits per second over the air. That is a quarter of 1200 baud AFSK. For APRS it barely matters, because an APRS position report is only a few dozen bytes, but it does mean LoRa APRS is unsuitable for anything bulk.

Classic APRS LoRa APRS
Band 2 m (VHF), regional 70 cm, mostly 433.775 MHz
Modulation 1200 baud AFSK over FM Chirp spread spectrum
Over-air rate 1200 bps ~300 bps at SF12
Typical power 5-50 W 0.1 W (20 dBm)
Hardware Any FM radio + TNC ESP32 + LoRa board, ~20-40 EUR
Infrastructure Dense digipeater network Sparse, growing iGate network

Neither replaces the other. They converge at APRS-IS, where both become the same text line.

LoRa is only interoperable when every station on the channel uses the same settings. Get one wrong and you are silent to everyone else, no matter how strong your signal.

The worldwide LoRa APRS configuration is:

Parameter Value
Bandwidth (BW) 125 kHz
Spreading factor (SF) 12
Coding rate (CR) 4:5
Output power 20 dBm (100 mW) typical

This combination is often called "slow standard, 300 bps". It is the maximum-range setting: SF12 is the slowest and most sensitive spreading factor Semtech's chips offer, and 125 kHz is the smallest bandwidth commonly available across all LoRa ICs.

Some networks deliberately run SF9 with CR4:7, which gives roughly 1250 bps over the air at the cost of sensitivity. That is a legitimate choice for a dense local network, but it makes you invisible to the SF12 mainstream. If you want to join the main worldwide network, use SF12.

A useful mental note: the 125 kHz figure sounds alarming for a narrowband amateur band, but chirp spread spectrum does not occupy the whole width at once. The carrier sweeps across it. One operator reported having to open the squelch on an FM handheld in the same room to hear anything at all.

The frequency, and why your country may differ

This is where most first builds fail.

433.775 MHz is the de-facto worldwide LoRa APRS channel. The IARU Region 1 VHF handbook lists 433.775 and 433.900 MHz at 125 kHz bandwidth, and the great majority of the network sits on the former.

The United Kingdom is the exception. UK LoRa APRS runs on 439.9125 MHz, with the same SF12 / BW125 / CR4:5 parameters. A tracker flashed with continental defaults will beacon happily in Britain and be heard by nobody.

Other channels exist. 434.855 MHz and 439.125 MHz appear in some regional deployments, and there is an ongoing effort (the APRS 438 proposal) to move the network off frequencies that overlap the 433-435 MHz ISM segment, precisely because unlicensed consumer devices there raise the noise floor.

In the Americas, 433.775 MHz is inside the 70 cm amateur allocation and is used by LoRa APRS groups in the United States. The 902-928 MHz ISM band is also available to amateurs in Region 2 and some operators run 33 cm LoRa there, but it is crowded with consumer traffic, and 70 cm is generally reported as the better performer thanks to lower noise and better propagation.

Before you flash anything, check what your local group actually uses. Our APRS frequencies by country reference lists the LoRa channels alongside the classic 2 m ones.

Hardware

LoRa APRS runs on commodity ESP32 development boards with an SX127x-family radio. The consistently recommended options:

Two warnings that cost people money:

  1. Buy the 433 MHz version. These boards ship in 433, 868 and 915 MHz variants that look identical. The 868/915 radios will not work on the LoRa APRS channel.
  2. The stock antenna is the weak link. The little stubby antenna included in the box works for bench testing. A real 70 cm vertical, a colinear, or even a home-made Moxon transforms what the station can do - especially for an iGate, which wants height above everything else.

Output is typically 20 dBm. Amplifiers exist, but the point of LoRa is that you usually do not need one.

Firmware

The ecosystem grew out of OE5BPA's original open-source projects, LoRa_APRS_Tracker and LoRa_APRS_iGate, which are what put LoRa APRS on the map for most of Europe.

As of a September 2025 status update on the original repository, OE5BPA now points people towards CA2RXU's actively maintained alternative (richonguzman/LoRa_APRS_Tracker and LoRa_APRS_iGate). If you are starting today, that is the fork most people are running.

Both families work standalone and both expose KISS, which matters more than it sounds: the iGate firmware offers KISS over TCP or USB serial, and the tracker firmware can offer KISS over Bluetooth. That means a LoRa board can act as the radio for an ordinary APRS client, the same way a classic TNC does - including the APRS World mobile app, which speaks Bluetooth and TCP KISS.

Putting up an iGate

An iGate is what connects the LoRa side to the rest of the world, and in most regions it is also the thing that is missing.

The recipe is unglamorous:

  1. A 433 MHz LoRa32 or Heltec board.
  2. Flash the iGate firmware and set your callsign, APRS-IS passcode, frequency and LoRa parameters.
  3. Put it as high as you reasonably can, on a proper 70 cm antenna.
  4. Give it WiFi.

From there it behaves like any other iGate: it receives frames over RF, converts them to APRS-IS text, appends its q-construct, and uploads them. If you want to understand exactly what happens to the packet after that point, we traced the whole path in How an APRS packet travels, and the general iGate rules are the same ones covered in the iGate setup guide.

Two-way operation - relaying messages from APRS-IS back down to RF - is normally limited to stations the iGate has recently heard, exactly as with classic iGates.

How to tell a LoRa station apart

Once a packet reaches APRS-IS there is nothing structurally different about it. The practical fingerprint is the TOCALL, the destination field that identifies the sending software or device.

LoRa APRS trackers use the APLO family - APLOX1 is by far the most common value on the network today. The broader ESP32 firmware ecosystem uses APE destinations, which include LoRa builds among others.

On aprs.world you can open any station and read its destination in the packet detail, or browse the LoRa APRS tracker device page to see which stations are currently reporting with that firmware family.

Honest limitations

LoRa APRS is genuinely good, and it is also oversold in places. What to expect:

Where to start

If somebody near you already runs an iGate, buy a T-Beam, flash the CA2RXU tracker, set 433.775 MHz with SF12 / BW125 / CR4:5 (or 439.9125 MHz in the UK), and you will be on the map within minutes.

If nobody near you runs one, build the iGate first. The network grows iGate by iGate, and in most of the world there is still a lot of empty map to fill.

Once you are transmitting, your station appears on the live APRS map alongside every classic AFSK station - because by then, it is just APRS.