I’m extremely pleased to announce that the open source firmware for the GD-77, being developed by Kai DG4KLU and myself, has now reached its first major milestone, and we’ve decided to call the firmware…
Thanks to some more incredible work by Kai, the OpenGD77 firmware now operates as a DMR Tier 1 radio on both receive and also on transmit, as well as a FM transceiver.
This is the culmination of many months work by Kai to reverse engineer how to control the DMR DSP chip used in the GD-77, and I will only be able to briefly cover the many aspects of the firmware.
Firstly, its important at this point to explain what DMR Tier 1 is, and what the firmware can and can’t do.
The firmware only works on DMR with simplex hotspots or to other DMR radios for simplex contacts.
This is because the firmware currently does not support sending the “Wake-up” transmission pulses required by a Tier 2 repeater (including duplex hotspots), and does not synchronise with the carrier signal sent by a Tier 2 repeater.The next phase of the project will be to get full DMR Tier 2 working, and this work is now the priority for Kai.However DMR mode can be used with a simplex hotspot and for DMR simplex operation, and I have been using it like this for around 2 weeks, as have the beta testers, with no major problems.
FM reception and transmission works.
This includes repeater operation using CTCSS on both Tx and Rx.
On DMR, only Talk Group “calls” are currently possible
We have not had time to implement the Private Call functionality, however I don’t think that it would be difficult.
DMR Text messages are not currently supported
Messages seem to be handled differently from voice data by the DMR DSP chip, so we will need to investigate how to support this after the Tier 2 work is complete.
- The official, or Community CPS does not work with the new firmware
I am currently updating the Community CPS, and hope to have it working in a few days.
But in the mean time, the firmware can read the existing codeplug in the radio.
Now onto what’s great about the OpenGD77 firmware…
Primarily its open source.
This allows us to write the firmware so that the radio operates in a way we want it to, specifically for Ham radio use.
It will allow us to do things which other DMR radios don’t do, e.g. potentially in the future, cross band operation to duplex hotspots. Or possibly use the radio as a high power hotspot by using the USB programming cable as a comms interface to PiStar.So that we are now only limited by what the raw hardware can and can’t do, and by our own imagination, and not by the firmware which was written specifically for commercial users, whose requirements are a lot different from Ham radio use.
We have already been able to move away from the work-arounds that are necessary when using the official firmware.
Most notably there is no longer any need to have multiple channels with the same frequency, but with different Talk Groups.
The OpenGD77 firmware uses the Rx Group list assigned to a “Channel”, as both a Rx and also a Tx group list.
On the keypad, the left and right arrow keys are used to cycle through the TGs in the Group list.
In Channel mode, the up and down arrow keys change channel, as in the official firmware.
This functionality significantly reduces the number of “Channels” that are required, and also simplifies the structure of the codeplug.
You can see in my codeplug,that I now only have 1 channel per repeater.
The Zones can then be used to group of all the repeaters in a particular city or region. For Example I have all the DMR repeaters in the state of Victoria in the same Zone.
Looking at the Rx Group Lists, I now only have 3 groups: one for DMR_MARC for the repeaters, and one for Brandmeister which I use via my hotspot, and another for BM UK.
I don’t have time, at the moment, to completely document all the functionality of the firmware, so I have made a video describing it’s operation, which is available on Youtube
I made this video a few days ago, and since then we’ve made a number of improvements:
For example, in the video I say that the PA is not being pulsed every 30ms in DMR mode, but it is now being pulsed.
But on the whole the video will give an overview of the menus and general operation of the radio with this firmware installed.
All the source code and an install-able firmware file is available on Github in the HamDV account
This is still experimental firmware, and you install it at your own risk.
Although multiple people have tested the firmware, there is always a chance that installing non-official firmware could potentially damage or completely “brick” your radio.
The firmware is intended to be non-invasive, and does not change the codeplug or other settings used by the official firmware, so it is normally possible to reload the official firmware, with no ill effects to the radio.
If anyone is interesting in installing and testing this firmware, please leave a comment, and I will contact you via email to answer any questions etc.
I plan to do some follow up posts, describing various aspects of the firmware, over the next week, but I’m also trying to get the CPS working, so the blog posts may need to wait…
Finally, I’d like to thank the testers including VK7ZCR, W1HRS, LB9AB, G4EML, VK4JWT and anyone else who I’ve forgot to mention.
And of course to thank Kai again for his continued work to produce this amazing firmware.