Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

On my amp, I have a big round knob, that I can turn forever in both directions, to control volume. It simply turns up whenever I turn clockwise and down when I turn counter clockwise. There is no limit as to how far I can keep turning it.

How do I create this in my own project? I have an arduino where I want a knob like this, to control a value in the arduino memory. Simply, turning up, add to value, turning down, subtract from value.

I assume I need some kind of potentiometer, but they do not turn forever, do they?

share|improve this question
Actually there are potentiometers, usually with two wipers, that do turn forever. However, those are not approriate for what you are asking about. – Olin Lathrop Jan 4 '14 at 16:37
up vote 10 down vote accepted

What you need in a rotary encoder, they have two outputs that generate pulses which are then decoded to read the direction of rotation.

Rotary mechanical encoder Rotary mechanical encoder waveform

Refer to http://playground.arduino.cc/Main/RotaryEncoders

To control the volume you can use Arduino to drive a volume control chip like PGA2311.
There are even 4 channel versions like PGA4311

You can also control digital potentiometers like MCP41xxx/42xxx

share|improve this answer
@DiegoCNascimento I suggest not to link Arduino directly with the answer The OP asked specifically for Arduino so why including an Arduino link with a library for his needs is wrong? – alexan_e Jan 4 '14 at 19:17
ops, have not read that, sorry :) – Diego C Nascimento Jan 5 '14 at 0:12

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.