Official Radioddity GD-77 firmware version 3.2.2 released

posted in: DMR | 34

I noticed today that a new version of GD-77 firmware was listed on Radioddity’s web site.


The link didn’t work, but I was able to construct what the link should be, because the server returned an XML file which listed all the possible file downloads !


I looked in the “Update diary” document which is part of the download, but its not been updated to show what has changed in this version, so I’ve asked Radioddity to let me know what has changed.


Unfortunately its a 4 day public holiday in China, and I don’t think anyone will be back at work until next Monday.

34 Responses

  1. David

    The 3.2.2 Firmware restored VFO operation and removed the lockout below 450 MHz and 150 MHz imposed by 3.2.1. 3.2.1 corrected a display error in the GD-77B and imposed the requirements to adhere to Part 90 requirements.

  2. ken

    thank you

  3. Justin

    I’ve applied the update. I can’t see anything different in the menus and all settings were retained.

  4. Janusz - SO5AJG

    Hi Roger,
    How can the RSSI signal strength meter graphic change in the 3.2.2 firmware like it was done in the RSSI version v.3.2.1 and published on the website of Jason Reilly –
    I am interested in which bits decide to change this icon, so that in the future you can change yourself if new versions of the firmware appear.
    Best regards,

  5. Hans

    Hi Roger,

    I sent you this info almost a week ago, obviously it did not arrive you. And as well as you I noticed that the “changelog” was not
    updated. There is an official request regarding to this and some other things. Radioddity answered already, but strangewise there they sent an old answer from a former request of me.
    Looks like they have got problems. As I am still in contact with Radioddity, I am awaiting an answer. We will see, which of us will be informed first. You will be informed as soon I got an answer.

    Best regards


  6. Ted

    I currently have your Community CPS ver 3.1.x and the official firmware V3.1.8.

    Do you know yet if Community CPS for firmware 3.1.x is compatible with this Official Radioddity GD-77 firmware version 3.2.2 just released? (I read you haven’t seen the list of updates yet)

    I would like to keep any out-of-band capabilities of the radio — but still gain any improvements over firmware version 3.1.8, if it can work with your Community CPS version 3.2.2.

    What combination of CPS and firmware would you recommend?

  7. Willem-Jan van der Linden

    Hi Roger!

    This is what they tell me by facebook messenger:

    Hello Willem-Jan,

    This is David with Radioddity Customer Service and I will assist in answering your query about the 3.2.2 firmware update

    This is an update to remove the VFO restriction and the requirement to operate only within Commercial spectrum imposed by Firmware 3.2.1.

    There may be other refinements, but the above is what was relayed to me when I received it.


  8. Roger Clark

    I uploaded an existing codeplug to a Radio running 3.2.2 using the Community CPS and it seemed Ok.

    I am not aware of any changes to the official CPS, hence the Community CPS should not need to be chenged.

  9. Roger Clark

    AFIK Radioddity’s offices in China are closed because it’s a public holiday until next Monday.

    Their offices in the USA and Europe are probably still open, but they may also be waiting for China to return to work, before they have any answers.

  10. Ted

    1. I upgraded my radio firmare to V3.1.8 to V3.02.02 successfully.
    2. I am still using your Community CPS V3.1.x.
    3. Radio code plug saves and cofirms the new firmware version is in the radio.
    4. No problems (that I notice) so far.

    Thank you
    Ted, KB7YLU

  11. Nicolò Bosco

    Hi all, anyone can tell me when Radioddity restore “Talk permit” functionality in Digital Mode ? Thank you !

  12. Ted

    Has there been any update to the “GD-77 Update Operation.doc” in Firmware V3.02.02 yet? I downloaded this file again today (May 11, 2019) and it does not list anything more recent than Firmware V3.2.1.

    I am still using the Community CPS 3.1.x with the official Radioditty Firmware V3.02.02 — and I have not detected any problems with this combination of CPS + Firmware, so far.

    I know a lot of GD-77 users are waiting for this information but had to post my question again just in case someone was able to get one or build their own list of fixes by extrapolating between what is newly observed and what was previously published with this latest official firmware release.

  13. Roger Clark

    I emailed Radioddity to ask about this, but I didn’t get a reply.

    Perhaps someone can ask the UK or US distributers, if they know whats new in this version.

    It’s possible that they removed the band limits that were added in 3.2.1, since that version was for FCC compliance for commercial users and AFIK not apply when licensed Amateurs use the radio.

    I am also planning to write some software, which attempts to compare firmware versions.
    However this is more complex than it sounds, because a simple binary file compare, won’t work, because if they make a change to some function located in the bottom of the ROM it pushes all subsequent functions down, making the resultant binary bytes not directly correlate.

    The MD-380 Tools guys, wrote a utility to allow them to find and and re-patch functions, which they had already patched in the previous firmware version, so I hope to be able to modify this tool to work with the GD-77 firmware.
    But it’s going to take several hours to modify and test the utility

  14. Hans

    I emailed them some weeks ago, too. Maybe they got problems with their ticket system, as I got an answer, which was the one, I already got several weeks ago and was related to another issue. It was the same text, so I guess, the ticket system is bad at the moment and new issues do not arrive them. This of course just a theory. I repeated my question, but still got no answer.
    This is weired and it does not look like radioddity, as in the past their back answering appeared very fast and friendly.
    Let’s hope for the best!

  15. Hans

    Took a look at the difference between 3.2.1 and 3.2.2. I do not understand much of the binary, but I was very astonished, that between these two binaries (*.sgl) are so far away from identicalliness.
    The program I used for this (just as I am courious, I compared both original *.sgl with a hextool. The tool I used for this is “hexcompare”, running in linux. It has a nice ncurses gui and can compare two binaries. You can change from ASCII to HEX view.
    Maybe this helps a little bit….

  16. Roger Clark

    Comparing the sgl files will not work, because they are encrypted

    You need to remove the header and decrypt using the tools Kai DG4KLU wrote.

    The tool that removes the header is

    And once the header is removed the remaining data can be decrypted using

    Note, each firmware version uses a different encryption key, which is a 4 digit hexadecimal number.

    Kai has documented what these values are in the Windows bat file in the decrypter directory

    Note. The bat file presumes you already ran

    In the firmware stripper folder, and that you downloaded the sgl files etc

    Once you have the decrypted files, you will see that the beginning is probably the same in all of them, but they will be different elsewhere.

    I use HxD to view and edit binary files, and it has a compare feature.
    However, I didn’t try using the compare feature on the unencrypted firmware binary files, because the comparison it does is byte for byte in the same location in each file. So if just one byte is added, the subsequent part of the file would all be different to HxD

    I don’t know of a program which is able to compare binary files, by finding matching blocks of data even if they are not in the same location.

    There are files which can do this for text. My favorite is WinMerge,
    and it does do basic comparison of binary files, but comparing (for example) 3.1.8 with 3.2.1 shows that 90% of the file was different between these 2 versions, and this will not be correct ad they should about 1% different.

    I tried this commercial file comparer\ but it also found 90% differences between 3.1.8 and 3.1.2

    So I think unless the tool is specifically written to compare ARM CPU binaries that its not likely to find differences or matches very well

  17. Roger Clark

    AFIK. They are at the Dayton Hamfest this week , so I will not be able to ask Jasmine about this until she returns

  18. Hans

    Hmm, this looks rather intricately. I tried another way:
    Flashed with 3.2.1, then read the binary from the GD-77 with the Flashreader from Jason Reilly, saved the file to v3.2.1.bin
    Flashed with 3.2.2, then read the binary from the GD-77 with the Flashreader from Jason Reilly, saved the file to v3.2.2.bin
    Both with address from 0-100000, variables neglected, as they are identical in both binaries.
    After that, I compared the two files with “hexcompare” = no difference, not a single bit!

    I did NOT set the mark for “reading internal flashmemory” (should I have done it?)

    IMO to do so, I do not need to decrypt the sgl-file, as I can just dump, what is in the GD-77. However, of course I am wrong, and doing so, not the whole flash memory can read. If so, then my work was useless.

  19. Roger Clark

    Flash reader is FlashManGsr which I wrote, and maintain.

    The option to read the internal ROM controlled by the checkbox only works if you install special firmware written by Kai DG4KLU.

    The option to read the internal Flash is only used to extract the bootloader or the hardware key values, since Kai’s special firmware overwrites what ever firmware version you previously had installed.

    The only way to read the firmware from inside the GD77 is to solder a hardware debugger to the PCB, then erase the whole chip to clear the read protection, then reinstall the bootloader and reinstall a version of the firmware.

    But it’s easier just to download all of Kai’s repo from github and run 2 windows bat files to extract and decrypt all the firmware versions.

    I intend to write a special program to do binary file comparing of functions using the symbol data which can be exported by Ghidra, but I have not had time to write it.

  20. Anonymous

    There is a update for the baofeng dm 1701 to 3000 channels and 10000 contacts.Will there be the same update for the gd-77?

  21. Roger Clark

    No idea

    Probably unlikely, since there would not be any room in the 1Mb memory to store 3000 channels or 10,000 contacts.

    The GD-77 has a separate system to handle the display of the Callsign, which they call DMR ID, which currently handles just over 10,000 using the official firmware.

    But the official firmware only displays callsigns.

    I modified the official firmware to display around 13,000 callsign + names, but this is not available in the official firmware.

    The Baofeng DM-1701 is a completely different radio to the GD-77.

    Even the Baofeng DM-1801 which looks a lot like the GD-77 has different internal hardware, (though it does seem to share a common parent for its firmware)

  22. David

    The DM-1701 ships with the capacity for 120K Contacts, 10K Digitat Talk Groups and 3K Channels.

  23. Roger Clark

    Sounds like the DM-1701 has more internal storage. Probably a 8M or 16M byte Winbond SPI Flash memory, where as the GD-77 only has 1M byte

    The requirement for thousands of TGs and channels is a byproduct of the Ham Radio use of these radios, not matching the way the CPS or UI is designed.

    Allowing direct entry of TG and TS, would remove the need for loads of TG’s and IMHO having that number of TG’s in the radio is too many to be usable.

    I’ve tried selecting a Contact to make a private call, from the 1000 in my Digital Contacts and it was virtually impossible because the person I wanted to call was about number 300 in the list.

    I guess there could be some way to enter the callsign via the letters on the keypad, but I don’t know of any radio which has that function.

    My modified firmware allows direct entry of TG’s into the GD-77 and I will try to add a way to switch TS e.g. via the star key.

    However, I’m approaching the limit of what can reasonably be changed in the official firmware, so I’ve started to help Kai develop his own exterimental firmware – from scratch, were we can add any features we want.

    Kai’s experimental firmware can currently receive DMR reasonably well, but Tx will be a bigger hurdle to overcome.
    I’m currently running Kai’s firmware on one of my GD-77 to test the receive capability.

    I’ve also just added support to read and write from the memory and I’m starting to work on enhancing the display to handle multiple font and also to build a decent menu system.

  24. Anonymous

    GD-77 UPDATE | FIRMWARE V3.2.4 & SOFTWARE V3.1.9

    Firmware changes:
    1.Increase call permission tone
    2.Grouplist is set to none, if the transmitting contact is a group call contact, the contact will also be automatically recognized and called.
    3.Fix bug(When transmitting on a DMR channel with a contact above 256, the radio will place that call to the wrong contact.)
    4.Fix bug(When entering text from the radio keypad for SMS, channel name, contact name etc. lower case text entry is OK, but upper case letters (capital / big letters) do not match with the keypad buttons. For example, pressing 2 should give A, B or C. But instead it gives D, E or F.)
    5.Fix bug(when analog FM receiving 55.2 Hz end of transmission ‘STE’ tone, GD-77 doesn’t always quietly mute (ie: doesn’t eliminate squelch tail). This seems dependant on the length of time the 55.2Hz tone is present. If the tone is present for 250mS then muting is 100% always noisy. If tone is present for 350mS then muting is quiet about 50% of the time.)

    CPS changes:
    1.Fix bug(When using the radio menu to view scan channels in a scan list, any channels above 256 show as blank or corrupted. )
    2.Fix bug(Activating scan in VFO mode by using menu results in error “Scan InValid”).
    3.Add a confirmation key before Read from the radio /Write into the radio.

    Someone checked if the Community CPS works with FW v3.2.4?

  25. Roger Clark


    I’ll take a look

  26. JOHN

    There are notes in the GD77 FB groups that v3.2.4 has a bug where the radio will not Tx in the amateur bands. Even after doing keyboard commands to “unlock” the radio. Multiple users have this complaint

  27. Roger Clark

    I’ve not had chance to try the new firmware myself, so I can’t comment on that problem.

    However, I remember something similar happening on one of the previous versions, where Radioddity first added the band locking.

    I suspect its may be codeplug specific, ie. some people make have the bug, some may not

  28. Bruce

    I can confirm the bug in 3.1.9 CPS, that in my case it would not allow the radio to transmit at all, anywhere. Kept getting the “Tx Fail Be Disabled” message. After having downgraded and re-upgraded the firmware, the problem remained until I loaded the config file using the Community 311 CPS. Somehow, the 3.1.9 CPS is sending something to the radio that makes it behave as if it has received the kill signal, though sending the activate signal from another GD77 does not clear it.

  29. Roger Clark


    So this bug could be either in the official firmware version 3.2.4 and / or the official CPS.


    Since I’ve got an experimental version of the OpenGD77 firmware working with Tier2, I’m probably not going to be using the official firmware again.

    And even when I do, I’ll be using my modified version of firmware 3.1.8, which has direct TG entry and fixes the need for loads of Rx Group lists

  30. John

    HI Roger

    Is the modified FW v3.1.8 generally available here or elsewhere?


  31. Roger Clark


    1. I had to disable the saving of the currently selected channel in the TG, or whether you are in the VFO, (when the radio is turned off). Because the official firmware does some crazy stuff including saving the channel data using the contents of the display.
    And since I change the display to show the direct entry TG, using # TG NUMBER #, it ended up renaming the channel in the codeplug (arrggghh).

    It does save when you change zones, its just the channel in the zone always defaults to the first channel when you turn the radio on. So change your codeplug so the channel you use most is the first one in the zone.
    2. The direct TG entry does work on the VFO but it doesn’t display unless you change the frequency, e.g. press the Up then press the down arrow
    3. Direct TG only partially works in double wait.

    The patched firmware, automatically checks the Tx TG when there is an incoming call, so you can use Rx Group of “None” and it will still work.

    The patched firmware also supports the extended length DMR ID (see the community CPS), to allow up to 16 characters instead of 8 for the callsign + name, and I managed to allocate twice as much memory for the DMR ID , so it can hold more callsigns

  32. Sergo Lenz 4L3NZ


    After several manipulation I’ve “made it alive”.

    Factory reset (SK1+1 then turn on and confirm)

    Then write FW v3.2.1 and use SW 3.1.1

    Now it works, but I had unlocked band 130-520mhz (continuously) and now it tells error freq.

    Can You help me to bring it back?

  33. Silvestro Ventriglia

    Salve vorrei sapere se il tier 2 per hotspot GD 77 è uscito grazie

Leave a Reply