Fork of dmrconfig
Go to file
2021-02-28 23:52:03 -08:00
examples Update sizes for DM-1801: 15 zones, 32 channels per zone; 40 group lists. 2019-07-30 15:06:09 -07:00
src Compute radio list in rust 2021-02-28 19:41:21 -08:00
.gitignore Hello world rust 2021-02-27 21:01:44 -08:00
99-dmr.rules Add TD-5R to the list of supported radios. 2018-10-29 11:59:28 -07:00
build.rs Use bindgen for rust bindings 2021-02-28 12:27:27 -08:00
Cargo.toml Use bindgen for rust bindings 2021-02-28 12:27:27 -08:00
d868uv-map.h Build id-to-contact map for d868uv. 2018-11-05 19:05:14 -08:00
d868uv.c Fix #37: crash when updating a callsign database on MD-2017, and it does not fit. 2019-09-17 19:55:54 -07:00
dfu-libusb.c Use pkg-config to configure libusb dependency. 2019-06-25 21:15:44 -07:00
dfu-windows.c Fix windows issues. 2018-09-18 04:59:46 -07:00
dm1801.c DM-1801: increase number of grouplists to 76. 2019-08-12 01:04:13 -07:00
gd77.c Creata a separate source file for DM-1801. 2019-07-30 11:25:58 -07:00
hid-libusb.c Use pkg-config to configure libusb dependency. 2019-06-25 21:15:44 -07:00
hid-macos.c Move OS independent HID routines to a separate file. 2018-09-17 23:07:42 -07:00
hid-windows.c Process DM-1801 images. 2019-07-26 19:45:29 -07:00
hid.c Move OS independent HID routines to a separate file. 2018-09-17 23:07:42 -07:00
LICENSE Replace the LICENSE file with the BSD-3-clause license. 2019-08-11 17:50:34 -07:00
main.c Cleanup from removing most of main.c 2021-02-28 01:26:03 -08:00
Makefile Pass version in from build 2021-02-28 00:00:31 -08:00
Makefile-mingw Creata a separate source file for DM-1801. 2019-07-30 11:25:58 -07:00
md380.c Fix config indent and header when PRINT_RARE_PARAMS is enabled 2019-02-10 17:35:59 +01:00
radio.c Don't directly read static device 2021-02-28 23:52:03 -08:00
radio.h Use bindgen for rust bindings 2021-02-28 12:27:27 -08:00
rd5r.c Fix config indent and header when PRINT_RARE_PARAMS is enabled 2019-02-10 17:35:59 +01:00
README.md Align license statement on README.md to current license 2021-01-05 22:08:39 +01:00
serial.c Fix -u option for d868uv. 2018-11-23 18:42:50 -08:00
util.c Support CSV format from https://www.radioid.net/static/user.csv 2019-08-03 21:52:13 -07:00
util.h Fix compilation with GCC 10, defaulting to -fno-common. solve issue #52 2021-01-05 20:52:43 +01:00
uv380.c Merge pull request #27 from onovy/fix-rare-params-indent 2019-09-18 22:14:54 -07:00

DMRconfig

DMRconfig is a utility for programming digital radios via USB programming cable.

Supported radios:

  • TYT MD-380, Retevis RT3, RT8
  • TYT MD-390
  • TYT MD-2017, Retevis RT82
  • TYT MD-UV380
  • TYT MD-UV390, Retevis RT3S
  • TYT MD-9600
  • Baofeng DM-1701, Retevis RT84
  • Baofeng RD-5R, TD-5R
  • Baofeng DM-1801
  • Radioddity GD-77
  • Anytone AT-D868UV
  • Anytone AT-D878UV
  • BTECH DMR-6x2
  • Zastone D900
  • Zastone DP880
  • Radtel RT-27D

Packaging status

Usage

Read codeplug from the radio and save it to file 'device.img', and also save text configuration to 'device.conf':

dmrconfig -r [-t]

Write codeplug to the radio:

dmrconfig -w [-t] file.img

Configure the radio from text file. Previous codeplug is saved to 'backup.img':

dmrconfig -c [-t] file.conf

Show configuration from the codeplug file:

dmrconfig file.img

Apply configuration from text file to the codeplug file:

dmrconfig -c file.img file.conf

Update database of contacts from CSV file:

dmrconfig -u [-t] file.csv

Option -t enables tracing of USB protocol.

Compilation

Whenever possible use the dmrconfig package provided from by Linux distribution

If you want to compile dmrconfig, follow these instructions:

  • Install dependencies
    • On Ubuntu sudo apt install git build-essential pkg-config libusb-1.0-0-dev libudev-dev
    • On Arch Linux sudo pacman -S git base-devel libusb
    • On Mac OS brew install pkg-config libusb
  • Clone this repository
git clone https://github.com/sergev/dmrconfig
  • Compile and install
make
sudo make install

Permissions

On Linux, a permission to access USB device is required. It's possible to run dmrconfig as root, like "sudo dmrconfig", but it's safer to enable access for users. Create a file /etc/udev/rules.d/99-dmr.rules with the following contents:

# TYT MD-UV380
SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="666"

# Baofeng RD-5R, TD-5R, DM-1801
SUBSYSTEM=="usb", ATTRS{idVendor}=="15a2", ATTRS{idProduct}=="0073", MODE="666"

# Anytone AT-D868UV: ignore this device in Modem Manager
ATTRS{idVendor}=="28e9" ATTRS{idProduct}=="018a", ENV{ID_MM_DEVICE_IGNORE}="1"

To activate it, run:

sudo udevadm control --reload-rules

Then re-attach the USB cable to the radio.

License

Sources are distributed freely under the terms of BSD 3 license.
For more information see the LICENSE file

Credits

DMRconfig was created by Serge Vakulenko KK6ABQ.

It is currently maintained by the OpenRTX developers.