Z3DMR ("the app") is a Digital Mobile Radio (DMR) internet client for licensed amateur-radio operators, published by Radio Amateur Club Z37CPR ("we", "us", "the developer"), Republic of Macedonia. This policy explains what data the app handles, where it goes, and the choices you have. The app contains no advertising and no third-party analytics or tracking.
The following is created and kept locally on your phone. It is not transmitted to us and is removed when you delete it in-app or uninstall the app:
| Data | Purpose |
|---|---|
| Connection profiles: profile name, callsign, DMR ID, ESSID, master-server address/port, talkgroup | So you can connect to a DMR network |
| Master-server password (stored encrypted via Android Keystore, AES-256-GCM) | To authenticate you to the DMR network |
| Favourites, recents, contacts and talkgroup selections | Convenience |
| App settings (audio, notifications, theme, language, PTT options, APRS beaconing options) | Your preferences |
| Local activity log, system log, and data-usage counters | Diagnostics shown inside the app |
allowBackup is disabled, so this data is not included in Android cloud backups.
Exporting and backing up your data: the Profiles tab can export your connection profiles, and Settings → Backup can export your user-added talkgroups, private contacts and master servers, each to a file you choose the location of and can import back (for example after a reinstall or on a new phone). An exported file contains your saved passwords in plain text and stays entirely under your control - we never receive it. Keep it safe and delete it when no longer needed.
When you connect and talk, the app acts as a DMR radio and sends the following to the master server you selected (operated by an independent amateur-radio network, not by us):
| Data | When | Why |
|---|---|---|
| Callsign and DMR ID | On connect and with each transmission | Required to log in to the network and to identify you to other operators, as DMR mandates |
| Master-server password (sent as a salted hash per the DMR "Homebrew" protocol, not in plain text) | On connect | To authenticate you |
| Position: latitude/longitude, city and Maidenhead grid locator (only if you grant Location) | On connect | Reported in the connection details, like a hardware hotspot; placeholder values are sent without the permission |
| Your voice (digitised with the AMBE vocoder) | Only while you press to talk | To carry your transmission to other operators on the talkgroup |
APRS position beaconing (optional, off by default). If you enable APRS under
Settings, then while connected the app also sends your callsign, position and optional comment to the
public APRS-IS network (rotate.aprs2.net), which we do not operate. That
information is public and is shown on sites such as aprs.fi. It requires the Location permission and can
be turned off at any time.
Important - amateur radio is not encrypted. By the regulations governing amateur radio, transmissions must not be encrypted. DMR voice and identifiers therefore travel over the network in the clear, and anyone on the same talkgroup, or on the DMR network, can hear your transmission and see your callsign and DMR ID - exactly as with a physical DMR radio. Do not send anything over amateur radio that you consider private. How each network handles connection logs is governed by that network operator's own policy, not by us.
To populate its pickers and enable audio, the app downloads reference files over HTTPS from our
server z3dmr.com:
These are downloads to your device. They do not upload any personal data about you. Standard web-server access logs (e.g. IP address, timestamp) may be recorded by the hosting server for security and reliability, as with any website; these logs are not used to identify or profile you and are not combined with your in-app activity.
Optional custom DMR-ID source. Under Settings you may replace the built-in
DMR-ID directory with an address of your own choosing. If you do, the app downloads from that
address instead of z3dmr.com; the request contains no personal data beyond what any
file download requires, but the server you point it at is not operated by us and is not covered
by this policy. You can remove a custom source at any time to return to the built-in directory.
| Permission | Why |
|---|---|
Microphone (RECORD_AUDIO) | Captures your voice while you press to talk, to transmit it over DMR. Audio is never recorded or saved. |
Notifications (POST_NOTIFICATIONS) | Shows the ongoing connection status and incoming-call/connection alerts. |
Location (ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION) - optional | Reads a one-shot GPS fix to report your grid locator to the DMR network and, if enabled, beacon your position to APRS. Decline it and placeholder values are sent; nothing else is affected. |
Accessibility service (BIND_ACCESSIBILITY_SERVICE) - optional, opt-in | Lets phone volume keys act as your PTT and channel buttons while the app is minimized or the screen is off, without changing the media volume. It only detects the keys you bound in Settings: it does not read screen content, does not record audio, and collects, stores and shares nothing. It receives no accessibility events at all, and it touches only those keys - a PTT key while a DMR connection is active, a Previous/Next key whenever you press it. Every other key behaves normally. It runs only if you enable "Z3DMR PTT" in Android's Accessibility settings, and you can turn it off there at any time. The app is fully usable without it. |
| Foreground service (microphone, media-playback & location types) | Keeps the connection and audio alive in the background. The location type is used only while APRS beaconing is enabled, so background beacons can get a fresh fix. |
| Internet & network state | To connect to DMR networks and to detect network changes for auto-reconnect. |
| Modify audio settings / Vibrate / Wake lock | Correct audio routing, alert vibration, and keeping the radio responsive during a session. |
| Ignore battery optimizations (optional) | Prevents the system from killing the live voice connection in the background. This is optional; you may decline it. |
We do not sell your data and we do not share it with advertisers or data brokers. Your data is transmitted only to the DMR network you choose to connect to (inherent to using DMR) and, if you enable APRS beaconing, to the public APRS-IS network - both described in section 3. There are no third-party analytics or advertising SDKs in the app.
Donating is entirely optional. If you tap "Donate", the app opens an external checkout page hosted by Stripe in your browser. Any payment details are entered on Stripe's page and handled under Stripe's own privacy policy; the app itself does not collect or receive your payment-card information.
Z3DMR is a tool for licensed amateur-radio operators and is intended for adults. It is not directed to children and we do not knowingly collect data from children.
Master-server passwords are encrypted at rest with a hardware-backed key from the Android Keystore (AES-256-GCM). Reference files and firmware are fetched over HTTPS, and cleartext (non-HTTPS) web traffic is blocked app-wide. Note that DMR radio traffic itself is unencrypted by regulation, as described in section 3.
We may update this policy as the app evolves. Material changes will be reflected here with a new "Last updated" date.
Radio Amateur Club Z37CPR
Email: support@dmr.net.mk
Community & support: https://t.me/z3dmr
Web: https://z3dmr.com