ArduinoSynth alpha
Posted on August 7th, 2007 at 2:12 am by Collin

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

8 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!

Comment by cairn — September 4, 2007 @ 10:37 am


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….

Comment by electri-fire — June 2, 2008 @ 9:27 am


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

Comment by nicolas gravel — February 26, 2009 @ 9:14 pm


Вступительные экзамены 2009

Comment by unknown — August 9, 2009 @ 9:16 am


I guess that to receive the business loans from banks you must present a firm motivation. However, once I have got a college loan, because I was willing to buy a house.

Comment by Tracy23Delaney — April 24, 2010 @ 7:43 pm


Monthly Treat. Schedule a treat for yourself once a month. It couldwow gold be on your lunch break

Comment by carbuncle — May 21, 2010 @ 1:56 am


I love you not because of who you are, but becausewow gold of who I am when

Comment by carbuncle — May 21, 2010 @ 1:57 am


Many players said that 2moons dil

Comment by 2moons dil — June 2, 2010 @ 6:34 pm


Comments RSS

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>