DMR Operation & Functionality with W0CHP-PiStar-Dash
There seems to be lots of confusion with
W0CHP-PiStar-Dash (WPSD) and DMR
functionality. This document serves to hopefully clear that up.
Table of Contents:
Users who had been using the original Pi-Star software, had the ability to use “DMR Direct Mode”. This means, that the user could select a single DMR Master server from a drop-down in the main Configuration Page, and that was added directly to an MMDVMHost connection. Ergo, that is the one-and-only DMR connection that would work on a hotspot.
At some point in 2021, I moved WPSD away from the legacy DMR Direct mode paradigm, and the DMR Master selection in the config now presents three choices:
Choosing #1, DMRGateway, enables users to configure and connect to multiple DMR networks (5, plus an XLX master/network, totaling 6). It still allows a user to configure and enable a single DMR master, but DMRGateway must be selected to present this functionality.
Choosing #2 and #3 locks the user into a single cross-mode. But we’ll focus on DMRGateway, #1, because this is where there seems to be the most confusion.
Rationale for removing the huge drop-down selection list for s single DMR Master, and favoring DMRGateway
Because to me it’s the legacy way; DMRGateway and its support for multiple
networks and its flexibility, is a better option (for me) and is the new
paradigm (all other digital modes also use
G4KLX’s excellent gateways). I
never used DMR Direct Mode once DMRGateway was released, honestly.
Why, and how people have become confused
You need to understand, that WPSD is/was a small personal project, with very few users, but these users completely understood the network and digital voice software toolchains very intimately (this was the original target user-base).
Then all of a sudden, people started live-streaming/YouTubing, showcasing WPSD, and some then setup WPSD communities; so the user base changed…a lot. There’s no other way to say this, but most users now have no idea how anything under the hood works; they are newbies and Luddites. There’s even some people in various online communities, thinking that they are experts, and unfortunately spreading gross misinformation which only further confuses users.
Now that WPSD’s visibility and user-base has increased exponentially, there are lots of users who don’t understand the DMRGateway paradigm, and they also expect the main configuration page to “do all the work” for them while setting up DMR mode. Unfortunately, with the flexibility of DMRGateway, complexities of disparate DMR networks and the myriad (infinite?) possible use cases, the configuration page cannot possibly “do it all”. It’s simply a “starting point” to get folks up-and-running with DMR in a basic, but functional and intuitive manner.
What is DMRGateway, MMDVMHost, and DMR Gateway Mode?
I feel the need to explain this, because I see both a lot of misunderstanding, as well as misinformation being conveyed by self-proclaimed experts/Dunning-Kruger-affected in the various online communities…
DMRGateway is software that connects to various DMR networks. It can support connecting to 6 networks simultaneously (vs. MMDVMhost’s single master/“Direct Mode”). DMRGateway also provides powerful and flexible rule-set creation (complicated for “appliance operators”, and largely misunderstood by many self-proclaimed “experts”) to help users route DMR traffic to their desires/requirements1. DMRGateway then routes the DMR network traffic to MMDVMHost…
MMDVMHost is the host software that “talks” to the MMDVM modem itself.
DMR Gateway Mode instructs MMDVMHost to use DMRGateway for the routing of route DMR traffic, rather than MMDVMHost itself.
MMDVMHost has been moving away from any “Direct” connections (to any mode, as a matter of fact…not just DMR), in favor of mode “Gateways” (e.g. YSFGateway, M17Gateway, etc.). In light of this, WPSD has followed suit, and its Configuration Page does not provide means for a Direct DMR connection/single master any longer (unlike Pi-Star). And as mentioned above, this WPSD design decision was deliberate.
Depictions of flow and operation
Here is an example ASCII diagram of the (legacy) DMR Direct (single master) Mode flow & operation:
Rig <--> Modem <--> MMDVMhost <--> DMR Master Server (e.g. BrandMeister)
Here is an example ASCII diagram of MMDVMHost in Gateway Mode flow & operation, using DMRGateway with multiple example networks:
Rig <--> Modem <--> MMDVMHost <--> DMRGateway as Master \ | <--> BrandMeister | <--> XLX | <--> DMR+ | <--> TGIF
WPSD DMR network “mappings”
DMRGateway can support connecting up to 6 networks, even simultaneously. These networks are defined in DMRGateway’s configuration file as:
DMR Network 1-5
When using WPSD’s Configuration Page to enable DMR networks in DMRGateway, here are the pertinent mappings it configures in DMRGateway:
DMR Network 1: BrandMeister
DMR Network 2: DMR+ / FreeDMR / HB-Link
DMR Network 3: DMR2YSF / DMR2NXDN Cross-Over Modes
DMR Network 4: TGIF Network
DMR Network 5: SystemX Network
XLX Network: XLX Master, chosen by the user
Out-of-the box, when configuring one or multiple DMR networks in DMRGateway
mode, some (most) networks require the use of talkgroup “prefixes” (and
0-padding digits) in order to use those talkgroups. This is for two main
There are inevitable talkgroup number overlaps and collisions between the various and disparate DMR networks. Prefixes are the only reliable way to route DMR talkgroup traffic when connecting to multiple/simultaneous DMR networks.
Prefixes allow for talkgroup name lookup functionality
Talkgroup prefix mappings
When in the main Configuration Page, you’ll see notes in the various DMR networks, such as, “Uses “4/5/7/8” talkgroup prefix”, etc.
Here are the prefixes (if any) for the networks available in the Configuration Page:
BrandMeister: No prefix.
DMR+ / FreeDMR / HB-Link: Prefix “
DMR2YSF / DMR2NXDN Cross-Over Modes: Prefix “
TGIF Network: Prefix “
SystemX Network: Prefix “
XLX Network: TG
6, and Prefix “
6” to change XLX modules.
As an example, TG
91 will simply be for BrandMeister World-Wide; no prefix used
for BM. Another example would be TG
8000321; TechChat TG
321 on DMR+_QuadNet.
And another is TG
4002350; UK ChatterBOX TG
2350 on SystemX. Note the
0-padding after the prefix and before the actual network’s talkgroup numbers.
More lovely ASCII depictions:
TG 321 on DMR+_QuadNet: Prefix "8" + "000" + "321" = TG "8000321" (in the dashboard and in the rig/codeplug)
Custom edits to the DMRGateway config file
Once enabling and configuring DMR networks in the Configuration Page, it allows DMR and DMRGateway to operate in somewhat of a basic setup; with settings and options determined by me and a bunch of user and developer feedback. I call these “stock config settings”.
Since these settings/options may not work for every user, users can edit the DMRGateway config file by hand or in the DMRGateway expert editors in the Admin section.
Any subsequent changes using the main Configuration Page will blow away/remove any custom changes you have made to your DMRGateway config file, and replace them with the “stock config settings”.
If you happen to apply changes using the Configuration Page after custom DMRGateway config edits and become victim to your edits being changed, you can always restore your DMRGateway (and the rest of your configs) by leveraging the “Config Manager” in the Admin–>Expert area.
You are not locked into any particular DMR network or DMR settings!
It is important to note, that you are not locked into the available DMR
Networks or DMR settings in
W0CHP-PiStar-Dash. You must remember, my software
is simply a pretty front-end / dashboard / configuration tool for the software
that actually connects your rig to the various networks.
You are always able to hand-edit your DMRGateway config file to do/connect/use whatever DMR network you want with your own settings.
DMRGateway’s official rewrite rules documentation ↥