Digipeater

Repeat APRS packets to extend network coverage

A digipeater (digital repeater) receives APRS packets and retransmits them to extend their range across the network. Graywolf’s digipeater supports WIDEn-N, TRACEn-N, and exact callsign matching with priority-ordered rules and duplicate suppression.

Digipeater page showing settings, callsign, dedupe window, and a fill-in digi rule
Digipeater configuration with a fill-in digi rule for the VHF APRS channel

Global Settings

FieldDefaultDescription
enabled false Master switch for the digipeater
my_call Your callsign (used for preemptive digi and TRACE insertion)
dedupe_window_seconds 30 Duplicate suppression window. Packets seen within this window are not repeated.

Digipeater Rules

Rules define what packets to repeat and how. Each rule matches an alias in the packet’s digipeater path and specifies an action. Rules are evaluated in priority order (lower number = higher priority). The first matching rule wins.

FieldDescription
from_channel Input radio channel to match
to_channel Output radio channel for retransmission
alias Path element to match (e.g., WIDE, TRACE, or a callsign)
alias_type widen, trace, or exact
max_hops Maximum N value accepted (default: 2). Packets with higher N are ignored.
action repeat or drop
priority Evaluation order (lower = evaluated first)
enabled Rule active/inactive

Alias Types

WIDEn-N

The standard APRS digipeater alias. When a packet arrives with WIDE2-2 in its path, graywolf decrements the SSID to WIDE2-1 and marks the hop as consumed. When the count reaches zero, the alias is fully consumed.

Use max_hops: 2 to limit network congestion — packets requesting more than 2 hops will be ignored.

TRACEn-N

Like WIDEn-N, but inserts your callsign into the path as the packet is repeated. This lets the originating station see which digipeaters handled their packet. Useful for network debugging but uses more bytes in the path.

Exact Callsign

Matches packets that explicitly address your station by callsign in the digipeater path. This is “preemptive” digipeating — if someone sends a packet via N0CALL, your station will repeat it regardless of WIDEn-N rules.

Example Configuration

A typical fill-in digipeater that handles WIDE1-1 only:

Fill-In Digipeater
RuleAliasTypeMax HopsPriority
Preemptive N0CALL exact 1
Fill-in WIDE widen 1 10

A wide-area digipeater that handles WIDE1-1 and WIDE2-2:

Wide-Area Digipeater
RuleAliasTypeMax HopsPriority
Preemptive N0CALL exact 1
WIDE WIDE widen 2 10

Cross-Channel Digipeating

Rules can route packets between channels. For example, receive on channel 1 (VHF) and retransmit on channel 2 (UHF) by setting from_channel: 1 and to_channel: 2.

Duplicate Suppression

The digipeater maintains a sliding window of recently-seen packets. If a packet with the same source, destination, and info field arrives within the dedupe_window_seconds window, it is silently dropped. This prevents packet storms in multi-digipeater environments.

API Reference

MethodEndpointDescription
GET/api/digipeater/configGet digipeater settings
POST/api/digipeater/configUpdate digipeater settings
GET/api/digipeater/rulesList all rules
GET/api/digipeater/rules/{id}Get a single rule
POST/api/digipeater/rulesCreate a new rule
PUT/api/digipeater/rules/{id}Update a rule
DELETE/api/digipeater/rules/{id}Delete a rule