DMR OpenGD77 by 4rcheniX

About OpenGD77

OpenGD77 is an alternative firmware designed to replace the factory software on several popular DMR (Digital Mobile Radio) handheld transceivers. It is a non-commercial firmware for amateur radio use that enhances functionality, including improved DMR reception and expanded radio capabilities.

While the project was initially fully open-source, recent builds have been removed from public GitHub repositories, and the official forums have been converted into static archives. As a result, many original resources and links are now broken or no longer available. Several community initiatives have attempted to preserve and mirror these materials independently of the original project. However, finding a comprehensive, up-to-date installation guide with working direct links is not as simple as it might appear.

What is the purpose of this document and why was it created?


This short guide is intended to make life easier for anyone who is struggling to install the OpenGD77 firmware on the TYT UV390 and other supported DMR radios.

Finding the correct OpenGD77 installation instructions can be confusing. Depending on your Google search query and your browser’s cached data, the official documentation may not appear clearly or in the expected order, making it difficult to know where to begin.

In addition, the main instruction forum is presented as an archived static version, which may raise questions about the relevance and accuracy of the information.

Furthermore, some of the original links point to older stable resources from 2024, while newer firmware versions are available through mirrored official repositories that are no longer directly accessible. Locating the most up-to-date information is not always straightforward.

Finally, the overall user experience may vary depending on your system configuration. This can lead to various issues that — although often simple to resolve — are not obvious until encountered. Many of these problems fall outside the official OpenGD77 installation scope and therefore are not covered in the original documentation.

Before you start

First, review the flashing plan and requirements. Detailed procedures for each flashing stage are covered in the sections below.

Prerequisites

  1. Verify that your radio model is supported
  2. Obtain the programming cable and install the required COM port driver
  3. Download all required files for your radio model
  4. Install both - the manufacturer’s and OpenGD77 CPS software
  5. EEPROM Backup - save teh factory configuration

OpenGD77 Installation

  1. Connect the radio to your computer in programming mode and launch OpenGD77 CPS
  2. Select the radio type
  3. Select the donor file and opengd firmware
  4. Backup Flash and MCU ROM
  5. Apply the Codeplug
  6. Satelite Configuration
  7. Boot Image, Melody and Color Theme

Preparation Stage

Is my DMR radio supported by OpenGD77?

Please note the hardware versions matter. Some models are only supported on specific hardware revisions — newer versions may not be compatible. For more information about specific model review the opengd77.com forum archive** Not all the radios have full CPS support and the programming procedure can vary. This document is designated for the installation process of TYT MD-UV390 Plus 10W GPS, while the procedure will be the same** for other MD-UV390* models, as well as MD-UV380*.

Supported radios:
  • Radioddity GD-77 (TYT MD-760)
  • Radioddity GD-77S
  • Baofeng DM-1801 (Baofeng DM-860) - Hardware v.1 only!
  • Baofeng DM-1801A - Hardware v.1 only!
  • Baofeng RD-5R (Baofeng DM-5R Tier 2)
  • TYT MD-9600 | Retevis RT-90
  • TYT MD-UV380 |TYT MD-UV390 | Retevis RT-3S | Baofeng DM-1701 | Retevis RT-84
  • Friendly heads-up: Flashing custom firmware to your radio is done at your own risk. The author of this article cannot be held responsible for any unexpected behavior, malfunctions, damage, or data loss that may occur. That said, the process is fully reversible. Even if the wrong firmware version is selected, the radio can be restored to its original state — provided that proper backups were created beforehand.

    Note: All original links included in this article were valid at the time of writing. However, they may change over time, as the OpenGD77 project is currently on hold. All essential information is preserved within this document, and required downloads are mirrored on separate cloud storage, including checksum files for verification. Original source links are provided for reference.

    The author of this article does not own, develop, or claim any rights to the software referenced or linked. All software remains the property of its respective authors and copyright holders.

    COM port drivers and port discovery

    First things first: you need a dedicated programming cable for your TYT radio. For example, a Baofeng cable will not work with TYT devices. While connecting the radio to a computer may seem not to be a rocket science, it’s strongly recommended to read this section carefully, as TYT USB port behavior and driver support can be tricky. To program a TYT radio using the OpenGD77 CPS, the device must first be connected and detected as an STM Device in DFU Mode. After that, it should appear as the OpenGD77 COM port (the exact port name may vary depending on your operating system).

    1. Connect the programming cable and plug it into a USB port on your computer
    2. Then turn on the radio while holding the top function button and the PTT button. The radio display will remain black, but the top LED will blink — this indicates that the radio is operating in DFU (Device Firmware Update) mode
    3. Next, open Device Manager and verify that the USB device is recognized and installed correctly

    In the View menu, enable Show hidden devices
    If the radio appears as a USB device in DFU mode, verify that the correct driver version is installed — v3.0.6 is recommended. Older driver versions may detect the device in DFU mode but fail to establish a proper connection to the radio unless Core Isolation and Memory Integrity are disabled.
    Be aware that some newer driver versions may also be incompatible with OpenGD77 CPS. For best compatibility and stability, it is strongly recommended to use driver version 3.0.6 whenever possible.

    When the radio is connected to the computer for the first time, the Windows operating system may fail to recognize it correctly and will most likely be unable to install the device automatically. This happens because the radio requires legacy DFU drivers. In this case, the device will appear as Digital Radio (Unknown Device) under the Other devices section in Device Manager. An exclamation mark icon indicates that the device has not been installed correctly and that the DFU driver must be installed manually.

    Download the DFU drivers v3.0.6 for your operating system and install them. Drivers specifically for Windows 11 are not available. However, it is still possible to install the Windows 10 drivers and CPS successfully.

    Note: For GD-77 | GD-77S | DM-1801 | DM-1801A and RD-5R no driver is required. For all other radios the STM DFUSe driver is required.

    You can inspect the driver installation with Event Viewr in addition.

    Once the driver is installed you also should see the COM port created. Verify if you can see the com port atached.


    Note: When the radio is detected by the system as an STM Device in DFU mode, the COM port will not be active (grayed out). To enable the COM port, reconnect the radio in USB CDC mode (standard USB connection with the radio powered on normally, not in programming/DFU mode). In this mode, the device will be recognized as a virtual COM port and become available for use. If you do not see the Ports section at all, make sure the Show hidden devices option is enabled in Device Manager. If the Ports section still does not appear, you may need to install additional drivers. To do so, follow these steps in Device Manager:

    1. Click the 'Action' menu
    2. Select 'Add legacy hardware'
    3. In the Wizzard select 'Install the hardware I manually select from a list'
    4. Select 'Ports (COM & LPT)'
    5. Select 'Communication Port' in the Model window
    6. Install the driver

    Software Download

    Download all required files, save them locally, and extract them to a designated folder. Please note that all required files have been archived and stored in the Google Drive archive to preserve access in case the original sources become unavailable. While these archived copies are provided for convenience, it is strongly recommended to download the latest available version from the original source whenever possible. However, the choice of download source, is entirely up to you. For each archived resource, a checksum.md file is included. This file contains the MD5 checksum hash, allowing you to verify that the downloaded file has not been altered or corrupted. The checksum.md file also includes a link to the original source.

    Software Download Source
    The Device Firmware Update driver (DFU) Source: GDrive Archive (DFUse Driver)
    Source: opengd77.com Archive
    Source: driverscape.com Archive
    Customer Programming Software (CPS) Source: GDrive Archive (TYT CPS)
    Source: buytwowayradios.com
    OpenGD77 Customer Programming Software (CPS) Source: GDrive Archive (OpenGD77 CPS)
    Source: Proton Drive Mirror
    Source: opengd77.com Archive
    Download the TYT MD-390 Donor FW Source: GDrive Archive (Donor FW)
    Source: Passion-Radio
    Download the OpenGD77 Firmware for TYT MD-390 Source: My GDrive Archive (Latest Beta 2025)
    Source: Proton Drive Mirror (Latest Beta 2025)
    Source: opengd77.com Archive (Old Release 2024)


    Install CPS Software

    While the TYT CPS installation is straightforward and most likely requires no additional explanation, you may encounter issues when installing the OpenGD77 CPS. If so, please check the following: If you skipped the previous sections, first refer to the COM port drivers and port discovery section above.
    Troubleshooting checklist:

    1. Make sure your radio is properly installed and correctly detected by the system.
    2. Try to re-install the Dfuse port driver v3.0.6.

    Once the correct driver version is installed, everything should work properly. If, for any reason, you are required to use a different driver version, additional system configuration changes may be necessary. However, keep in mind that some driver versions may not be supported by OpenGD77 CPS.

    In such cases, try applying the following system settings:

    1. In Windows Security, disable Core Isolation and Memory Integrity.
    2. Try running the OpenGD77CPSInstaller in backward compatibility mode.



    Initial Backup

    Before flashing the firmware on your radio, it is strongly recommended to create a backup of the factory TYT Calibration Data. If you ever need to restore the radio to its original factory state and get back to the TYT firmware, these backup files will be required. For this initial backup process, you will need the TYT CPS software.

    Backup procedure:

    1. Connect the radio to your computer with the programming cable.
    2. Make sure your radio is properly installed and correctly detected by the system.
    3. Launch the TYT CPS
    4. Read the data from your radio first to make sure the device connection can be successfully established on the port.
    5. Hold down the Ctrl+T and the Test mode window with the calibration data should pop up
    6. Click Save Test Data to save the calibration data backup.

    Installation Stage

    Connect the radio to your computer in programming mode and launch OpenGD77 CPS

    1. Connect the programming cable and plug it into a USB port on your computer.
    2. Then turn on the radio while holding the top function button and the PTT button. Display will remain black, but the top LED will blink.
    3. Inspect the Device Manager if radio has been discovered as STM Device in DFU Mode.
    4. Launch the OpenGD77 CPS

    Select the radio type

    Select the Radio type: MD-9600/RT-90,MD-UV380/RT-3S,DM-1701/RT-84,MD-2017/RT-82 **

    ** Please note there is no MD-UV390 model listed, however picking the mode for MD-UV380 is also proper configuration for TYT MD-UV390.

    Select the donor file and opengd firmware

    Donor file
    The MD9600-CSV(2571V5)-V26.45.bin donor file should be used for all models. Select the non-GPS version as the donor file is required only for the DMR codec. All other functionality is provided by the OpenGD77 firmware image, which already includes GPS support where applicable. In OpenGD77, the flash memory originally allocated for the factory voice recording feature is repurposed to store the DMR user contact database.
    Important: The TYT MD-390 Plus GPS specifically requires a Version 5 (V5) donor file.


    OpenGD Firmware
    Pick the correct Firmware version for your model the hardware version may vary between particular models. The 10W TYT UV390 (or UV380) requires specific, updated firmware to manage the higher power mapping. Recent OpenGD77 firmware includes an option to select between 5W and 10W. The latest OpenGD77 firmware for the TYT MD-UV380/RT3S also supports the UV390 Plus (10W) radios. The 10W units use specialized firmware (OpenMDUV380_10_PLUS), newer versions of OpenGD77 now should handle the 10W mapping through standard firmware too. If your 10W radio has issues (e.g., screen artifacts, no TX/RX), it may be a different hardware revision, if this is the case flash different firmware version.



    🔔 Reminder: Always back up your flash and calibration data (radio settings) using the CPS 'Save' function before flashing.
    ⚠️ Warning: The donor file must always be selected first. Once the OpenGD77 firmware is selected, the firmware update process will start automatically.
    ℹ️ Note: In the Firmware Loader file selection dialog, make sure to choose the correct file type '.bin' in order to see and select the firmware file.


    Load the Firmware:
    1. Click the 'Extras' menu
    2. Select 'Firmware Loader'
    3. Choose the radio type: 'MD-UV380/RT-3S'
    4. Select the donor file first: 'MD9600-CSV(2571V5)-V26.45.bin'
    5. Then select the OpenGD77 firmware: 'OpenMDUV380_10W_PLUS.bin'
    6. Wait until the firmware update process is complete

    Backup and Restore Flash, MCU ROM and EEPROM

    Backing up your radio’s flash memory and MCU ROM is an important step after updating the OpenGD77 firmware and before writing the OpenGD77 Codeplug . Creating these backups ensures you can safely return to the original factory firmware at any time, if needed. The official firmware will not run properly unless the Flash memory is restored first before reverting to the factory firmware.
    Please note that the Flash restore process may take several minutes, as approximately 16 MB of data must be read from the radio.


    In the OpenGD77 CPS software:
    1. Navigate to 'Extras' then 'OpenGD77 support' menu
    2. Click each of the following buttons and save the backup files to a secure location
    3. Backup Flash: Copy of the radio's flash memory
    4. Backup MCU ROM: Captures the internal processor memory

    In the TYT CPS software:
    1. Backup EEPROM: If you have not already saved the radio’s factory calibration data, please do so as described in the section above




    Restore to Factory Firmware

    Follow these steps if you want to remove OpenGD77 and return your radio to its original factory firmware.
    Before doing anything, make sure you have a Flash backup from OpenGD77. This ensures your original codeplug and settings can be restored. If you already flashed OpenGD77 and did not make a backup, you may find generic flash files on the OpenGD77 archive. However, these will not contain your radio's specific calibration data, which may lead to performance issues.

    Backup Files Download Source
    The Generic Backup Files Source: GDrive Archive (Backup)
    Source: opengd77.com Archive


    Restore Flash Backup

    1. Open OpenGD77 CPS
    2. Navigate to Extras then OpenGD77 support menu
    3. Use the Restore Flash option to reload your original backup to recover your original codeplug and basic settings


    Reinstall Official Firmware

    1. Open the TYT CPS
    2. Load and flash the official firmware for your radio
    3. Adjust 'settings.ini' if needed


    If restoring the Flash does not work, the radio may now require a password before uploading your original codeplug.

    1. Open the settings.ini file in the official CPS
    2. Locate the line: password=0
    3. Change it to: password=password
    4. Save the file and restart the CPS
    5. Upload Original Codeplug
    6. With the settings.ini adjusted, upload your original codeplug to the radio


    Your radio should now be fully restored to factory settings.

    Apply the Codeplug

    I will keep this section brief, as creating and fully configuring a codeplug is a broader topic that deserves its own dedicated article.
    Note: To be able to write Codeplug, the device must be connected to the computer in USB CDC mode (standard USB connection with the radio powered on normally, not in programming/DFU mode).

    If you are just getting started with DMR — as I recently did — you may use a codeplug borrowed from a friend and simply update your Callsign and DMR ID before writing it to the radio. This can be a quick and easy way to get on the air. You can always customize and refine the codeplug later. The Repeater list and its configuration may be also exported from radioid.net.

    Before proceeding, make sure you have registered for a DMR ID. If you have not done so yet, visit: 👉 radioid.net
    Follow the registration process (you will need your amateur radio license).

    In OpenGD77 CPS

    1. Click 'Read' then 'Read from Radio' (This gives you a starting template based on your radio)
    2. Go to General Settings DMR and set your 'DMR ID and callsign' (you can discover the id with 'Lookup id for Callsign')
    3. Next, configure the 'Band limits'


    Note: The remaining part of the Codeplug section is provided only as a general overview. A detailed codeplug tutorial will be published as a separate document and linked soon.


    Add DMR Contacts

    It allows you to add the Talk Groups and Private Call entries

    Example (Worldwide TG):
    Name: TG91 Worldwide
    Call Type: Group Call
    ID: 91
    Create a Digital Channel

    Channels → Add

    Channel Name: DMR TG91
    RX Frequency: (your repeater frequency)
    TX Frequency: (your repeater offset)
    Color Code: (usually 1 — check repeater info)
    Time Slot: (1 or 2 — repeater dependent)
    Contact: Select TG91 Worldwide
    Admit Criteria: Color Code
    Power: High (or your preference)
    Add an Analog Channel (Optional)

    Channels → Add

    Channel Name: Local FM
    Mode: Analog
    RX Frequency: (e.g., 145.500)
    TX Frequency: same or repeater offset
    CTCSS/DCS: if required
    Power: as needed
    Add Zone

    Zone Name: Basic
    Add channels to the right-hand list:
    DMR TG91
    Local FM
    Optionaly Add RX Group (Recommended for DMR)

    RX Groups
    Create new group:
    Name: TG91 Group
    Add TG91 Worldwide
    Then assign this RX Group to your DMR channel.
    Upload the codeplug to your radio

    1. Save the Codeplug
    2. Click 'Write' then 'Write to Radio'
    3. Wait for completion, the radio will reboot

    Install Satellite Configuration

    The satellite configuration is just a single click in the “OpenGD77 Support” menu. The payload link is already given. There isn’t much more to add in this section, but if you want to explore the data that is actually written to your radio, visit the Celestrak GP Data Formatspage.

    1. Navigate to 'Extras' then 'OpenGD77 support' menu
    2. Click 'Install Satellite Keps'

    Boot Image, Melody and Color Theme

    Set a Custom Boot Image in OpenGD77 CPS

    1. In the OpenGD77 CPS open the Boot screen module and set 'Display mode' to 'Picture'
    2. Use any image editor (Paint, GIMP, Photoshop) to create image
    3. Set the canvas size to 128 × 64 pixels
    4. Design a simple logo or text — avoid tiny details
    5. Save the image as .png
    6. In 'OpenGD77 Support' Fun things section click 'Select boot image'
    7. Write Codeplug to your radio

    Note: The CPS automatically converts the PNG to the correct monochrome bitmap format.
    Even if your image is colored, the radio will display it in monochrome.
    Setting a transparent background will cause the logo colors to appear reversed on your radio.




    Boot Melody
    1. You can use chatGPT to create the custom boot melody
    2. In 'OpenGD77 Support' Fun things section type the desired tone sequence
    3. Click 'Play tune' to test the melody
    4. Write Codeplug to your radio



    Color Theme
    1. Navigate to 'Extras' then 'Theme editor' menu
    2. Compose the color theme for your radio interface and 'Save theme file'
    3. The saved theme may be loaded any time by clicking 'Open theme file'
    4. Write Codeplug to your radio


    Note: A single theme file contains two separate variants: 'Day Theme' and 'Night Theme'.
    You can select your preferred variant in the radio settings.