A cross-platform desktop app for licensed amateur radio: APRS, LoRa mesh and HF (JS8Call) messaging, a multi-source live map, drawing & RF-planning tools, and live team collaboration — built to work with no internet at all.
Chat, map, and a station-list workbench — sharing the same connections and data, updating each other in real time. Keep all three open, or just the one you need.
Stations, mesh nodes, vessels, aircraft, drawings, coverage and every setting. Most of the app's surface area lives here.
WhatsApp-style conversations, contacts and connection status. Signed APRS messages with RF and APRS-IS merged per contact — plus LoRa mesh nodes and channels, and HF chat over JS8Call.
A spreadsheet of every heard station — sort, filter, bulk-edit, and push a filtered set straight to the map.
APRS stations, LoRa mesh nodes, JS8Call HF stations, AIS vessels and ADS-B aircraft on the same canvas, with raster and vector base layers and live WMS / WFS / GeoJSON overlays.

HMAC message signing proves who sent each message while the content stays in plain text, with automatic ACK tracking and live bubble states — you always know whether you got through. The same chat window talks to LoRa mesh nodes and channels over Meshtastic and MeshCore radios — and, through a local JS8Call, to HF stations hundreds of kilometres away.

A spreadsheet-style workbench of every callsign you've heard — sort it, filter it, and manage stations in bulk.

SOTA summits and POTA parks on the same map as everything else, with live spots, planned activations and the rig one click away — free, no account needed. Pick your associations and countries; OffARO fetches the references, keeps them offline and polls the spot and alert feeds for you.
Every summit with altitude and points, every park with its location, drawn from the zoom level you choose. Activation zones come with them: LiDAR-traced zones from sotl.as mirrored for offline use, an estimate from elevation data where none exist, and official park boundaries where a national register provides them. Click a marker for the card, activation history included — first and last activators, QSO counts, top activators.
Spots from SOTAwatch and pota.app pulse on the map and fill the On the air list: activator with country flag, reference, points, frequency, mode and age. Filter by programme, band or mode, search a callsign, click to centre the map — and with rig control set up, the frequency is a button that tunes your radio.
SOTA alerts and POTA scheduled activations appear in a Planned section, soonest first, with the posted frequencies and a green Now once the time has come. Limit the list to the next 24 h, 48 h or week, and let the toolbar badge count what is coming up — only for the associations and countries you follow.
Every feature degrades gracefully without a network. Pre-download raster or vector tiles, bundle SRTM terrain per region, receive AIS/ADS-B from local radios, talk over LoRa mesh or HF (JS8Call), and keep beaconing — no cloud account required, ever.
Pre-download any area at the zoom range you choose, raster or vector (style, icons and fonts included); the map keeps working completely off-grid.
Bundled elevation data drives coverage and link-profile analysis locally — no server round-trips.
Receive vessels and aircraft straight from a local NMEA or dump1090 / PiAware radio — no internet — and keep AIS static vessel data cached locally.
Plug in a Meshtastic or MeshCore radio over Bluetooth or USB and OffARO shows every node on the map and lets you chat with nodes and channels — no repeaters, no internet, no phone.
Host the OffARO Server on-site for live multi-client collaboration, plus the built-in web server to share a read-only map to any browser on the LAN — one laptop runs the whole show, fully offline.
Subscribed community configurations — tile sources, overlays, drawing layers and station lists — are cloned locally, so a team keeps collaborating from one shared setup when the link drops. Local storage, open GeoJSON formats, and license validation that works fully offline.
A full annotation toolkit plus terrain-aware radio coverage and link-profile analysis for siting repeaters and gateways.

Timestamped recording of every station's movement and your map annotations, replayable from start to finish at up to 60× — for races and sports events, club field days, training and exercises.

Run the optional OffARO Server — on a laptop at the club, at an event, or in the cloud — and share one live map across every connected OffARO. Ideal for a club station, a field event, or anywhere a team wants a shared real-time view.
Control remote hardware over APRS, and share your live map without anyone installing a thing.

The core amateur-radio functions are free forever. A licence unlocks the full toolkit — and starts with a 30-day free trial. Licences are bound to your callsign and validated fully offline.
Covers development & server costs. In-app purchase.
Native builds for every desktop. Chat & basic maps are free forever; a 30-day trial unlocks the full toolkit.
Downloads open the latest release on GitHub. Already running OffARO? It updates itself from inside the app.
OffARO's built-in Help system is available in English, Norwegian, French, Spanish, and German — pick your language right in the help window, or let it follow your OS language. The same documentation is also available as a complete, printable user manual:
Book-formatted with table of contents and page references — generated from the in-app help, so it always matches the latest release.
The optional OffARO Server powers live multi-client collaboration. Run it as a desktop app with a tray UI — the easiest way on a laptop at the club or an event — or as a Docker image for a headless, always-on host in the cloud.
Point OffARO at your server under Map → Settings → Servers. Full setup — the Docker run command, reverse-proxy TLS, tokens and all config flags — is in the in-app Help under “Running a server”.