dmrconf

1 dmrconf ${PROJECT_VERSION} User Commands

dmrconf

Command-line tool for programming DMR radios.

          dmrconf
          OPTIONS
          COMMAND
          file

## Description

`dmrconf` is a command-line tool to program DMR radios. That is, generating and uploading codeplugs to these radios. To this end, `dmrconf` uses a common human-readable text format to describe the codeplug for all supported radios (see below). This allows one to share codeplugs between different radios.

Additionally, `dmrconf` also allows one to download codeplugs from the radio and to store it in the human-readable text format.

## Commands

`detect`

- Detects a connected radios. You may specify a specific device using the `-D` or `--device` option.

`read`

- Reads a codeplug from the radio and stores it into the given file. This command may need the `-y` or `-b` options if the file type cannot be inferred from the filename.

`write`

- Writes the specified codeplug to the radio. This command may need the `-c`, `-y` or `-b` options if the file type cannot be inferred from the filename.

`write-db`

- Writes the call-sign database to the device. This command may need the `--id` option to select call-signs if the complete database does not fit into the device. If specified, all call-signs closest to the specified ID are used.

`verify`

- Verifies the codeplug with the connected radio or the specified radio passed with the `--radio` option. This command may also need the `-y` or `-b` options if the file type cannot be inferred from the filename.

`encode`

- Encodes a YAML codeplug as a binary one for the connected or specified radio using the `--radio` option.

`encode-db`

- Encodes the call-sign database as a binary one for the connected or specified radio using the `--radio` option. This command may need the `--id` option to select call-signs if the complete database does not fit into the device. If specified, all call-signs closest to the specified ID are used.

`decode`

- Decodes a binary codeplug and stores the result in human-readable form. The radio must be specified using the `--radio` option.

`info`

- Prints some information about the given file.

## Options

`-c` or `--csv`

- Specifies the file format for the input file for `verify`, `encode` and `write` commands. This option is not needed if the filetype can be inferred from the filename. That is, if the file ends on `.conf` or `.csv`.

`-y` or `--yaml`

- Specifies the file format for the input or output file for the `verify`, `read` and `write` commands. This option is not needed if the filetype can be inferred from the filename. That is, if the file ends on `.yaml` or `.yml`.

`-b` or `--bin`

- Specifies the file format for the input or output file for the `verify`, `read` and `write` commands. This option is not needed if the filetype can be inferred from the filename. That is, if the file ends on `.bin` or `.dfu`.

`-m` or `--manufacturer`

- Specifies the file format for the input file for the `decode` command to be the manufacturer binary codeplug format. Not all manufacturer formats are implemented.

`-D` or `--device=DEVICE`

- Specifies the device to use. Either a USB BUS:DEVICE number combination or the name of a serial interface. The device must be specified if the automatic radio detection fails, is unsave or if more than one radio is connected to the host.

`-R` or `--radio=`NAME

- Specifies the radio for the `verify`, `encode` or `decode` commands. This option can also be used to override the automatic radio detection for the `read` and `write` commands. Be careful using this option when writing to the device. An incompatible code-plug might be written.

`-I` or `--id=`DMR_ID

- Specifies the DMR ID or a comma separated list of DMR ID prefixes for the `write-db` or `encode-db` commands. More than one ID may be specified using a comma-separator.

`-n` or `--limit=`N

- Limits several amounts, depending on the context. When encoding or writing the call-sign db, this option specifies the maximum number of call-signs to encode.

`-B` or `--database=`JSON_FILE

- Specifies the call-sign database to use for writing a user-db to the device.

`--init-codeplug`

- Initializes the code-plug from scratch. If omitted (default) the codeplug on the device gets updated. This maintains all settings made earlier via the manufacturer CPS or on the radio itself, that are not part of the codeplug.

`--update-device-clock`

- If set, the device clock gets updated with the transfer to the radio. That is, with any codeplug or call-sign DB being written to the device. Not all radios support this feature.

`--auto-enable-gps`

- Automatically enables GPS/APRS if at least one GPS/APRS system is defined and used by any channel.

`--auto-enable-roaming`

- Automatically enables roaming if at least one roaming zone is defined and used by any channel.

`--ignore-limits`

- Disables the enforcement of limits. Warnings are still shown.

`-h` or `--help`

- Displays a short help message.

`--list-radios`

- Lists all supported radios.

`-v` or `--version`

- Displays the version number.

`-V` or `--verbose`

- Enables debug messages.

## Supported Radios

The following list contains all supported radios and their names for the `--radio` option.

`opengd77`

`openuv380`

- All radios running the Open GD77 firmware.

`d868uv`

`d868uve`

- Anytone AT-D868UV(E).

`d878uv`

- Anytone AT-D878UV.

`d878uv2`

- Anytone AT-D878UVII.

`d578uv`

`d578uv2`

- Anytone AT-D578UV (II).

`md390`

`rt8`

- TYT MD-390 or Retevis RT8.

`uv390`

`rt3s`

- TYT MD-UV390 or Retevis RT3S.

`md2017`

`rt82`

- TYT MD-2017 or Retevis RT82.

`gd73`

- Radioddity GD-73.

`gd77`

- Radioddity GD-77.

`rd5r`

- Baofeng/Radioddity RD-5R.

`dm1701`

`rt84`

- Baofeng DM1701 or Retevis RT84.

`dr1801uv`

- Baofeng DR1801UV-A6.

`dm32uv`

- Baofeng DM-32UV.

## Bugs

This program is still under development and may contain bugs that may cause harm to the radios and may even destroy them. Hence you may use this software on your own risk. If you want to have guaranties, consider using the CPS (code-plug programming software) supplied with your radio.