Replaying last hour of activity from server...
Map will appear automatically when complete
Connect to this server
APRS-IS Clients
APRSDroid · YAAC · Direwolf · APRSIS32
WebSocket API
UDP (Hardware Trackers)
No login · raw APRS packets
REST API
Generate keys in Admin → API Keys
Webhooks
Node-RED · Home Assistant · n8n · IFTTT
| Icon | Callsign | Path | Last Heard | Coordinates | Raw Packet |
|---|
Operating as:
Uptime
0s
RX / TX Packets
0 / 0
RX / TX Bytes
0 B
Dropped
0
TCP Clients
0
Upstream
| Callsign | Type | Software | Address | Status |
|---|
Data Export & Monitoring
GeoJSON/KML: all stations + objects in memory. Prometheus /metrics: requires admin credentials (HTTP Basic Auth). For Grafana: add credentials in the datasource config.
Add callsigns to watch. You'll get a browser notification and the station will be highlighted on the map whenever it's heard.
No stations being watched. Add a callsign above.
No alerts yet
ℹ️ How it works
Callsigns are matched with or without SSID — watching M0ABC
will alert for M0ABC, M0ABC-9,
M0ABC-10 etc. Wildcards supported:
G* matches all G-prefix callsigns.
No weather stations heard yet. Waiting for CWOP/WX packets...
Calculate the APRS-IS passcode for any amateur callsign.
Based on the standard APRS-IS passcode algorithm (XOR hash of callsign, SSID stripped).
Convert between lat/lon and Maidenhead grid square.
Build a valid APRS position packet string.
Generated packet:
Fill in fields above...
Click a symbol to see its code. Use in beacon generator or TNC config.
| # | Callsign | Packets | Last Heard |
|---|
| # | Callsign | Distance | Bearing |
|---|
| # | Callsign | Time | Type |
|---|
| # | Callsign | Speed | Course |
|---|
Analysing traffic for NTS nets, tactical groups and message clusters...
No messages heard yet
ISS Position
Loading...
Next Pass Over Your Location
ARISS Callsign
RS0ISS / NA1SS
Freq: 145.825 MHz FM
Digipeater
RS0ISS-4
Path: RS0ISS or ARISS
| Time | From | To / Via | Comment | Coords |
|---|
Stations received by this gateway that were digipeated via RS0ISS or ARISS:
| Callsign | Last Heard | Position |
|---|
No ISS-digipeated packets received yet
How to use ARISS APRS
Tune to 145.825 MHz FM · Set your path to ARISS or RS0ISS ·
Check pass times at heavens-above.com ↗ ·
Live ISS track at aprs.fi ↗
APRS Net is a real-time APRS-IS gateway that shows live amateur radio packet activity on an interactive map. You can use it as a guest (read-only) or create a free account to unlock messaging, watchlists, and offline message storage.
Three ways to use this site:
www.aprsnet.uk:14580 using your callsign and APRS-IS passcodeMembers get persistent watchlists across devices, server-side storage for APRS messages received while offline, and quick access to their callsign passcodes.
Add callsigns to watch. Wildcards supported (G*, M0ABC*). When a watched station appears on map you get a desktop notification. Watchlist syncs to the server — works on any device you log in from.
Any APRS message sent to your callsign while you're offline is stored here (up to 500 messages). Unread messages show with a blue left border. Mark all read once you've reviewed them.
Add additional callsigns you own (e.g. M0ABC-9, M0ABC-10). Each one's APRS-IS passcode is shown. Messages to any of your callsigns are stored for offline delivery.
Change your display name, email, or password (requires current password). Your callsign cannot be changed after registration.
Send APRS messages directly through the web interface. Messages are sent through the APRS-IS network with your callsign and passcode.
⚠ Don't know your passcode? Use the 🔧 Utils panel → Passcode Calculator, or check your member dashboard.
Follow a moving station in real-time with full position history displayed as a cyan trail on the map.
Static stations can also be tracked — useful for watching when a vehicle starts moving.
Live weather dashboard pulling from CWOP stations. Gauges for temperature, wind, pressure, humidity, rainfall. Click a station for historical graphs over the last hour.
List of stations you're watching. Add via the input or from any station detail modal. Notifications appear when watched stations transmit.
Live ISS position (TLE proxied through aprsnet.uk). Pass prediction using SGP4 orbital mechanics shows when ISS will be overhead at your location. ARISS announcements pulled from aprs.fi.
Passcode calculator, Maidenhead locator converter, beacon generator (build a position packet), APRS symbol picker.
Live rankings: most active stations, fastest moving (vehicles only — WX excluded), longest path traversed, most-recently-heard. Active nets & groups detected from message traffic.
Switch between dark and light mode (top right). Map tiles always stay daylight regardless of theme. Preference saved across sessions.
In Station Detail, click Show Path to draw lines on the map showing the digipeater hops a packet took to reach the gateway.
Server announcements appear at the top of the page. Dismissable banners stay dismissed across reloads. Also shows unread APRS message count for logged-in members.
Connect any APRS-IS compatible client to this server:
Direct browser/code access:
JSON auth: {"type":"auth"}. Last hour of packets replayed on connect.
Base URL: https://www.aprsnet.uk/api
| Endpoint | Auth | Description |
|---|---|---|
| GET /api/status | None | Server stats, upstream connection, packet counts |
| GET /api/history | API Key | Last hour of positions (JSON array) |
| GET /api/objects | None | Currently active APRS objects/items |
| GET /api/messages | None | Last hour of APRS messages |
| GET /api/ariss | None | ARISS info proxied from aprs.fi |
| GET /api/tle | None | ISS TLE elements (cached 6h) |
| GET /api/version | None | Server version & build info |
| GET /api/motd | None | Public message of the day |
| GET /api/export/geojson | None | All stations + objects as GeoJSON |
| GET /api/export/kml | None | All stations + objects as KML (Google Earth) |
| POST /api/member/register | None | Create member account |
| POST /api/member/login | None | Returns session token |
| GET /api/member/profile | Token | Member profile, watchlist, callsigns |
| GET /api/member/messages | Token | Stored offline APRS messages |
| GET /metrics | Admin | Prometheus metrics endpoint |
| GET /demo | None | Read-only demo mode (sets cookie) |
API Keys: generate via Admin → API Keys. Send as X-API-Key: ... header. Member Tokens: after login, send as X-Member-Token: ... header.
Get notified when watched events happen. Configure in Admin → Webhooks.
Event types:
message — every APRS message received (filter by callsign)watched — a callsign on the server-wide watchlist transmitsobject — a new APRS object appearsupstream — upstream APRS-IS connection state changesPayload (POST JSON):
{
"event": "message",
"from": "G1ABC", "to": "M0XYZ",
"text": "Hello", "ts": 1715000000,
"callsign": "G1ABC"
}
⚠ This section requires admin login. Click Admin in the header.
View all members, search by callsign or name. Per-member actions:
Block specific callsigns from being broadcast. Wildcards supported (e.g. SPAM*). Banned packets are silently dropped from WebSocket and TCP client streams.
Banner shown at top of every page. Four levels: info / success / warning / error. Optionally user-dismissable.
Download a single JSON file containing all members, bans, MOTD, webhooks, API keys and config. Restore by uploading. Recommended weekly backup.
Every admin action logged: who, what, when, target, IP. Member registrations also logged. Last 100 entries shown by default.
Change APRS-IS filter, upstream server, server name etc. without restarting. Changes apply immediately to the upstream connection.
Generate keys for /api/history access (Grafana, dashboards, scripts). Each key can be revoked individually.
If a new GitHub release is available, the ⬆ button appears in the header. Pulls, rebuilds and restarts via systemd. Audit-logged.
Enter a callsign → get the APRS-IS passcode. Same algorithm used by all APRS-IS servers.
Convert between latitude/longitude and Maidenhead grid (e.g. IO83qe). Supports field/square/subsquare precision.
Build a complete APRS position packet from lat/lon, symbol, comment and PHG fields. Copy-paste straight into your TNC.
Visual browser of all APRS symbols. Click any to copy its symbol code (e.g. /> for a car).
The WebSocket is connected but the upstream APRS-IS connection is reconnecting. Usually clears within 30 seconds. If persistent, check the admin panel → Status tab.
Chrome HSTS cache issue. Go to chrome://net-internals/#hsts, scroll to "Delete domain security policies", enter aprsnet.uk and delete. Repeat for www.aprsnet.uk.
Check your APRS-IS passcode is correct. Get it from the Utils panel or your member dashboard. Each callsign has a unique passcode — using the wrong one silently fails.
Check that filter checkboxes in the sidebar are ticked. By default Ham APRS, CWOP, OGN and Objects are on. Pi-Star/MMDVM is off by default — tick it if you want digital voice gateways. If still empty, refresh the page — replay should fill the map within 5 seconds.
Report it via the GitHub issue tracker. Each panel has been tested but new components might have contrast issues.
Advanced APRS Go Server · · GNU GPL v3
© 2026 Daren Loxley 2E0LXY · Source on GitHub
Calculate the APRS-IS passcode for any amateur callsign.
Based on the standard APRS-IS passcode algorithm (XOR hash of callsign, SSID stripped).
Convert between lat/lon and Maidenhead grid square.
Build a valid APRS position packet string.
Generated packet:
Fill in fields above...
Click a symbol to see its code. Use in beacon generator or TNC config.
| # | Callsign | Packets | Last Heard |
|---|
| # | Callsign | Distance | Bearing |
|---|
| # | Callsign | Time | Type |
|---|
| # | Callsign | Speed | Course |
|---|
Analysing traffic for NTS nets, tactical groups and message clusters...
No messages heard yet
ISS Position
Loading...
Next Pass Over Your Location
ARISS Callsign
RS0ISS / NA1SS
Freq: 145.825 MHz FM
Digipeater
RS0ISS-4
Path: RS0ISS or ARISS
| Time | From | To / Via | Comment | Coords |
|---|
Stations received by this gateway that were digipeated via RS0ISS or ARISS:
| Callsign | Last Heard | Position |
|---|
No ISS-digipeated packets received yet
How to use ARISS APRS
Tune to 145.825 MHz FM · Set your path to ARISS or RS0ISS ·
Check pass times at heavens-above.com ↗ ·
Live ISS track at aprs.fi ↗
No weather stations heard yet. Waiting for CWOP/WX packets...
Calculate the APRS-IS passcode for any amateur callsign.
Based on the standard APRS-IS passcode algorithm (XOR hash of callsign, SSID stripped).
Convert between lat/lon and Maidenhead grid square.
Build a valid APRS position packet string.
Generated packet:
Fill in fields above...
Click a symbol to see its code. Use in beacon generator or TNC config.
| # | Callsign | Packets | Last Heard |
|---|
| # | Callsign | Distance | Bearing |
|---|
| # | Callsign | Time | Type |
|---|
| # | Callsign | Speed | Course |
|---|
Analysing traffic for NTS nets, tactical groups and message clusters...
No messages heard yet
ISS Position
Loading...
Next Pass Over Your Location
ARISS Callsign
RS0ISS / NA1SS
Freq: 145.825 MHz FM
Digipeater
RS0ISS-4
Path: RS0ISS or ARISS
| Time | From | To / Via | Comment | Coords |
|---|
Stations received by this gateway that were digipeated via RS0ISS or ARISS:
| Callsign | Last Heard | Position |
|---|
No ISS-digipeated packets received yet
How to use ARISS APRS
Tune to 145.825 MHz FM · Set your path to ARISS or RS0ISS ·
Check pass times at heavens-above.com ↗ ·
Live ISS track at aprs.fi ↗
These filters control what data the upstream APRS-IS server sends to your gateway. They do not affect packets your gateway transmits. Multiple filters can be combined — if any filter matches, the packet is passed. Prefix a filter with - to exclude matching packets.
ℹ️ Leave blank or use auto to automatically use a range filter based on your geofence centre below.
G M0 2E passes all UK callsigns.
2E0LXY* matches all SSIDs.
t/pw for positions and weather only.
⚠️ Exclude Mode
Any filter above can be negated by prefixing with -. Enable this to add the next filter as an exclusion. E.g. r/53.7/-1.5/200 -p/CW = range filter BUT exclude CWOP stations.
Leave blank or type auto to use geofence centre + radius. Full filter docs ↗
When enabled, packets outside this radius are dropped server-side regardless of APRS-IS filter.
POST JSON to external URLs on APRS events. Works with Node-RED, Home Assistant, n8n.
No webhooks configured
Issue keys for third-party access to /api/history without admin credentials.
Copy now - shown once only:
No API keys
Usage: curl -H "X-API-Key: aprs_..." /api/history
Downloads latest release, rebuilds binary and restarts service (~30s). Page will reconnect automatically.
Click Refresh to load members
Banned callsigns are dropped from APRS-IS broadcast. Wildcards allowed (e.g. SPAM*)
Banner displayed at the top of every page. Also shows unread message count to logged-in members.
Download all server state (members, bans, MOTD, webhooks, API keys, config) as a single JSON file. Restore by uploading a previously downloaded backup.
RELOADED SUCCESSFULLY
Enter your callsign and APRS-IS passcode to send a message to
Last Position
Last Heard
Path
PHG Range
Speed / Course
Packets heard
Weather Data
Comment / Status
Latest Raw Packet
Speed Over Time (km/h)
Position History ( points)
All packets heard this session for
Only the most recent packet stored per station. Connect longer to see more.
Decoded path from latest packet:
Path Explanation
Access your APRS account
Watchlist synced to server — active across all devices
Messages sent to your callsign while offline are stored here
No stored messages
All callsigns associated with your account. Messages to any of these are stored when you are offline.