Reverting a radio to factory firmware after OpenGD77
OpenGD77 is a great alternative firmware for the GD-77, DM-1801 and RD-5R, but sometimes you need to go back to stock: to return a radio under warranty, sell it "as new in box", or simply roll back an experiment. The good news — the revert is fully reversible if you made backups before flashing OpenGD77. The bad news — without them, getting the radio back to exactly its factory state is next to impossible. Let's go through the process step by step and flag the danger points.
What exactly has to be reverted
These radios have two independent storage areas, and OpenGD77 writes to both:
- EEPROM — a small chip (64 KB): settings, codeplug, contacts.
- Flash — large memory (1 MB): fonts, images, the DMR ID database, and also the calibration data at address 0x8F000.
- The firmware itself (MCU) — the factory "stock" in .sgl format, replaced by the OpenGD77 binary.
To make the radio stock again, you need to restore the contents of EEPROM and Flash, and then flash the factory firmware on top using the manufacturer's own loader.
Step 0. No backup — stop
A revert to stock is only as possible as you prepared before installing OpenGD77. If you made and saved the dumps when you switched over — let's continue. If not — skip to the "If you have no backup" section.
What should be sitting in a safe folder (or, better, in several places):
- the EEPROM dump (.bin);
- the Flash dump (.bin) — or a separate calibration dump;
- the factory firmware .sgl file for your model from the manufacturer's site.
Step 1. Restore EEPROM and Flash via OpenGD77 CPS
The revert starts inside OpenGD77, not in the factory CPS. The logic is this: first return the memory "contents" to their original state using OpenGD77 tools, and only then swap the firmware itself.
- Connect the radio by cable and open OpenGD77 CPS.
- Menu Extras → OpenGD77 Support.
- Choose Restore (not Backup) and restore the EEPROM first — point it to your EEPROM file.
- Repeat for Flash — point it to the Flash file. Careful: both files are .bin, don't mix them up.
After this, "the firmware is still OpenGD77, but the memory is back to how it was before the experiments". This is a normal intermediate stage.
Step 2. Enter the bootloader
The factory firmware is flashed in bootloader mode — the same one used when installing OpenGD77.
- Turn the radio off and connect the USB cable to the PC.
- Hold down SK1 + SK2 and, while holding them, switch the radio on.
- The screen stays black and only the green LED is lit — you're in the bootloader.
On the RD-5R there are no side SK1/SK2 buttons — their role is played by the two buttons below the PTT: the top one = SK1, the bottom one = SK2. Hold both and switch the radio on.
Step 3. Flash the factory firmware (.sgl)
Now use the manufacturer's own tool, not OpenGD77.
- Download the archive with the factory firmware and the updater from the manufacturer's site (for the GD-77 — Radioddity; for the DM-1801 / RD-5R — Baofeng).
- Unpack it and find the loader program in the bundle (usually Update.exe in the Update Software → English folder).
- Point it to the .sgl firmware file for your model (for example, GD-77_Vx.x.x.sgl, the Ham version) and start the write.
- Wait for it to finish completely without disconnecting the cable or power.
Step 4. Factory CPS and codeplug
After the revert, the radio again understands only the factory codeplug format. OpenGD77 files and stock codeplugs are incompatible — you can't open one in the other's CPS.
- Load the codeplug with the manufacturer's factory CPS.
- If you backed up the stock codeplug before switching — restore it.
- Re-enter your DMR ID and contact database in the factory format.
If you have no backup
Honestly: this is the most painful scenario. Flashing a "bare" factory .sgl is technically possible, but without your EEPROM/Flash dumps you won't get the native data back, and — most importantly — you risk being left without the original calibration if it was overwritten. Options:
- search the OpenGD77 forum for a compatible patched bootloader and instructions for your revision;
- try someone else's calibration dump — but it's a gamble, the parameters are unique to each unit;
- accept that the radio will stay "working, but not perfectly calibrated".
The lesson for the future: backing up EEPROM, Flash and calibration is mandatory before installing any alternative firmware.
Back on stock — and you can still get on the network
Reverting to factory firmware doesn't cut you off from DMRhub. You can join our network from any DMR radio via a hotspot — or by installing OpenGD77 again and loading our ready-made network codeplug from the "Contacts" section. One import, and the groups and operators are already in the radio.
Sources
- OpenGD77 User Guide (Backup/Restore EEPROM, Flash, calibration 0x8F000) — github.com/LibreDMR/OpenGD77_UserGuide
- Revert to stock firmware — discussion on the OpenGD77 forum — opengd77.com (t=4279)
- Entering the bootloader and the factory updater (SK1+SK2, .sgl, Update.exe) — vk3tbs.home.blog — Updating GD-77 Firmware
- Factory firmware and the Radioddity updater — radioddity.com/pages/radioddity-download