APRS and GPS on DMR: beacons, map positions and how to set it up

Category: BasicsDifficulty: ★★☆~10 minutes

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:

Good to knowFor GPS over DMR to work, the network server (BrandMeister or equivalent) must support decoding position packets and have a configured gateway into APRS-IS. Without that gateway the coordinates will "reach" the server but go no further.

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:

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:

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.

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.

PitfallIf GPS Revert is set to Selected and you switch to a channel with no network connection (a direct simplex channel, say), the packet goes "nowhere" — the network never receives it. It's better to always assign a dedicated data channel with a guaranteed route into the network.

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.

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

  1. BrandMeister Wiki — APRS. wiki.brandmeister.network/index.php/APRS
  2. GitHub bm-pos2aprs — BrandMeister APRS gateway. github.com/BrandMeister/bm-pos2aprs
  3. M0PQA — Making APRS work on the AnyTone AT-D878UV. m0pqa.com
  4. N1ATP — DMR APRS overview. n1atp.com/project-dmr/dmr-aprs
  5. Ailunce Blog — How does DMR APRS work on the Ailunce HD1. ailunce.com