Codeplug editor for the MD380/MD390/MD40 DMR Radios
This program is similar in purpose to the MD380 CPS program provided by TYT Electronics
Technology Co., LTD. It provides several features that CPS lacks,
while not implementing all features of CPS.
editcp because I wanted to be able to edit codeplugs in Linux.
This codeplug editor works for the Tytera MD380 and MD390 as well as the Alinco DJ-MD40 radios. Support for additional radio models is likely, but is not scheduled at this time.
Editcppermits the editing of General Settings, Channels, Contacts, Zones, Group Lists, and Scan Lists.
- It supports reordering list items via drag-and-drop.
- Multiple codeplugs may be opened simultaneously and items may be copied from one code plug to another via drag-and-drop.
Editcpprovides unlimited undo/redo.
Editcpperforms extensive input validation and codeplug entry validation.
- Codeplug information may be exported to and imported from human readable text files.
Editcpcan edit .rdt files as well as the .bin files produced by md380tools.
Building from Source
Editcp development has been done on Linux (specifically Ubuntu 17.04),
so that is the recommended platform for building from source.
Install git. On Debian, Ubuntu, and other Debian-derived systems that may be done by:
$ sudo apt-get install git
Editcpuses the QT GUI library. You'll need to install the Qt binding for Go. I recommend you follow the instructions in the Minimal Installation paragraph on this page: https://github.com/therecipe/qt/wiki/Installation.
Get the source code:
$ go get github.com/dalefarnsworth/codeplug/... $ go get github.com/google/gousb $ go get github.com/tealeg/xlsx
- Change to the
$ cd $GOPATH/src/github.com/dalefarnsworth/codeplug/editcp
Editcpuses the libusb-1.0-0-dev package. You'll need to install it. If you're using the qt Minimal Installation, you'll need to install libusb-1.0-0-dev in the docker images it uses. This can be done by running
$ docker tag therecipe/qt:windows_32_static therecipe/qt:windows_32_static-orig $ docker tag therecipe/qt:linux therecipe/qt:linux-orig $ make docker-usb
$ make install
You will be prompted for a directory name where a symbolic link to
editcp executable will be placed. If you don't have write permissions
for that directory, you will need to run this command as root.
- You man now run
editcp, optionally passing the name of a codeplug file.
$ editcp file.rdt
Installing Pre-built Executables
Instructions for downloading pre-built executables for Windows and Linux are available at https://www.farnsworth.org/dale/codeplug/editcp.
Editcp has only been used by a small number of people at present. While
no problems have been observed in radios after loading codeplugs edited by
editcp, I can't guarantee that such will never occur. Use
your own risk.
editcp are welcome. If you've fixed a bug or implemented
a cool new feature that you would like to share, please feel free to open
a pull request here.
IRC: freenode channel: #md380, user: dfarnsworth