Part of our Getting On The Air: Modes, Operations, and Making Contacts guide.

The question I get most from new DMR operators is not about talkgroups or color codes. It is “I opened the programming software. Now what?” The AnyTone CPS throws a tree of thirty-odd menu items at you with no hint about which one comes first. Most people click straight into Channels, find the Talk Group dropdown empty, and close the software in frustration.

This post is the order I actually build in, for the AnyTone AT-D878UV II Plus, the AT-D890UV, and the BridgeCom Maverick. If you want the concepts first (what a zone is, why timeslots matter), read Building Your First DMR Codeplug. This is the hands-on companion.

A quick word on the Maverick

BridgeCom says it plainly on their own product page: the Maverick is the same core radio as the AnyTone 890, sold with their training and support. Everything here for the 890 applies to the Maverick. The 878 is a different radio with its own CPS, so an 878 codeplug file will not open in the 890 software or the other way around. The menu layouts are close enough that the build order below works on all three.

Before you open the software

  • Get your DMR ID. Register at RadioID.net using your call sign. Nothing transmits on DMR without it, so do this first. Here is my RadioID.net walkthrough.
  • Match your CPS to your firmware. Check the firmware version in the radio’s device info menu, then download the CPS version made for that firmware from your dealer’s support page (BridgeCom for the Maverick). A mismatched CPS is the number one reason writes fail or the radio starts acting strange.
  • Write down what you want to reach. For each local DMR repeater you need the output frequency, offset, color code, and which talkgroups live on which timeslot. Your club or the repeater owner is the best source. If you run a hotspot, note its frequency too.

Step 1: Read the radio and save a backup

Plug in the programming cable, set the COM port in the CPS, and read from the radio. Immediately save that file with a name like 890-factory-2026-10-12. That file is your undo button. Starting from a read also gives you a file that matches your radio’s model and band settings, which a blank “New” file does not always do.

Step 2: Clear out the demo channels

Radios ship with sample channels, zones, and talkgroups that mean nothing to you. Delete what you can. The radio needs at least one channel and one zone, so if the software will not let you delete the last one, just edit it later instead.

Step 3: Build from the bottom up (the part nobody tells you)

Everything in a codeplug points at something else. A channel points at a talkgroup and a radio ID. A zone points at channels. A scan list points at channels. If the thing being pointed at does not exist yet, the dropdown is empty, and that empty dropdown is where most beginners quit. Build in this order and every dropdown will already have what you need:

  1. Radio ID List: enter your DMR ID and call sign. This is who you are on the network.
  2. Talk Groups: the groups you want to transmit to. Start with five or six, not fifty. A good starter set on Brandmeister is Local 9, Worldwide 91, North America 93, USA 3100, your state (Arizona is 3104), and Parrot 9990 set as a private call.
  3. Channels: now the dropdowns work. For a digital channel set the receive and transmit frequencies, channel type Digital, the color code, the timeslot, the talkgroup, and your radio ID.
  4. Zones: group channels together, usually one zone per repeater or one for your hotspot.
  5. Scan Lists and Receive Group Call Lists: optional. Skip them on your first build. They are refinements, not requirements.

One thing that surprises everyone: a DMR channel is one frequency plus one timeslot plus one talkgroup. A single repeater carrying eight talkgroups becomes eight channels in your radio. That is normal, not a mistake, and it is exactly why zones exist.

Step 4: Build one channel, write it, and test it

Do not build 150 channels and then find out your radio ID was wrong. Build one channel to the Parrot (9990) on your hotspot or nearest repeater, write it to the radio, key up, say your call, and unkey. If Parrot plays you back, your radio ID, color code, and timeslot are all correct, and everything you build from here uses the same pattern.

A hotspot is the easiest first test because you control both ends. Most simplex hotspot setups use color code 1 and timeslot 2, but match whatever your hotspot dashboard shows. If you are setting one up, see Building a DMR Hotspot with a Raspberry Pi.

Step 5: Build out the rest

Once Parrot works, add the rest of your talkgroups, then the rest of your channels, then your zones, in that same order. Toss in your analog repeaters and simplex frequencies too. The AnyTone radios handle FM channels right alongside DMR, so one codeplug covers everything you carry.

Step 6: Import the contact list (caller ID, not talkgroups)

The CPS has both a Talk Groups list and a Digital Contact List, and mixing them up is the most common confusion I see. Talk Groups are where you transmit. The Digital Contact List is a giant database of every registered DMR user, and it only exists so your screen shows “KZ7K, Kris, Maricopa AZ” instead of a bare ID number. Download the AnyTone-formatted user database from RadioID.net and import it through the CPS import tool. It is optional, but once you have caller ID you will never go back.

Step 7: Write it and save a dated copy

Write the full codeplug to the radio, then save the file with the date in the name. Every time you change something, save a new dated copy instead of overwriting. When a change breaks something three weeks from now, you will be very glad you can roll back.

The mistakes I see every time

  • Wrong color code or timeslot. The channel looks perfect and nothing happens. Check these two first, every time.
  • CPS version does not match firmware. Update both together, from the same source.
  • Building channels before talkgroups. Empty dropdowns. Go back to the bottom-up order.
  • Building everything before testing anything. One Parrot channel first. Always.
  • Loading an 878 file into an 890 or Maverick. Different software, different file. You can export lists to CSV from one and import into the other, but check that the columns line up before you trust it.

Should you just use someone else’s codeplug?

Starting from your club’s published codeplug is a perfectly good shortcut, and dealers will happily sell you a pre-programmed radio. My take: build at least one yourself anyway. You are going to edit that codeplug the first time a repeater changes or you want to add a talkgroup, and if you understand the bottom-up order, that edit takes five minutes instead of an evening. Once you are comfortable, the next question is which network to spend your time on, and Brandmeister vs. TGIF covers that.

Still deciding whether DMR is worth it? Start with Two Cheap Ways to Get Into DMR. Running an 878 and have a working codeplug? Configuring APRS on the AnyTone AT-D878UV II Plus is the natural next project.


0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x
×