Okay, this is still seriously in the development stage, but I couldn't wait any longer to show it off. What we have here is an all tube compressor based on the Sta-Level/GE BA-9/CCA LA-1D lineage, but with *all* switches and pots controlled by an Arduino microcontroller. I've been working on this project for a while but just made it real this week. I was originally going to use the PIC family of microcontrollers but decided to try out the Arduino platform after reading Owel's post on his digitally controlled preamp project. (http://www.groupdiy.com/index.php?topic=31185.0) I have to say, the Arduino makes digital control really easy, and thanks to Owel for introducing me to it.
I took a little different approach to digital control with this project. I'm using Alps motorized pots for all the analog controls except the Time Constant, which is a 10 position rotary switch. The pots I bought have 4 gangs, and since the compressor circuit only needs up to two gangs, I could use the other gangs to sense the position of the pot by hooking it up to one of the A2D converters on the microcontroller.
The plan is to implement MIDI three different ways. First will be snapshots of all controls via a MIDI System Exclusive message. This is the main reason I wanted digital control. It will allow the user to store all compressor settings with the session data in their DAW. Second will be dynamic automation using MIDI continuous controller messages. Just dedicate a MIDI track to your tube compressor, and your software will record all your moves as you make them, just like any other MIDI instrument. Third will be a mode using standard MIDI note on/off messages to change parameters. This would be useful if you want to user the compressor as an effect, allowing you to easily bypass the entire unit, just the compression, or switch ratio, attack and release very dramatically for effect.
Also notice the joystick to the the right of the LCD display. At first I thought I would use this instead of the little blue up/down/left/right buttons, but it occurred to me that it could also be used to control two parameters simultaneously. For instance, the X-axis could be attack and the Y-axis could be release, or X could be input level and Y could be output level. You get the idea. I'm going to play with it and see what combinations make sense.
I'd really like your feedback on several things. First, the feature set. Right now, the automatable functions are:
Analog Pots and Rotary Switch:
Input Level, Output Level, Attack, Release, Time Contant and Mu-Point. The last one is my attempt to be cute, sort of a variant on Q-Point. It varies the bias voltage fed to the 6386/5670/6BA6 pair/6BJ6 pair (the circuit board is set up to accept any of the above, and is modifiable to accept other tube pairs as well).
Pushbutton switches:
Hardware bypass, sidechain bypass, sidechain external loop in/out, MIDI automation on/off (not automatable obviously) stereo link and tube or solid state diodes in the sidechain.
There will also be the provision to store the startup defaults in EEPROM. It will have a USB port for talking to the Arduino as well as the MIDI port.
I'll post some videos of the controller in operation later this week. I have a bunch of other ideas, but they will have to wait until I have the basic unit the way I want it.
Let me know your ideas for additional features.
The second thing I need feedback on is whether there's a market out there for a product like this. Do you think there's enough demand to put this thing into production?
Let me know your thoughts.
Thanks,
---Joe