ArduinoSynth alpha

| 4 Comments

Arduino Synth alpha

boards

The ArduinoSynth is my first attempt at microcontroller programming( and pretty much any coding at all beyond a little html). It took me a bit to get started but it's turning out to be a fun way to learn the language.
So far it's a 12-note monophonic synth with transposition selection via one 10K pot. I'm using a gutted toy keyboard for the switches and a simple low pass filter to smooth the output a bit. Here's the schematic:

Simple LPF


Features I'd like to add:
- Another octave (maybe add a transpose switch on each of the next octave, then they can share pins with the first)
- Last note hit priority
- Portamento (note-slide)
- Real sine wave out (no external filter, please)
- Polyphony (I had it working badly, need better math)
- any real keyboard feature in existence(or not) attack, decay, waveform, vibrato, etc.

Source can be found here.
Audio sample here
Sample with no LPF here

4 Comments

Just wanted to let you know that I caught this project on the MAKE blog last week and I'm very interested to see how it goes. I'm looking forward to building it myself once I have time to hunt down a cast-off keyboard or buy a handful of momentary switches. Keep up the good work!

I have my arduino only 2 weeks now and have to learn coding from scratch.
I get loads of ideas that will take ages to imnplement, you may want to cooperate? I just saw your sketch.
Here's your oscillator:
for (i=0; i<= cycles; i++){ // play note for t ms
digitalWrite(speakerOut, HIGH);
delayMicroseconds(hperiod);
digitalWrite(speakerOut, LOW);
delayMicroseconds(hperiod - 1);
On the fly PWM implementation idea: Declare PulsWidth parameter
Shorten the HIGH period , lengthen the LOW period by (PulsWidth)
Have PulsWidth read from analogPin
Make PulsWidth LFO from "Fading" sketch: http://www.arduino.cc/en/Tutorial/Fading

Well, I have some pretty clear ideas on drawing waveforms into an array with analogIn , and reading them as a sample. Maybe I'll post them at adruino.cc . Probably.

I hope you're still into arduino....

your crazy well focused, learn more maths and phyisics about OP AMPS, FILTERS, ETC, use the same filter but adding a op amp in "voltage folower" configuration, i t s nescesary to amplify a good signal and not draw a messy signal from arduino currents

Leave a comment

Photo Feed