Radioddity GD-77 firmware 3.1.2 Beta ?

posted in: Ham radio | 88

Just when I thought the new Radioddity beta process with the latest round of GD-77 firmware had come to the end, I started to get reports that another update had been sent to Beta testers (version 3.1.2) and had also been published to various facebook groups.

 

I got hold of a copy of the zip file, and it only contains a firmware update and not not the installer for the CPS.

No one seems to know what the differences are between the last officially released version (3.1.1 – released yesterday) and this new version.

The zip file does not contain my change log or “update diary”.

 

So if anyone has any information about whats changed in this new version, I think we’d all be keen to know.

 

IMHO the only reason you’d normally release a fix the very next day, would be to correct a very serious bug, but AFIK no one spotted anything particularly bad in 3.1.1 (apart from the things we already know about, e.g. the defective Factory Reset data)

 

Update 31st March 2018

 

It looks like version 3.1.2 has been released to fix the bug in 3.0.6 and 3.1.1 where the Factory Reset parameters were invalid and effectively set the PA power to around 10mW (or possibly less).

Unfortunately, from what I’ve heard this version has an even worse problem with the factory settings, so I would advise anyone not to use it.

Several people have reported that after running version 3.1.2 for a while that the power gets set to a very low value, and the normal work-around of downgrading to firmware 2.6.6 does not fix the problem. Even if a new codeplug is created for version 2.6.6

 

Its unclear precisely what is happening, and I will be in touch with Wilhelm, who posted about this problem, and he will hopefully be able to send me some data from his GD-77 which I can compare with my GD-77 to determine the cause of the problem.

88 Responses

  1. Anonymous
    |

    Good morning friends.
    Where could I find a clean bin.
    I read my gd77 and couldnt find correct strings..
    Nor at 8f000 neither at 50100
    So it would be nice if I had a bin file from a working radio..

  2. sefis
    |

    Hi friends
    Where could I find a bin from a working radiio ?
    Couldnt find the sq4242 in my bin nowhere.
    So it would be nice if I had a bin from a working radio and write it to mine

  3. Mike, DL2MF
    |

    Hi Sergey,

    I’ve backups of flashdata from 8 different GD-77 with FW from 2.6.3 up to 3.1.2 – all radios are still working.
    The calibration data (starting A0 0F C0 12) is located at 0x50100 and 0x8F000 in all this .bin-files.

  4. Roger Clark
    |

    If all you are getting is zeros than the radio has not been booted in the right mode

  5. Roger Clark
    |

    If you only get zeros when you read from the flash the radio not booted into the correct mode

  6. Sergey Ka
    |

    Thanks Mike,
    this means that in my case in the file from the damaged radio, the calibrating data is at the wrong address.

  7. tomas perez
    |

    you can send me flashed version 3.1 file
    my email is xe3gap@hotmail.com

  8. Roger Clark
    |

    I do not host that file, but perhaps someone can post a link to it, so you can download

  9. Roger Clark
    |

    Actually

    I will make a new repo on github and upload all the firmware I have

  10. Roger Clark
    |

    All the firmware I have is now in github

    https://github.com/rogerclarkmelbourne/Radioddity_GD-77/tree/master/firmware

    I think there were some other versions, but I do not have them

  11. Jules Madey K2KGJ
    |

    Using V3.0.6 Community CPS. Everything seems to work, except neglected to set private call on a parrot contact and can’t see how to edit it without deleting the contact and then adding a new one, which will now be out of sequence. Any thoughts would be appreciated.
    Oh, and on the display, the frequency and channel number in the zone of the contact is displayed but not the contact name ???
    Thanks,
    J.M. K2KGJ

  12. Roger Clark
    |

    Interesting

    I just looked at this myself and I can see the type is set when the contact is created and can’t be edited afterwards.

    I’ll see if I can modify the CPS to allow the type to be changed, as I cant think of a reason why this should not be allowed.

    I checked both the RX Group list and the Channel screens, to see if it only allowed one type of contact, and the RX Group list only allows Group and Private calls to be added, so perhaps the reason Radioddity disabled changing this, is in case someone change something to All Call

    Its probably worth the risk of allowing this regardless of whether All Calls are not permitted in RX Group lists

  13. Roger Clark
    |

    Try the updated “development” version.

    I changed some things to enable Call Type modification

  14. Jules Madey K2KGJ
    |

    Ok, will do. After the post, I tried another approach, which worked but might be a lucky coincidence. Right clicking on the contact, then deleting, then right clicking ‘Digital Contact’ and ‘add …private call’ replaced the original contact in the same position with a blank contact, which I then named and provided an ID for.
    Then, I checked the channels that were linked to that contact, which after the deletion, now had ‘none’ in the contact slot and added the name back in. Everything worked.

    A direct edit would be very useful but this 3.0.6 is a very significant improvement over the early version I was using!!
    Thanks …
    JM

  15. gbverhoeven
    |

    Where can I find the development version?

  16. sb56637
    |

    Hi everyone, I just wanted send out a quick shout of sincere thanks to Jason Reilly for the GD-77 Tuning & Alignment Project tools and instructions.

    I received 2 new GD-77 units in the mail after a long wait for shipping, and after upgrading the firmware on one of them I was really disappointed to find that it got corrupted and no longer transmitted or received. (FWIW the radio originally came with the 2.6.6 firmware, and I followed Radioddity’s instructions very carefully.)

    I tried everything, downgrading to many different older versions, but nothing. I was pretty sure it was bricked. So as a last ditch effort I went through Jason’s excellent instructions step by step. I almost didn’t get it right because I didn’t carefully read the length of the hex length for the memory read (100000 with five zeros, as he says).
    But all’s well that ends well. The radio works perfectly again now. I can’t believe it. Thanks Jason! Without this fix I would have had to go through the extremely slow and expensive process of getting a replacement unit shipped and cleared through customs.

    So I’m back on the original 2.6.6 firmware.
    I’d really like to have the VFO mode that’s available in 3.1.1, but I’m kind of afraid to touch it now that it’s working.
    Is it likely to get messed up again if I try to upgrade to 3.1.1, or is it good now that I have the manual memory fix applied?
    And should I upgrade directly from 2.6.6 to 3.1.1, or should I do any intermediate upgrades first?

    Thanks again!

  17. Roger Clark
    |

    I’ve discussed this with Jason, and we think the reason that Radioddity say its best to upgrade straight from 2.6.6 to 3.1.1 is because each intervening firmware version seems to store the backup values for the calibration data in different locations, so there is a higher probability of our calibration data getting messed up if the Flash memory in you GD-77 has multiple copies of the calibration and various other bits of data scattered throughout the Flash memory because of the different firmware versions you’ve already had installed.

    I’m not sure if Jason has updated his web page about this recently, but in firmware 3.1.x the primary address of the calibration data is 0x8f000, however I found there is a backup copy at address 0x50100, and the reason that the radio goes wrong, is that during the Factory Init process it copies the data from 0x50100 to 0x8f000.

    So if the data in address 0x50100 is wrong, the radio then fails to work.

    Jason said that he also found remnants of calibration data in other locations in one of his GD-77 radios, however he has installed multiple older versions of firmware, on his radio, hence why this would be the case.

    I’d recommend, you backup all your flash memory and save the file.
    Then copy the calibration block at 0x8f000 to 0x50100 (you will need to use an external editor to do this e.g. HxD), then upload the block from 0x50000 to 0x60000 back to the radio.
    NOTE. The GD-77 only handles 64k page writes, hence you have to backup a whole 64k page (0x10000) , or the whole of the flash, and modify those 200 or so bytes, and then write back that 64k block.

    Then update to 3.1.1 or even 3.1.2 (all versions of firmware are in an archive I put on github (see my other post)

    The main thing is to backup in the first place, so you can restore the values if necessary.

  18. Jules Madey K2KGJ
    |

    Progress … with firmware 3.1.1 and CPS Community 3.0.6, If I exceed 32 channels, operation is erratic with the p2p limit error on a couple of channels. At 32 channels max, operation is normal. Had to drop back to 2.6.6 and then up to 3.1.1 a couple of times to clear problems but so far so good. The 32 chan limit is probably known but I found out the hard way.
    Will try the latest CPS next ..
    Many thanks for the great support.
    JM

  19. Roger Clark
    |

    Using Firmware 3.1.1 with the Community CPS 3.0.6 (aka 2.0.5) would cause problems, associated with the data structures for Rx Group lists.

    You always need to use the CPS version that matches the firmware version, because the CPS makes the raw/binary version of the codeplug data that the firmware requires

  20. sb56637
    |

    Thanks very much for the explanation Roger.

    Does the Factory Init process run during every firmware upgrade? Or only when manually using the factory reset key sequence during power-on?

    > Then copy the calibration block at 0x8f000 to 0x50100
    The same 224 byte block size that is on Jason’s page?
    > upload the block from 0x50000 to 0x60000 back to the radio
    So in the flash manager it would be a start address of 50000 and a length of 10000?

    > NOTE. The GD-77 only handles 64k page writes, hence you have to backup a whole 64k page (0x10000) , or the whole of the flash, and modify those 200 or so bytes, and then write back that 64k block.
    Ah! Good to know. So I can’t just backup the whole memory file and then re-flash it if I mess up. 🙂 When you say it “only handles 64k page writes” you mean no more and no less than 64k?

    I was also going to thank you for your Github repo with all the firmware versions, that’s extremely helpful. I can use the same Update.exe for any of those versions, right? And does that 3.1.2 bug you mention where the transmit power eventually gets reduced only happen due to these memory copy corruption issues, or is it something more complicated relating to that firmware itself?

    Thanks again for the advice.

  21. Roger Clark
    |

    >So in the flash manager it would be a start address of 50000 and a length of 10000?

    Yes.
    Set the start address to 50000 instead of 80000 and use the same data length

    Re: 64k transfers

    Jason tells me that 64k is the minimum

    It works as long as its a multiple of 64k (0x10000)

    Note. If you have to a restore of the whole flash, you can only write it back wit the start address of 10000 , if you try writing the page at 00000 it will fail.

    This seems to be a bug / feature of the firmware, as the lower 64k seems to be read from the EEPROM, but cant be written back to the EEPROM
    However the EEPROM only holds codeplug data, so its not a problem that the firmware does not allow it to be written.
    (as you can write the codeplug in the normal way)

    Re: Firmware updater
    They always use the same exe, no matter what the firmware version is.

    Not Sure what you mean about transmit power issues.

    They still seem to happen in 3.1.2, and always seem to be related to issues with the calibration data

  22. Anonymous
    |

    Re matching firmware and CPS, I did try the community 3.1.x CPS with the 3.1.1and still had the same problem with the total number of channels exceeding 32. I am not using Rx groups.

  23. sb56637
    |

    Thanks for the reply Roger.

    OK, so I confirmed that the the calibration blocks at 0x8f000 and 0x50100 were the same (probably because of my original fix I described earlier), and then upgraded directly from 2.6.6 to 3.1.2. It’s tentatively looking pretty good. No RX or TX problems after two codeplug writes. Hopefully the low power problem won’t appear later on.

    A few general questions and issues:

    1. In VFO scan mode when it pauses on a frequency with activity, how do you make it stay there? If I press any button to cancel the scan, it reverts back to the start frequency, and even after pushing the PTT button it still keeps on scanning.

    2. I really like how in dual wait mode when it receives a call on the non-selected side it temporarily selects that side to allow for responding without having to manually switch to it within about 4 seconds after receiving the call. Is there any way to increase the wait time?

    3. Is there any way to have more fine-grained control of the analogue squelch. I believe Roger wrote that even the “Normal” threshold is still too high.

    Thanks a lot.

  24. Roger Clark
    |

    I cant help on the questions about the general operation of the GD-77 as I don’t use scanning or dual-wait mode

    Re: Squelch

    The firmware only allows 2 settings.

    It is possible to change the the squelch thresholds for those 2 settings, by changing the calibration data, as documented by Jason, but that’s all that is possible at without jail-breaking the firmware

    Jason and I and several other people are actively investigating how to jail-break the firmware. However the GD-77 seems to use commercial grade encryption, possibly AES etc, so its going to take a lot of time and expense and effort for everyone involved.

    I think people underestimate the amount of time that Jason and the rest of the community put into just getting as far with the GD77 as we are now.
    Its thousands of hours of error already

  25. Roger Clark
    |

    Probably some corruption in the codeplug, there were bugs in previous versions of CPS and firmware which cause minor corruption in the codeplug, which end up causing strange results

    You’ll probably need to start a new codeplug again from scratch.

  26. Rommel
    |

    Need this firmware my 3.1.1 fsked my radio both analog and digital not tx tried the hex editing but cant find the area where to edit so radio is useless right now on rx and tx or try send me your hex edited file take my change to load it in my radio could careless now since radio is not working.

  27. Roger Clark
    |

    I’d recommend you read the other posts and comments about editing the calibration data.

    You need to refer to the work done by Jason VK7ZJA as this is his area of expertise not mine

  28. Rommel
    |

    Follow Jason but cant find the exact way to edit it i dont see SQ4242 etc even load 3.1.2 and tried 2.5.6 from your githhub didnt work pretty much my radio is useless unless someone has file that i can used to load it on mine could careless if it brick its not working anyway.

  29. Roger Clark
    |

    Calibration data is always at 0x8f000 and backed-up at 0x50100 in firmware 3.1.2

    By calibration data at 0x8f000 looks like this

    A0 0F C0 12 A0 0F C0 12 E1 03 E2 60 CA 61 C7 61 C6 60 C8 5F C7 5F CA 62 BE 64 BE 64 BF 63 BD 64 B5 64 B8 60 AF 5E B6 5D B5 58 C4 3D 3B 3A 38 37 36 35 A9 1D 0D 0D 11 11 0B 0B 0F 00 00 00 00 18 16 14 13 16 14 15 12 3E 3C 3E 3A 53 51 34 32 34 32 53 51 1C 20 3D 3C 3A 39 38 36 35 34 1D 0F 0E 11 11 0B 0B 0F 0E 31 05 27 00 27 00 0F 0E 00 00 50 05 CC 06 50 05 CC 06 E5 03 E6 54 AB 51 AC 4E A3 4C 9C 4B 9A 4B A4 4F A9 57 EF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 40 F0 40 F0 40 F0 FF FF 0F 0F 0F 1B 1B 1B FF FF 00 00 00 00 1D 1D 1D 1C 1C 1C 1B 1B 3E 3C 3D 3A 53 51 34 32 34 32 53 51 20 27 B7 B1 AB A6 9F 9A 95 90 1D 10 0E 11 11 0B 0B 08 0E 31 05 27 00 27 00 0F 0F 00 00

    It should also be the same at 0x50100

    Every radio should have slightly different calibration data,but since your radio seems to be bricked, you may as well try my calibration data, (AFTER FIRST BACKING UP WHAT YOU CURRENTLY HAVE)

    Backup all your flash memory, save it to a file

    Use HxD to change the area st 0x05100 and 0x8f000 and try pasting my data into those locations

    Save the file under a new name

    Load the file into flash manager

    Put the GD77 into All access mode (Blue side button, Green menu button and * key)

    Write the section from 0x50000 for length 0x40000 – this should write both blocks back to the GD-77

    Note. You must backup your existing data first, and modify the backup file.

    Don’t start from a blank data file, because the GD-77 only allows block writes of 64k (0x10000 hex) and there is other important data right next to the calibration data that would get zero’ed if you simply start with a blank file

  30. Rommel
    |

    Thank you Roger Clark was able to fixed the radio now im just gonna leave it to simplex since duplex hotspot started my problem 2 days was lost trying to fixed it.

  31. Roger Clark
    |

    OK

    If you have updated both the 0x50100 and 0x8f000 blocks it should not be possible to corrupt the calibration again, as we think during a factory init, the firmware copys from address 0x50100 to 0x8f000

  32. Rommel
    |

    Hope not since went to 2 days trying to make this work with there buggy firmware and hope there is no more issue for other like me.Thanks again youre instruction alot easier to understand.

  33. Rommel
    |

    Happend again radio is now brick the only think this radio can be used ahain is when memory totally wipe out for some reason hex editing dont work anymore and even go back to 2.6.6 and do 1 channel codeplug and reset it load automatically codeplug i made when it all got fsked from 3.1.1.

  34. Zolon
    |

    Does anyone have a valid .bin file? I found the calibration files, but it appears the person I bought my radio from on EBay zeroed out the file. Everything around the two places to paste the calibration, is 00. the “important data” is missing. Which explains why the radio doesn’t think it has a serial number.

  35. Roger Clark
    |

    I already posted my calibration data as a reply to another question.

    Calibration data is always at 0x8f000 and backed-up at 0x50100 in firmware 3.1.2

    By calibration data at 0x8f000 looks like this

    A0 0F C0 12 A0 0F C0 12 E1 03 E2 60 CA 61 C7 61 C6 60 C8 5F C7 5F CA 62 BE 64 BE 64 BF 63 BD 64 B5 64 B8 60 AF 5E B6 5D B5 58 C4 3D 3B 3A 38 37 36 35 A9 1D 0D 0D 11 11 0B 0B 0F 00 00 00 00 18 16 14 13 16 14 15 12 3E 3C 3E 3A 53 51 34 32 34 32 53 51 1C 20 3D 3C 3A 39 38 36 35 34 1D 0F 0E 11 11 0B 0B 0F 0E 31 05 27 00 27 00 0F 0E 00 00 50 05 CC 06 50 05 CC 06 E5 03 E6 54 AB 51 AC 4E A3 4C 9C 4B 9A 4B A4 4F A9 57 EF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 40 F0 40 F0 40 F0 FF FF 0F 0F 0F 1B 1B 1B FF FF 00 00 00 00 1D 1D 1D 1C 1C 1C 1B 1B 3E 3C 3D 3A 53 51 34 32 34 32 53 51 20 27 B7 B1 AB A6 9F 9A 95 90 1D 10 0E 11 11 0B 0B 08 0E 31 05 27 00 27 00 0F 0F 00 00

    It should also be the same at 0x50100

    Every radio should have slightly different calibration data,but since your radio seems to be bricked, you may as well try my calibration data, (AFTER FIRST BACKING UP WHAT YOU CURRENTLY HAVE)

    Backup all your flash memory, save it to a file

    Use HxD to change the area st 0x05100 and 0x8f000 and try pasting my data into those locations

    I’m not sure where the Serial number is stored. Potentially in EEPROM which we have no way to change except by opening the radio and soldering wires to the EEPROM chip

  36. Andy Wilkinson
    |

    Trying to up date the firmware as my new 77 has just arrived but every thing I tries fails. I am using a windows 10 machine. All I get is an error message saying “The application failed to start because its side by side configuration is incorrect.”

  37. Roger Clark
    |

    I just googled the error message and got

    https://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/windows-10-error-the-application-has-failed-to/5c6a015e-4162-491d-b7d9-f3b13612e304

    Looks like your Windows 10 is missing something which the update software needs.

Leave a Reply