Amateur Radio: DMR: Codeplug

Revised 2020-03-25

New or updated entries indicated with New or Updated. Labels expire in 30-60 days.

drama-mask And we say…


Using a Spreadsheet to Organize a DMR Codeplug


The DMR codeplug 1 is the "magic" that brings the radio alive.

The purpose of this writing is to describe a methodology to select and organize BrandMeister talkgroups for inclusion in a DMR codeplug.

Where in the world do you want to talk to?

The BrandMeister servers, connecting to DMR repeaters and hotspots around the world, have more than 1300 talkgroups to choose from. But what talkgroups do you want in your DMR radio? A complete talkgroup list can be loaded into a spreadsheet found in office suite 2 packages. We are going to choose the talkgroups wanted for inclusion in the codeplug.

Concepts of using a spreadsheet New

I only use a spreadsheet to decide what talkgroups i want in a codeplug and decide what talkgroups I want in what zones. 3 The spreadsheet gives me at-a-glance the full codeplug picture.

As the TYT CPS (Customer Programming Software) won't sort datafile entries, I use the N0GSG Contact Manager software to sort entries in the codeplug: contacts, talkgroups and move around the order of the talkgroups within each zone. Having some kind of order—by state or country—in each zone list helps me find what I am switching to more easily than a random order.

Organizing a codeplug

Zone lists are the end product that enables one to find a desired entry amongst all talkgroups, repeaters and simplex frequencies loaded into the radio. Note the dual-band TYT MD-UV380 accepts at least 32 channels for each VFO, keeping the defaults of VFO A=UHF and VFO B=VHF, for a decent-sized zone list.

Gather the talkgroup list

  1. Download a CSV list of BrandMeister talkgroups. The CSV button is atop the webpage.
  2. Open a new spreadsheet and import the CSV file.
  3. Not all talkgroups are included in the CSV file. For example, two nets—Reddit on 98003 and F–Troop on 505005— operate on talkgroups not found in the CSV download. i'll add these and other missing talkgroups, inserting rows as appropriate.
  4. Insert a row atop the sheet and add 5 column headings as shown. Lock the top row.
  5. Resize the column widths.
  6. In column E, insert a eye-catching graphic symbol for each talkgroup you choose to add to your codeplug.
  7. How many talkgroups have you chosen? At the bottom of column E, add the formula 4 "=COUNT(E2:E1324)". The last number—1324—will change as the number of BrandMeister talkgroups increases.
  8. The talkgroups you choose migrate to:
    • A new tab on the spreadsheet, as shown in the next section below.
    • The CPS' "digital contacts" entries.
  9. Alternatively, to make the spreadsheet more useful to me I chose to add two more columns with headings—Tg and Audio—as shown. Note the shortened headings in columns B and E. The "Tg" (Talkgroup) column (F) contains a "Info" hyperlink accessing a web page describing the purpose of the talkgroup. The "Audio" column (G) contains a Hoseline hyperlink enabling one to listen to conversations in all talkgroups.
    Enter these formulas 4 into row 2, cells F and G, then copy the two cells down.
    • =HYPERLINK(""&B2,"Info")
    • =HYPERLINK(""&B2,"Listen")
  10. Name the tab "BM_TGs" and save the spreadsheet.

Additional spreadsheet tabs

Following are portions of additional spreadsheet pages dealing with hotspots, repeaters and other radio services. When using these sheets, locking rows and columns allows moving around the page while showing the labels.

Hotspot zone entries

Zones contain talkgroups organized by regions of the world. The USA states are grouped into regions.

Columns A, B and C are the BrandMeister talkgroup name, the talkgroup number and an abbreviated (I labeled it "Ch_Name") name. The shortened names 5 are so that all (or at least most) of the name fits on the radio display without (or minimal) scrolling.
Note, at the page bottom, there is a formula 4 for each column total. Also note that I sort, on column B, the talkgroups into talkgroup number order for entry into the codeplug.

DMR repeater zone entries

This view is a section of the sheet sorting out the DMR repeaters and the talkgroups— Updated each talkgroup has a Channel Information sheet—available on each repeater.
Note the short abbreviation for the screen display to identify the repeater.

NWS weather, DMR simplex and analog FM repeaters

This view is a section of the sheet for the weather frequencies, the DMR simplex frequencies and the analog FM repeaters.
The three added "VFO" columns reminds me to enter the data into the proper VFO—the MD-UV380 is UHF/VHF—in the CPS (Customer Programming Software).

Additional notes

Optionally load a sample codeplug into the radio software and study it.

I use the N0GSG Contact Manager to sort the contact and channels lists and order the zone list entries. Do read the supplied documentation. The software is very handy if inserting an entry into an already organized zone list. DMR ID databases can be directly loaded into the radio; see the documentation. I chose not to load the databases as I usually have a phone or tablet nearby. I just look at the PiStar dashboard. I do manually enter into the CPS calls of those persons I talk to on a regular basis.

Your "final answer" codeplug will look different than mine. Perhaps some of the above ideas may help.

Questions or comments? Email is at the bottom of this webpage.

Do you need help?

Colorado Digital MultiproticolThe construction of a codeplug can be daunting, but I encourage you to persist in putting your codeplug together. Do use the resources on this website. The weekly Tuesday evening technical Colorado HD Net discusses codeplugs, hotspots and all things digital about DMR, AllStar, D-STAR, and P-25. Part 2 of the net is a question-and-answer opportunity. Part 3 is a discussion about a single topic. The net prologue tells all. Additionally, knowledgable members can be found on the talkgroup throughout the day and evening throughout the week. And there is an active Telegram chat; do join the "Colorado Digital Multiproticol" group to ask questions and share information at any time.


Is it necessary to use a spreadsheet to organize a codeplug? No. Does my choice of arranging the codeplug by location meet your needs? Maybe, but you no doubt will find a methodology that suits your needs. Play with your ideas and see what works for you. I find it easier to play with a spreadsheet's rows and columns than with pencil and paper. Perhaps a combination may work for you. In the reading I do, I take notes using my Evernote account, and pull them together into a hopefully cohesive document. I hope this helps.

Questions or comments? Email is at the bottom of this webpage.


1 The CPS (Customer Programming Software) supplied by the radio manufacturer differs among radio brands, but every codeplug contains three elements: contacts, channels and zones.

2 I use Google Sheets on a Samsung Galaxy tablet, but any spreadsheet of your choosing will work.

3 Whereas some radio programming software, e.g. Anytone and other radio brands, use CVS files, I do not use CVS files to program the TYT MD-UV380. Rather, I often will use the N0GSG Contact Manager software to export a channels CVS file into a spreadsheet to eyeball entries for typos and consistent settings (such as low power for hotspots, medium power repeaters). New

4 If you use a spreadsheet other than Google Sheets, the formulas will differ, but the concept is the same.

5 The few characters available on a DMR radio display doesn't lend itself to scrolling long BrandMeister names. Thinking back to my early days of shortwave listening and the organization of the World Radio TV Handbook developed in the 1950s and continuing today, I chose to prepend a nominal two-letter abbreviation to the shortened talkgroup name where appropriate. Some examples:
wa—wa for wide area—waWW (for World Wide), waAsME (for Asia/Middle East), waEu (for Europe), waOc (for Oceania)…
us—usCO, usNJ…
us_r—r for region—us_rMidW, us_rNoCO, us_rMidAtl…
gb—for Great Britain—gbIre Chat, gbMidlands…

Related Pages