Volume Jumping with Arduino Mega and POT

Hello,

At my job we use Arduinos to control a Potentiometer so that we can adjust the volume coming through headsets.

The components used are:

1 x Medium spec computer
1 x Headset (Headphones & Microphone)
3 x Colored buttons
1 x Arduino MEGA
1 x Dial
1 x pre-amp
2 x USB Extender (Icron USB 2.0 Ranger 2304)
1 x RFID Reader

There are two separate elements to this interactive installation. The upper visual element and an Audio element.

The visual element is located in the upper section of the installation. The lights and dial are wired directly to the Arduino MEGA. This in turn is connected via a USB Extender to a PC located in the AV room.

The audio element is located in the lower section of the installation. The Headset is plugged into the preamp, which is plugged into a USB Extender and connected to the same PC located in the AV room.

In addition an RFID Reader is installed between the above elements. Central services knows which RFID Reader is associated to which info beam based on the RFID Reader registration process.

The issue is that when you turn the audio dial the volume jumps all over the place. its a multi turn POT. its not linear and goes from no sound to full volume. as you turn the dial it can jump from full volume to low volume and etc…

Any idea on how to fix this?

How is the "dial" controlling the volume? I assume the computer doing the actual volume control?

The issue is that when you turn the audio dial the volume jumps all over the place. its a multi turn POT. its not linear and goes from no sound to full volume. as you turn the dial it can jump from full volume to low volume and etc..

Try "reading" the pot and send the ADC reading to the serial monitor (like the Analog Read Serial Example). That will tell you if the pot readings are unstable or if you've got a problem somewhere else.

Then you can write a sketch to simulate the results of the pot under software control with no user/pot input. That should help you nail-down where the problem is.