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