Problem with multiple sliding potmeters for MIDI panel

Hello everyone, I’m rather new at Arduino although I do have some experience with Processing. I recently started building my own MIDI panel for controlling VJ software. On this panel I want to use multiple sliding potentiometers that I can control at the same time, i.e. mixing 2 seperate video layers where each potmeter controls 1 video layer. I have however encountered a problem with this. Whenever I hook up one of these potmeters everything works fine, but when I connect 2 they seem to influence eachothers values. The result ends up being that they both return their combined value. I have been reading up on a couple similair posts which say that this is because the arduino only has 1 ADC, and thus cannot differentiate between the two. After attempting quite a couple of different codes I figured I needed help from people who know this stuff a lot better than me.

If anyone could tell me if this is just not physically possible with the Arduino, if I connected something incorrectly or am missing something in my code, it would be greatly appriciated.

This is the sliding potmeter I’m using: http://www.mouser.com/ds/2/54/tb-777940.pdf

This is my current setup:

This is my code, so far just for testing:

int saveValA0 = 0;
int saveValA1 = 0;

void setup() {
    Serial.begin(9600);  
}

void loop() {
    for (int i = 0; i < 2; i++) {

      if(i == 0){
        saveValA0 = analogRead(A0);
        Serial.print("A0");
        Serial.print(":");
        Serial.println((saveValA0/8));
        delay(500);
      }else{
        saveValA1 = analogRead(A1);
        Serial.print("A1");
        Serial.print(":");
        Serial.println((saveValA1/8));
        delay(500);
      }
        
    }
}

Some proto boards have the power rails split in the middle. If this is the case you need to provide two jumpers to connect the rails.

What is the resistance of the pots?

Why are you using the for loop? .

Hey LarryD, thanks for the reply!

I dont exactly get what you mean by proto boards? is that something inside the pot?

These pots are 200 kOhms.
The for loop was just a desperate attempt at getting the Arduino to seperate the two values.

proto board is the white bread board in your image. You do not need the for loop.

See image: Here

The breadboard is not the problem, hooked em all up to a single rail. Also removed my for loop, still getting mixed values.

200k might be too large but try: Read A0 twice in a row, then print the second read, next read A1 twice in a row then print the second read.

These pots are 200 kOhms.

That is your problem. The Arduino's processor is designed to work with 10K input impedance.

It is all to do with charging up the internal A/D's sample and hold input capacitor.

Do what LarryD said. And if you still have trouble put a small delay between the first and second read.

Or add a small capacitor (a few pF up to 1uF) to the output leg of each pot (and ground.) That will charge up during the time that you're not reading the pot and deliver the surge of current required when the analogRead() is active.