Hello everyone. I am building a multi-channel preamp for guitar and need to come up with a switching system. I'm an analog guy, I've never messed with digital before. Before someone mentions it, MIDI is out (overkill, plus there isn't a lot of DIY stuff out there that is intended for something other than keyboards), and while I could do it using discrete wires, there are things that could be done with an Arduino (PWM is one example) that would be most beneficial. I have been reading up on the Arduino's abilities and it's intriguing to me.
I should explain that one local person replied to a local ad I posted and, instead of trying to help, proceeded to suggest things in which I had no interest (i.e., buy certain existing products, etc.), tried to tell me what I need (as if he knew me), told me it was a waste of time, and called my project a Model T in a world of Mercedes, among other things. As I explained to that person, this is a personal project, and it's something I've wanted to build for many years. I also explained that I'd take a Model T over a Mercedes any day because if it breaks then I could repair it myself. I like to get my hands dirty, I like to build things, and it's a hobby that I enjoy. That, of course, is referring to ... analog, NOT digital! :o
So, as I was looking over different code samples this past weekend (every waking moment, I might add), I found myself getting confused. I'm a pretty good PHP programmer, so much of the code made sense to me (loops, ifs, conditions, etc.) but of course some of the syntax and built-in functions were totally unfamiliar. What made my head spin, though, was the different types of communication between units - I2C, serial, etc. - and some of that code was way over my head. I don't know which would be the best way to go, I can't seem to follow the different RX/TX codes ... I just don't, well, "get it." That's where I'm at right now.
Now, since this is a personal project and very likely to be the only project where I would ever use something like this, I'm trying to decide whether I want to spend the weeks (months, most likely) learning what I would need to learn to have it do the things I would like it to do. Truthfully, I'm leaning against it. I'm sure some people here could do those things in their sleep, just like I could create a dynamic web site during my own slumbers. Thing is, PHP is simply code written within a specified language, there is no hardware to deal with so it's not the same. (Sure, a server is hardware, but that's primarily handled by the operating system.) Frankly, I'd rather spend the time working on the analog circuits of the preamp. That's something I understand and am comfortable with.
On to the digital realm now. Assuming I decide not to pursue learning everything I need to learn, would there be someone out there willing to help? I'd like to get an idea of how much someone might charge for something like this, as I have no clue.
Following is a short description of my project relating to the digital aspect only. If there is anything else someone wants to know I'll be glad to answer any questions - digital, analog, the preamp itself, or whatever.
- Communication (probably) needs to be a continuous 2-way (synchronous?) setup and as fast as possible, with controlling functions on both ends (the preamp and the foot controller/footswitch).
- The two units will be wired at a distance of no more than 50 feet.
- There are 8 channels on the preamp (only one on at a time) with four "options" per channel.
- The footswitch will be laid out in an 8x4 matrix so each channel and its four options are directly accessible with a single footswitch. (Again, only one switch in the matrix can be on at any one time.)
- There are six other momentary switches for other purposes, i.e., setting delay times, mute, etc.
- Besides the 4x8 + 6 footswitch, the preamp itself will have switches to choose channel, channel option (separately - no matrix), delay time, etc.
- Current settings must be indicated on the footswitch, whether controlled at the footswitch or on the preamp.
- It will be "wired" using a computer-style DB cable.
- I would prefer it include PWM for voltage controlled volume and blend. (I'm guessing it could be something like 2 to 4 PWM lines.)
That's about all I can think of at the moment. Looking at the different units available, I'm thinking a Mega at both ends would be enough, as those seem to have enough I/O pins. Then again, I'm sure someone who knows more about this stuff might have a different opinion there. I'm open to suggestions, of course.
Any interest out there? If not, that's ok - I can always fall back on the discrete wire method if need be. I'm sure it would work ok, digital would just be better. Of course, all of the audio signals will be analog. Digital would only be used for switching and perhaps voltage control.
Thanks for your time! 8)