I have a project to create a physical remote control composed of multiple potentiometers and on/off button to control a KH810 Studio Subwoofer.
This speaker can be remotely controlled through RS232 by sending command such as setvol=x.xx.
So my idea would be to create a volume button by reading the resistance value of the potentiometer, convert it to the value between -95dB and +20dB and send a RS232 command. It would require to constantly read the value of the potentiometer.
Other on/off button would simply send basic on/off command through RS232.
There would be a total of 9 potentiometer and 13 on/off button.
I'm not sure if this is possible to do such thing with an Arduino (which hardware to buy exactly?), if it's required to have a MAX3323 chip, or if there's a better way to achieve this.
An Arduino is a good platform for that, but how about using a rotary encoder instead of a potentiometer? Those work like an "infinity" dial so you can step up and down in any resolution.
Also, instead of having 9 dials, you could have a select botton to switch what parameter the dial will be adjusting. You might just need some IO expander depending on the number of buttons.
I'm having trouble connecting to the Neumann website but 9 pots/adjustments seems like too many for a subwoofer if you are going to tweak the sound manually or by-ear.
I assume you're supposed to use some measurement software (and a calibrated mic) to calibrate it in the room, and then leave it alone. I'm also assuming it has nonvolatile memory to hold the calibration. In that case, you'd set it up once with a computer and then disconnect the computer. If you move the sub to a new location, you re-connect the computer and re-calbrate.
It's probably OK to have a manual subwoofer volume/level control if you're not doing mixing or mastering where it has to remain calibrated, but I don't think 9 adjustments are practical once it's set up.
It would require to constantly read the value of the potentiometer.
That's how a normal equalizer or volume control works. You're the programmer so it's up to you! In an analog circuit the signal goes ]through the pot so of course any adjustments take place immediately.
but how about using a rotary encoder instead of a potentiometer?
I kind-of agree, since this is a digital system you don't need an analog input. But, you need a way to know/monitor the setting since it's "infinite" and any changes made when the power is off will be ignored. An analog pot has mechanical memory.
...if it's required to have a MAX3323 chip, or if there's a better way to achieve this.
Yes... You need to boost the voltage and you need negative voltage to meet the RS-232 spec, but there's a chance the sub will work with 5V RS-232. We use a similar chip in our products at work (not with an Arduino). We get a little more than +/- 9V (with a 5V supply). The RS-232 on a computer is +/- 12V.
Thanks a lot for your answers. I will probably go with analog as I'd prefer to have a physical limit. Another possibility with the rotary encoder would be to have an LCD screen to shows the current dB value.
Still I like the idea of having 1 pot/rotary encoder with a selector button!
The idea of having a total of 9 pots is because the mixing done over there is done sometime in stereo or 5.1. I'm not the expert in audio so I'm following the request that has been made to me