OpenGD77 DMR Rx Audio Leveling

If you’ve spent any time on DMR you’ve noticed that a lot of people have varying audio levels which is why it’s a good idea to utilize parrot to adjust your mic audio and normalize it with others. You’ve probably had someone come on too hot and be incredibly loud while slightly clipping which takes away from the experience of DMR, not to mention the jar of a normal station when you’re turned up the volume for a station with weak audio. So enter in this great feature of the OpenGD77 open firmware project, the DMR Rx AGC setting which provides audio leveling, and having used it for months it really makes using DMR very pleasant. And if you’re using a radio that supports the OpenGD77 firmware you can enable this feature in the Sound Options and you don’t have to pay extra for it like with Motorola Mototurbo radios. And the description from the firmware manual is below.

TYT MD-UV380 with OpenGD77 firmware
Radioddity GD-77 with OpenGD77 firmware

DMR Rx AGC

This setting controls the DMR audio levelling function.

When this function is enabled, the firmware monitors the peak amplitude of the DMR Rx audio, and adjusts the audio output gain so that the audio amplitude from the speaker remains more constantly. By default this is disabled. Set to Off.

Setting this to 0dB (gain boost) enables this function. Increasing the AGC value, increases the additional audio gain which is applied. Hence increasing the value will increase the overall volume of the audio. Operators in high noise environments can increase this value to make the radio speaker level louder that has previously been possible, however if the AGC value is increased too much, it will result in clipping of the audio signal and result in distortion when receiving from some stations.

Like most AGC systems, the audio levelling uses a sample window period and also a level control low pass filter, so that normal changes to voice audio amplitude are not levelled out. Hence it takes approximately 1 second for the AGC to adjust to each new DMR signal which is received. However the AGC control level for each DMR station which is received, is stored as part of the Last Heard data, so that if the same station is heard again, the last known AGC value for that station is applied immediately, hence the audio level is changed immediately and does not take 1 second to adjust to the level of that station.

It should be noted that this system is not perfect and some variation in audio level will be observed. During testing, it was noted that signals received via gateways from other networks or people using phone Apps etc; often have much higher audio levels, and sometimes that output gain control hardware in the radio is not able to attenuate the signal enough to ensure the audio is at the same level as DMR signals from DMR networks.

https://github.com/LibreDMR/OpenGD77_UserGuide/blob/master/OpenGD77_User_Guide.md#sound-options