[sdiy] super cheap synthisizers
batzman at all-electric.com
Wed Jun 12 12:44:36 CEST 2002
Perhaps I should have chimed in earlier on this since it's the
kind of thing I'd do. But as you'll have noticed, I've been a bit
I don't use AVRs but only because I haven't gotten round to them. I have a
programmer that will do all that stuff and for this kind of thing, I'd
certainly recommend them. There were people on the atmel list who were even
overclocking the things to more than twice their rated speed. So confident
were they that they were putting them in consumer products like that.
The trick is with all these small processors is to use multiples. They're
so cheap. And being flash based means that it's largely a single chip
solution to a great many problems.
I don't like VCOs. I just can't deal with them and my hat goes off to all
those here who work with them in such a confident manner. True legends. But
for me, temperature compensation and expo converters and all that stuff is
just a pain in the ass. I dealt with that stuff when there was no other way
but every time I did I was looking for something a lot easier.
Should I be doing something like this I'd probably plan on using 3 AVRs. 2
of them for oscillators and one to control everything else. Including MIDI
etc. The oscillators would be shaped outboard like korg once did it.
Leaving the AVR to produce the raw clock and maybe stretch to PWM and even
a little low speed FM. You just have to work within the limitations.
The outboard shaping would be fairly simple but could be controlled from
the AVR to give you all kinds of options. If cheap is your goal then just
don't go overboard. You only have to write the code for one oscillator.
Even if you wanted 6. IT's free running and autonomous but perhaps sits on
an I2C bus for control. Use the serial port in a creative way. Your code
will also be relatively simple and of course mean and lean. Which is what
you want so you can be as fast as possible.
The other AVR needs to do a more traditional voltage control type
arrangement but it can be 8 bit and linear. Maxim make a number of
multi-channel D-A type devices. That is to say, devices with on D-A but
have sample/holds on 4 or more outputs. > generate voltage and stabilize
--> lock into Sample/hold, -->move onto the next one... That kinda thing.
Though they might have an even better solution these days. The point is
that you've now got a 2 chip solution to control anything else you need to
control and it's done fairly fast.
So Midi comes in and is read by the first AVR. You can jam an opto right up
it's bum and it'll deal with it. Output is even easier if you wanna dump
sysex. A pair of 220 ohm resistors. That's it. IF you don't want to do
sysex dumps or output MIDI of any kind, you can use the serial output to
talk to the other two AVRs. If you do need MIDI out, then you can use a
bit-bang routine to do I2C.
IF you need to store patches then you can use a tiny little I2C E2PROM.
Just whack it on your I2C bus and give it a number. Of course your filter
and VCAs are up to you. How complex or how simple you want to build them.
Roman was telling me once about a quad VCA chip by Analog Devices. The
controls are log but that probably doesn't matter if you wanna knock
together a little 12 db State Variable Filter like the PAIA fatman or
something. You'd have enough VCAs to provide cutoff, Q and one left over
for your actual output VCA.
Envelopes and LFO. all done in software. If you want some kind of front
panel you could use a 4th AVR just to deal with that. All hanging off the
one I2C bus but you might find there are enough spare pins and horsepower
to do that kind of thing with the same AVR.
The beauty of this kind of deal is that you don't have to worry about
stability. You can lose a lot of sleep over this stuff trust me. All those
little distracting intricacies can be largely ignored and you can get on
with the fun bit of making it sound real good. Or real cheesy. Whatever 'n'
hell you wanna do.
Of course there's an even easier way. Use a SID chip. You only have to
drive that. And if your output stage is half way reasonable it won't be
Be absolutely Icebox.
_ __ _ ____Happiness is a warm penguin____
| "_ \ | |
| |_)/ __ _| |_ ____ ALL ELECTRIC KITCHEN
| _ \ / _` | __|___ | Geek music by geeks for geeks
| |_) | (_| | |_ / /
|_,__/ \__,_|\__|/ / Bullshit --> http://all-electric.com
/ ,__ Music -----> http://mp3.com/electrickitchen
More information about the Synth-diy