Good starting point - Hardware and Software

Started by thedefog, May 04, 2011, 01:36:39 PM

Previous topic - Next topic

thedefog

Hey Guys,

I own an Arduino board and have played around with some audio examples I found (bit crusher, digital distortion, LFOs, Theremin, Midi piezo knock sensor). Now I've got my feet wet and realize I'd like to do more complex digital effects (delay, pitch shift, grain shifting, etc).

I've begun the process of going through all of the resource materials on the forum here, but I'm drowning in a sea of information. I was wondering what types of more powerful microcontrollers you guys use for your projects, and what you would recommend for something like a pitch shifter or delay. I'm a novice programmer, so whatever platform has the most resources and examples, the better. I'm completely unfamiliar with DSP programming, but realize I'll probably have to learn it in order to work with more complex effects. My programming experience is limited and consists mostly of C/C++ and the arduino.

thedefog

Also, does anyone have any experience here with AVR32 here, and if so, is it capable of doing the types of effects I mentioned above? It would be great if it did, because the transistion over to it from the Arduino would be less painful. (I hate assembly)

potul

I have no clue about AVR32, but I've started doing my DSP stuff using a dspic33, and so far I am happy. 16 bits, you can program it in C easily and some of them have ADC and DAC already integrated (and in DIP package)

They don't have a lot of RAM.. this is a limitation for some effects, but not for long delays.

For some good generic DSP stuff, look at the pinned topic at the top of this subforum. There are a lot of useful references.

thedefog

Quote from: potul on May 05, 2011, 04:05:28 AM
I have no clue about AVR32, but I've started doing my DSP stuff using a dspic33, and so far I am happy. 16 bits, you can program it in C easily and some of them have ADC and DAC already integrated (and in DIP package)

They don't have a lot of RAM.. this is a limitation for some effects, but not for long delays.

For some good generic DSP stuff, look at the pinned topic at the top of this subforum. There are a lot of useful references.

I'd absolutely want to get a hold of something that has both the ADC and DAC integrated. I'm not looking into making things any more complicated than they need to be. I don't think RAM size is a major concern for me. I doubt anything I write is going to get that long/complex. I'll check out that DSPIC33. Thanks for the feedback.

alparent

Quote from: thedefog on May 04, 2011, 01:36:39 PM
I own an Arduino board and have played around with some audio examples I found (bit crusher, digital distortion, LFOs, Theremin, Midi piezo knock sensor).

I'm just starting with Arduino myself (mostly for switching) But I'm itching to try more stuff. Can you please point me to the stuff you found about  (bit crusher, digital distortion, LFOs, Theremin, Midi piezo knock sensor).

Thanks.

thedefog

Quote from: alparent on May 05, 2011, 10:17:25 AM
Quote from: thedefog on May 04, 2011, 01:36:39 PM
I own an Arduino board and have played around with some audio examples I found (bit crusher, digital distortion, LFOs, Theremin, Midi piezo knock sensor).

I'm just starting with Arduino myself (mostly for switching) But I'm itching to try more stuff. Can you please point me to the stuff you found about  (bit crusher, digital distortion, LFOs, Theremin, Midi piezo knock sensor).

Thanks.
The information for the bit crusher can be found right here in the forum. Just search for "Arduino" and you'll see it.
The other examples were all taken right off of the Arduino website. www.arduino.cc
Beavis also has a nice example of controlling a filter with LFO shapes generated by the Arduino. I think you will find that the best results come from controlling analog circuits with the arduino, instead of trying to process the guitar through it. Check this out, I haven't built it, but those LFOs can be applied to just about anything. Very cool stuff. http://www.beavisaudio.com/projects/DSWF/

derevaun

Have you looked at the FV-1 from Spin Semi? It's programmed in a syntax that is sort of close to assembly, but structurally it's logical and orderly. A benefit is that you could theoretically put an Arduino (or any microcontroller with PWM) in charge of the FV-1's switches and pots. It sounds great; its direct ancestors are Alesis reverbs.

There's also the Parallax Propeller, which has 8 independent processor cores at 32 bits. I haven't seen much DSP-style experimentation with it, but it seems capable. Its programming language is high level but closer to Python & Basic than to C & Java.

thedefog

Quote from: derevaun on May 05, 2011, 04:49:23 PM
Have you looked at the FV-1 from Spin Semi? It's programmed in a syntax that is sort of close to assembly, but structurally it's logical and orderly. A benefit is that you could theoretically put an Arduino (or any microcontroller with PWM) in charge of the FV-1's switches and pots. It sounds great; its direct ancestors are Alesis reverbs.

There's also the Parallax Propeller, which has 8 independent processor cores at 32 bits. I haven't seen much DSP-style experimentation with it, but it seems capable. Its programming language is high level but closer to Python & Basic than to C & Java.

I saw the FV-1 and the parallax propeller today when I was looking around. I was turned off by the FV-1 due to the low bit rate on the DAC. The Parallax looks very cool, but maybe a bit too complex for me. Yes, I suck at math and algorithms, which is why the Arduino was so appealing to me. There are so many examples out there that anything you can think of probably has some sort of library written for it already. I guess I'm trying to find something that has a good following in the DIY community so that I have somewhere to go as a starting point and for debugging help. Unfortunately my brain can't wrap itself around some of the more complex C stuff, let alone assembly. The closest I've gotten to assembly is hacking NES roms.  :icon_sad:

octfrank

Just wondering what you mean by "low bit rate on the DAC" in the FV-1? DAC is 24-bit running at sample rate so a little confused.
Frank Thomson
Experimental Noize

thedefog

Quote from: octfrank on May 06, 2011, 01:40:24 AM
Just wondering what you mean by "low bit rate on the DAC" in the FV-1? DAC is 24-bit running at sample rate so a little confused.

Huh.. I must have read something wrong somewhere. I thought it was only 12-Bit. I stand corrected.