Packet log

The Packets tab is the raw feed: every frame the app hears, over the radio or from APRS-IS, stored and shown live as it arrives. When something looks wrong anywhere else in the app, this is usually where the answer is.

Rate and health

The header shows the receive rate (live · N packets/min) and a health badge with four states: LIVE, STALE, RETRYING, or OFFLINE. STALE means a connection still claims to be up but has gone quiet and is being restarted; the badge never says LIVE on the strength of a socket that merely hasn't closed. The Radio screen shows the same honesty per connection.

Filtering the feed

Four quick filters sit above the list — All, RF only, Mine, and Errors — plus a free-text box (filter: callsign, text, type…) that matches against the raw line. The shared view filter (age window, RF/internet origin, station kind) applies here too, the same one the map and Stations use.

Packets that fail to decode are flagged and kept, never hidden — real APRS traffic contains malformed packets, and dropping them would misrepresent the channel. The Errors filter collects them.

The packet inspector

Tap any packet and it is taken apart field by field: Source, the device model identified from the destination call (with a note that TOCALL is a software identifier, not a recipient), Type, Position, Symbol, message IDs, and more. Whatever could not be decoded is listed separately under "Partially decoded", with everything above it decoded successfully.

The Path taken section draws the path as a graph. Digipeaters that actually repeated the packet are marked (* = that hop repeated it), and internet routing is marked as what it is: the globe-marked hops are APRS-IS routing — TCPIP and q-codes — and only the hops before them were ever radios. At the bottom is a Hex dump of the frame you can copy out for analysis elsewhere.

Reception gaps, marked in place

When the app itself wasn't receiving, the log says so instead of letting the silence read as a quiet band. A RECEPTION PAUSED row appears inline, with how long reception was down, when, and why — the app was in the background, a connection went stale and was restarted, or the app was not running at all. See Background & battery for keeping reception alive with the screen off.

Exporting packets

There are two exports, for two jobs:

  • EXPORT on the Packets tab writes exactly what is on screen, with your filters applied — the packets you were just looking at, and nothing else.
  • Settings → Packet log exports the entire log with SAVE CAPTURE TO A FOLDER: every packet as received, one per line with timestamps. This is the raw feed and it is large, which is why it is deliberately not part of Backup.

Import and replay

The same Settings → Packet log screen reads captures back in. CHOOSE A CAPTURE FILE, and then either:

  • IMPORT WITHOUT PLAYING — files the whole capture at once, keeping the times the packets were originally heard. For reading a file rather than watching it.
  • START REPLAY — plays the capture out at 1×, 10×, or 60×, gaps between packets preserved, each packet stamped as heard now and mixed in with live traffic. For watching what the app does as the packets arrive.

Either way the packets go through the same parser and store as live traffic, so the map and the station list update from them too. They are recorded as arriving from a capture file, not off the air — and neither route transmits anything or answers a message inside the file.

Clearing the log

CLEAR PACKET LOG on the same screen deletes every recorded packet — and with them the position history behind station trails on the map. It takes a second, deliberate tap (CONFIRM — DELETE N PACKETS, with the real count), there is no undo, and the screen suggests saving a capture first if you want to keep the raw feed. Messages, stations, and settings stay.

Last updated 31 August 2026