APRS and GPS on DMR: beacons, map positions and how to set it up
Modern DMR radios stopped being just "digital walkie-talkies" a long time ago. Many models come with a built-in GPS receiver and can periodically send the operator's coordinates straight over the air. This feature is called a GPS beacon or APRS report, and the result is your marker on a map, visible to teammates, a dispatcher, or anyone who opens aprs.fi. In this article we break down how it works at the protocol level, which hardware supports the feature, and how to configure it correctly.
What APRS is and what DMR has to do with it
APRS (Automatic Packet Reporting System) is a standard originally created for analog packet radio networks on 144.800 MHz. At its core are packets carrying a position, a comment and other data, which are received by IGate stations and published on the internet at aprs.fi. Over time, digital networks learned to "make friends" with APRS through dedicated gateways.
In DMR, position data is sent not by voice but over a data channel. The radio builds a special DMR-standard packet (usually a CSBK or a short data packet) carrying the compressed latitude and longitude. The network core — BrandMeister, for example — intercepts these packets, extracts the position and publishes it to APRS-IS (the global internet system for exchanging APRS packets). The process looks like this:
- The radio's GPS receiver acquires the coordinates.
- Once the configured interval elapses, the radio transmits a data packet to the chosen talkgroup or through a repeater.
- The hotspot or repeater relays the packet into the BrandMeister network.
- The BrandMeister gateway (bm-pos2aprs) publishes the position to APRS-IS.
- The data appears on aprs.fi under your callsign.
Which radios can send GPS coordinates
A built-in GPS receiver and support for APRS reporting over DMR are far from universal across models. Here are the most popular options on the market.
Anytone D878UV / D878UV Plus
One of the most feature-loaded DMR handhelds when it comes to GPS/APRS. In the CPS (codeplug programming software) you need to go to Tool → Options and enable the GPS and APRS modules. After that an APRS section appears in the CPS left-hand menu, where you set:
- Destination Call Sign — usually APDR10.
- Your SSID — for example, -7 (a mobile object).
- APRS Symbol Table and the symbol — to identify the type of object on the map.
- Report interval — 30 seconds and up.
- The channel for transmitting data (GPS Revert Channel).
For more on the radio's capabilities, see Anytone D878UV review, and for the Bluetooth module and external GPS, see GPS/BT module for Anytone.
Anytone D578UV
The mobile version of the same family. Configured the same way as the D878UV through CPS. It has a more powerful transmitter, which matters when working through a repeater at greater distances.
TYT MD-9600
A popular mobile DMR rig with a built-in GPS. It supports sending coordinates over the DMR data channel. Setup is done through TYT's own CPS: you specify the GPS system (usually BrandMeister), the talkgroup, the slot and the transmission interval. Compared to Anytone, the CPS interface is less flexible, but basic tracking works.
Other models
GPS tracking support is also claimed for the Radioddity GD-73, Ailunce HD1, BTECH DMR-6X2 and a number of Motorola-compatible devices. Before buying, it's worth checking the firmware version: some early revisions lacked the APRS feature even with a GPS receiver present.
How the setup works: key codeplug parameters
Regardless of the model, the configuration logic is the same. For more on the general codeplug structure, see What a codeplug is.
GPS system
In CPS you create a "GPS system" (or "APRS system") profile. In it you specify:
- Data transmission channel/slot — a separate channel (talkgroup) for GPS packets, so they don't clutter the voice channels. On BrandMeister it's common to use talkgroup 9 (local) or a dedicated regional TG for positions.
- Call type — Private or Group. For BrandMeister it's usually Group.
- Confirmation (Data Call Confirmed) — Off is recommended to reduce the load on the air.
Transmission interval
How often coordinates are sent is the key trade-off. The more frequently the radio sends a packet, the more up-to-date your position is on the map, but the faster the battery drains and the heavier the load on the channel.
- 30–60 s — for real-time on-foot tracking; drains a handheld's battery heavily.
- 120–180 s — a reasonable balance for vehicle or group outings.
- 300 s and up — for stationary monitoring, when the fact of presence matters more than the movement.
GPS Revert Channel
On Anytone this is the GPS Revert parameter. A value of Selected means the coordinate packet will be sent on the currently active channel. A value of Last Active or a dedicated channel from the list lets you reliably direct the data exactly where it needs to go without interrupting voice communication.
How the data appears on the map: the path from radio to aprs.fi
When the coordinate packet reaches the BrandMeister server, it decodes the position and passes it via the MQTT mechanism to the bm-pos2aprs script. The script publishes the record to APRS-IS — the global network of servers polled by aprs.fi. A marker appears on the map with your callsign, the time of the last packet, and the travel speed (if the radio also transmits it).
For your position to be published, you also need to log in to your BrandMeister account and enable forwarding to APRS-IS there — this is done once in your profile settings. Without that step the data stays inside BrandMeister and never makes it out.
Why you'd want this: real-world use cases
Tracking over DMR/APRS solves several practical problems.
- Group outings and hiking. Everyone sees each other on a map on their phone (aprs.fi, APRSDroid, etc.) — without internet on site, using only the radio and a hotspot.
- Security and coordination. A dispatcher sees the positions of patrols or vehicles in real time.
- Search and rescue. The last known position of a participant who lost contact stays on the server.
- Testing hotspot or repeater coverage. You can see where the radio last "reached" the network.
Information about operators and hotspots in the private DMRhub network can be viewed on the operator and hotspot map in your account — it shows who is on the air and where they're working from. In addition to voice and tracking data, DMRhub supports DMR SMS: text messages can be sent straight over the air without leaving the on-air mode.
Pitfalls and common mistakes
No GPS lock
A GPS receiver in a radio needs a few minutes for the initial satellite acquisition (cold start). Indoors or in dense urban areas, a lock may not happen at all. The radio won't send a packet until it has a fix. The fix is to let the radio sit in the open, or to use an external GPS module (see GPS/BT module).
Position inaccuracy
Consumer GPS receivers in radios give 3–10 meter accuracy in good conditions. In an urban canyon or under trees, the error can grow to 30–50 m. For tracking this is usually acceptable, but precise positioning calls for external receivers with GLONASS support.
Battery drain
The GPS receiver and frequent data transmissions noticeably cut a handheld's runtime. At a 60 s interval you can lose 20–30% of battery capacity on top of normal usage. For long outings a 180 s interval or an extended battery is recommended.
Visibility on the map vs. actual transmission
If a marker has appeared on aprs.fi, that doesn't yet mean the radio is "audible" on the air right now. APRS-IS servers keep the last position for a long time. Always check the time of the last packet next to the marker.
How this ties into the DMRhub codeplug
If you operate on the DMRhub network, sending GPS positions requires a correctly configured codeplug — specify the right data channel and a talkgroup supported by the network. A ready-made codeplug for a radio that accounts for DMRhub frequencies and channels is described in Codeplug for DMRhub. After registering on the platform you get a personal DMR ID, which is what shows up in the APRS packet as the source of the position — see Registering a DMR ID for details.
Join DMRhub — a private DMR network with an operator map
Sign up, get your DMR ID, build a RadioStar hotspot and start working on the digital air. Your colleagues' GPS positions will be visible on the network map right in your account.
Sources
- BrandMeister Wiki — APRS. wiki.brandmeister.network/index.php/APRS
- GitHub bm-pos2aprs — BrandMeister APRS gateway. github.com/BrandMeister/bm-pos2aprs
- M0PQA — Making APRS work on the AnyTone AT-D878UV. m0pqa.com
- N1ATP — DMR APRS overview. n1atp.com/project-dmr/dmr-aprs
- Ailunce Blog — How does DMR APRS work on the Ailunce HD1. ailunce.com