Bass effects and arduino (Normalizer??)

Looking for awesome bass players!

Ok, perhaps not exactly what I'm looking for atm.. :?)
But I am looking for some help/tips/ideas from the awesome crowd that hang out here!
Feel free to contribute with any ideas in this matter..

To the point:
I've a friend who plays bass (*) in different bands (Metal, Experimentell/Hardcore, Funk etc). we've talked a bit of a special kind of effects padels, that' apparently hard to find/none existing.
Now he has a birthday coming up, and I and another friend thought that it would be cool if we could build that pedal for him as a present..

So here's how he described what he wanted (as I understood it..):
When switching between bases he often needs to change the "power" (aka volume?) due to the different types of basses.
There's "active basses", that gives a higher output/dB/amplitude, and then there's "passive basses" that give a lower output/dB/amplitude.
What he wants is to be able to set a specific level using an effects pedal, which then adjusts (+/- amplify) the input signal..
(To me this sounds as a "normalizer", sort of...)

My main knowledge isn't about electricity: I'm a software guy (programmer) with a great interest in everything that spells "technology" and gadgets (and how they work..). I've played around with electronics a great deal and I got a pretty good understanding of it (But i don't know much equations [in electronic] etc, but as a former science student, they don't scare me).

So, as I figure it (being a sw-guy) it should work by reading an analog signal (which is AC...), do the right calculations with it, and then output it.
I should be able to read the signal using the analog inputs of the arduino.
As the arduino doesn't have analog output I guess I need a DAC (but not yet completely sure on how this work with an AC output..).

The input (and output) [as I get it] is about +/-1v?

I've been reading up on audio signals, AC, the arduino etc (and will keep doing that..), but it would be nice with some help and perhaps a dialogue with someone that has more experience with this than me..

The use of an arduino for this will hopefully also let me realize some of the features we want for this pedal (some are his, some are mine)

  • LCD - to be able to see the current value etc
  • Be able to add more effects (Please feel free to tell me what you think would be a cool effect for a bass)
  • Some other intelligence..

Again: ANY input is appreciated; tips, help, ideas etc!

Have a nice morning/day/evening/night...


(*) I have many friends that are good musicians, but this one stands out in many ways.. One being that he is a plumber. ;?)

Just if you are interested (Not exactly my kind of music, but it's ok...)
http://www.myspace.com/insomniaswe
http://www.myspace.com/iaftondans (starting up)

ps
Sorry if it's a bit "unfocused" or bad grammar etc.. English isn't my main language and once again, I'm up "past my bedtime" (should be getting up in about 6 hours..)

Sounds lik you need a Compressor/Expander, probably before it gets to any effects pedals.

Theory - Dynamic range compression - Wikipedia

Discussion about bass compression - http://www.talkbass.com/forum/showthread.php?t=9466

Example of how to do it with discreet electronics - http://sound.westhost.com/project45.htm

I cant help but think something like that will utterly destroy the dynamic range of the attacks, but he may want that :slight_smile:

Maybe I'm really just missing the point here, but after playing bass for 12 or 15 years, I always learned to accomplish this task by giving a twist to the gain knob on the preamp I was using when switching instruments. If you really wanted to do this with a pedal, I'm sure there are peamps out there that can be controlled by pedal, or it would be really easy to wire a pedal in place of the potentiometer on an existing preamp. Converting the signal to digital, then converting back to analog, just so the Arduino has a shot at adjusting gain, seems like overcomplicating things.

That said, if you wanted to incorporate an Arduino into a bass rig, the approach I would take would probably be to use "conventional" effects, preamps, whatever, but control them with a signal from the Arduino (i.e. on/off from digital pins, or using a PWM output to generate a variable signal to replace a pot, etc.) That way, the Arduino can be the "brains" of the whole thing, but not actually do any signal processing itself. And building a preamp or effect from scratch is usually easier than it sounds, if the goal is to be totally DIY.

"Presets" with leccy tape and a sharpie I expect, ill_switch :slight_smile:

Thanks for the responses..

I've been reading up and I think I've any pretty good idea of the way to go..

Some questions:

  • What is the "easiest"/best way to "split"(/clone) the signal to be able to analyze the signal to control, say a digital pot.. (Or is there a risk of loosing quality etc of the signal [and if: can it be compensated?])
  • Do you have tips on other effects that could be nice to use on a bass??

Chris,

There are really three functions for bass or guitar effects: altering timing, altering wave shape, and altering amplitude. Think in those terms and let your imagination run wild. For instance, an echo or reverb pedal is just taking the incoming signal, delaying it a bit, and adding it back on. Most effects pedals are just creatively blending these three concepts together, and circuits for all three are pretty straightforward. IMHO your best bet would be to research building the specific effects you want, then building them, independently of an arduino - then use the arduino to control the "standalone" effect. Many effects are controlled by knobs and switches, which of course can be replaced with digital or PWM output from a microcontroller. For instance, you could build a reverb pedal, then have the arduino output a PWM signal that would control the length of the delay.

Or, you could build a simple preamp and have the arduino store a series of presets for each instrument, then have a knob or button on the arduino to scroll through the presets. That would accomplish your original goal.

Cabe, I always just set the dial to eleven. ;D