diff --git a/stereo_mix/pot_controller.h b/stereo_mix/pot_controller.h index 29c7af5..d56becd 100644 --- a/stereo_mix/pot_controller.h +++ b/stereo_mix/pot_controller.h @@ -55,7 +55,7 @@ class PotController { PotController() { } ~PotController() { } - inline void Init( + void Init( uint16_t* main_parameter, uint16_t* hidden_parameters[hidden_parameter_count]) // this pot controller always works on values between 0 and 65535 { diff --git a/stereo_mix/ui.cc b/stereo_mix/ui.cc index 5161c76..c14d118 100644 --- a/stereo_mix/ui.cc +++ b/stereo_mix/ui.cc @@ -48,10 +48,9 @@ void UI::Poll() } for (size_t i = 0; i < kNumChannels * 2; i++) { - if (i >= kNumChannels) { - processors[i - kNumChannels].set_pan_offset(adc->value(ADC_GROUP_POT + i) - 32767L); - } else { - processors[i].set_volume_offset(adc->value(ADC_GROUP_POT + i)); + if (i < kNumChannels) { + processors[i].set_pan_offset(pan_pots[i] - 32767); + processors[i].set_volume_offset(volume_pots[i]); } if (abs(previous_pot_values[i] - adc->value(ADC_GROUP_POT + i)) > 1900) { previous_pot_values[i] = adc->value(ADC_GROUP_POT + i); diff --git a/stereo_mix/ui.h b/stereo_mix/ui.h index b38a7c2..ef85d1f 100644 --- a/stereo_mix/ui.h +++ b/stereo_mix/ui.h @@ -21,6 +21,8 @@ class UI { { queue.Init(); + }; + void Init() { for (size_t i = 0; i < kNumChannels; i++) { uint16_t* volume_hidden_params[kNumChannels] = {&volume_att_pots[i], &volume_att_pots[i], &volume_att_pots[i], &volume_att_pots[i]}; potControllers[i].Init(&volume_pots[i], volume_hidden_params); @@ -29,7 +31,8 @@ class UI { volume_att_pots[i] = pan_att_pots[i] = 65535; } - }; + + } void Poll(); void DoEvents();