public void PZ69KnobChanged(bool isFirstReport, IEnumerable <object> hashSet)
        {
            lock (LockLCDUpdateObject)
            {
                Interlocked.Add(ref _doUpdatePanelLCD, 1);
                foreach (var radioPanelKnobObject in hashSet)
                {
                    var radioPanelKnob = (RadioPanelKnobAV8BNA)radioPanelKnobObject;

                    switch (radioPanelKnob.RadioPanelPZ69Knob)
                    {
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM1:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM1;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM2:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM2;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV1:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV2:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_ADF:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_DME:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_XPDR:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.NOUSE;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM1:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM1;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM2:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM2;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV1:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV2:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_ADF:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_DME:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_XPDR:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.NOUSE;
                        }
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_FREQ_SWITCH:
                    {
                        SendFrequencyToDCSBIOS(radioPanelKnob);
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_FREQ_SWITCH:
                    {
                        SendFrequencyToDCSBIOS(radioPanelKnob);
                        break;
                    }
                    }
                }
                AdjustFrequency(hashSet);
            }
        }
        public void PZ69KnobChanged(bool isFirstReport, IEnumerable <object> hashSet)
        {
            if (isFirstReport)
            {
                return;
            }

            lock (LockLCDUpdateObject)
            {
                Interlocked.Increment(ref _doUpdatePanelLCD);
                foreach (var radioPanelKnobObject in hashSet)
                {
                    var radioPanelKnob = (RadioPanelKnobAV8BNA)radioPanelKnobObject;

                    switch (radioPanelKnob.RadioPanelPZ69Knob)
                    {
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM1:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM1;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM2:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM2;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV1:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV2:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_ADF:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_DME:
                    case RadioPanelPZ69KnobsAV8BNA.UPPER_XPDR:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentUpperRadioMode = CurrentAV8BNARadioMode.NOUSE;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM1:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM1;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM2:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM2;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV1:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV2:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_ADF:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_DME:
                    case RadioPanelPZ69KnobsAV8BNA.LOWER_XPDR:
                    {
                        if (radioPanelKnob.IsOn)
                        {
                            _currentLowerRadioMode = CurrentAV8BNARadioMode.NOUSE;
                        }

                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_INC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_DEC:
                    {
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.UPPER_FREQ_SWITCH:
                    {
                        SendFrequencyToDCSBIOS(radioPanelKnob);
                        break;
                    }

                    case RadioPanelPZ69KnobsAV8BNA.LOWER_FREQ_SWITCH:
                    {
                        SendFrequencyToDCSBIOS(radioPanelKnob);
                        break;
                    }
                    }

                    if (PluginManager.PlugSupportActivated && PluginManager.HasPlugin())
                    {
                        PluginManager.DoEvent(DCSFPProfile.SelectedProfile.Description, HIDInstance, PluginGamingPanelEnum.PZ69RadioPanel_PreProg_AV8BNA, (int)radioPanelKnob.RadioPanelPZ69Knob, radioPanelKnob.IsOn, null);
                    }
                }

                AdjustFrequency(hashSet);
            }
        }