dmrconf - Man Page
Command-line tool for programming DMR radios.
Synopsis
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 the 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.
- -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 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.
- --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
All radios running the Open GD77 firmware.
- d868uve, dmr6x2
Anytone AT-D868UVE or Baofeng DMR-6X2.
- d878uv
Anytone AT-D878UV.
- d878uv2
Anytone AT-D878UVII.
- d578uv
Anytone AT-D578UV.
- md390, rt8
TYT MD-390 or Retevis RT8.
- uv390, rt3s
TYT MD-UV390 or Retevis RT3S.
- md2017, rt82
TYT MD-2017 or Retevis RT82.
- gd77
Retevis GD-77.
- rd5r
Baofeng/Radioddity RD-5R.
- dm1701, rt84
Baofeng DM1701 or Retevis RT84.
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.
Author
Hannes Matuschek <dm3mat@darc.de>
Main author