     }
 
     // Run Effect
-    fp::fix32<q> x ((int16_t)(((int16_t)in_ADC0 - 2048) << 4));
+    // fp::fix32<q> x ((int16_t)(((int16_t)in_ADC0 - 2048) << 4));
+
+    fp::fix32<q> x0 ((int16_t)(((int16_t)in_ADC0 - 2048) << 4));
+    fp::fix32<q> x1 ((int16_t)(((int16_t)in_ADC1 - 2048) << 4));
+    fp::fix32<q> x = (x0 - x1) * half;
     fp::fix32<q> y = myWah.runEffect(x);
 
     // Gain


        fp::fix32<q> alphaA = (int16_t)map(atk, 0, 4095, minAtk, maxAtk);
        fp::fix32<q> alphaR = (int16_t)map(rel, 0, 4095, minRel, maxRel);
        myWah.setAlphaAR(alphaA, alphaR);
    }
    else{
        // range = analogRead(A8);

const double maxInt16 = 32767.0 / 32768.0;
const fp::fix32<q> max16(maxInt16);
const fp::fix32<q> min16(-1.0);
const fp::fix32<q> half(0.5);
// const fp::fix32<q> minQ(0.02);

// Quality Factor
