-
Notifications
You must be signed in to change notification settings - Fork 0
APRS
Crow can bridge APRS text messages through a configurable APRS backend, allowing AREDN nodes to send and receive messages with APRS stations. The default backend is APRS-IS, but Crow also supports Dire Wolf KISS-over-TCP and Xastir/YAAC-style TCP text streams.
⚠️ Important: APRS is public amateur-radio traffic. Keep transmit (tx_enabled) disabled until the station callsign, APRS-IS login/passcode or local TNC path, and operator control requirements are fully understood.
Add an aprs block to your crow.conf and include an APRS channel in the channels array:
{
"callsign": "N0CALL-10",
"aprs": {
"enabled": true,
"callsign": "N0CALL-10",
"channel": "APRS og==",
"default_group": "APRSgroup1",
"inline_max_members": 10,
"backend": {
"type": "aprsis",
"host": "rotate.aprs2.net",
"port": 14580,
"tx_enabled": false
},
"groups": [
{
"name": "APRSgroup1",
"members": ["N0CALL-4", "N0CALL-7"],
"repeat_member_messages": false,
"rate_limit_seconds": 20,
"max_members": 10
}
]
},
"channels": [
{ "namekey": "AREDN og==", "telemetry": false },
{ "namekey": "APRS og==", "telemetry": false }
]
}| Field | Description |
|---|---|
callsign |
Your station callsign with SSID |
channel |
The Crow channel name that carries APRS traffic |
default_group |
The group used when no group is specified |
inline_max_members |
Maximum stations allowed in an inline address list |
backend |
Connection details for the APRS backend (see below) |
groups |
Pre-configured station groups for group messaging |
Crow supports three APRS backend types. Choose the one that matches your station setup.
Connect to the internet APRS gateway. For receive only, no passcode is needed. To transmit, set a valid APRS-IS passcode and enable tx_enabled.
"backend": {
"type": "aprsis",
"host": "rotate.aprs2.net",
"port": 14580,
"passcode": "REPLACE_WITH_APRS_IS_PASSCODE",
"filter": "b/N0CALL-4/N0CALL-7",
"tx_enabled": true
}Connect to a local Dire Wolf TNC via KISS-over-TCP:
"backend": {
"type": "kiss_tcp",
"host": "127.0.0.1",
"port": 8001,
"kiss_port": 0,
"path": [],
"tx_enabled": true
}Connect to an APRS application that exposes a TNC2-style TCP text interface:
"backend": {
"type": "tcp_text",
"host": "127.0.0.1",
"port": 14580,
"tx_enabled": true
}All APRS messaging happens on the configured APRS channel (e.g. APRS og==).
@N0CALL-4 message text
#APRSgroup1 message text
#APRSgroup1 N0CALL-4, N0CALL-7 message text
join #APRSgroup1 N0CALL-4, N0CALL-7 message text
The join command creates the group if it does not exist, replaces its member list with the listed stations, and sends the message to all of them.
Each group can optionally repeat a received APRS message from one member back out to the other members of the group. Enable this with repeat_member_messages:
{
"name": "APRSgroup1",
"members": ["N0CALL-4", "N0CALL-7"],
"repeat_member_messages": true,
"rate_limit_seconds": 20,
"max_members": 10
}When enabled, a message received from one group member is forwarded to the other members — not echoed back to the sender. Crow applies duplicate suppression and rate limiting to prevent loops.
- Home
- Change Log
- Configuration
- Configuring Channels
- Backend Selection and Test Deployment
- Command Reference
- APRS Bridge
- LoRa Gateway Tags
- Meshtastic API Backend
- Memory Use
- Strict Gatekeeper
- Winlink
- USB Storage
APRS.mdBackend-Selection-and-Deployment.mdChange-Log.mdCommand-Reference.mdConfiguration.mdConfiguring-Channels.mdHome.mdLoRa-Gateway-Tags.mdMeshtastic-API.mdMemory-Use.mdStrict-Gatekeeper.mdUSB-Storage.mdWinlink.md_Sidebar.md
- Keep every
.mdwiki page linked here. - Keep
Home.mdand_Sidebar.mdin sync. - When a wiki page is removed, remove it from both the Home page inventory and this sidebar.