Hardware wavetable on an arduino

Please remember the terms of your membership agreement.

Moderators: valis, garyb

User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

Well its an EEPROM so its programmable from the microcontroller, (actually flash is a kind of EEPROM) i got 128k of wavetables on it, some are ones i made myself, some are from the AVR-X synth and some are from Wiard(sp?) modular wavetable osc.
each of the 32 wavetables has 16 waves carefully kept in phase (for mixing) and it completely scannable so you can start the wave playing anywhere in the 16 wave group (and below and above by a switch) and if there is a glitch between the last and first sample it is fixed with a 4 sample slope so there is no click. this is great for the 2 "main" oscillators having a delayed tracking and getting very rich sounds.

The third oscillator is just used for attacks, exra beef for fade in type dnb sounds or a bit of color on the accent it only has an a/d envelope. (but still use any wavetable and be modulated)

now i am working on tweaking the envelopes and modulation matrix, (huge "long" integers rather than floating point, the little chip can handle that and still loop quickly) its amazing how a proper log decay makes things sound A LOT better.

Untill i get the "LCD backpack" i ordered i can not use encoders/menu system so i have 16 knobs multiplexed, and 16 knobs coming in by MIDI(doepfer pocket control). they have pretty much run out because there is a comprehensive modulation matrix(encoder code is working, just no display to show pages).

For now i can modulate the filter frequency with env1, env2, LFO, and velocity
and the frequency of osc 3 with the same things. whan sync is on changing the frequency of osc3 gives a lot of nice timbres. (it does not sound like analog sysnc, more like paradox)

I started out with a little fun project but it has really grown, and is becoming a proper synth. once it is done it will take proud place in my studio.
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

Do you use the internal EEPROm or an extra unit external to the AVR microcontroller ?
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

the avr flash has to be programmed every time i make a change, witch takes too long, so its external for now. ill probably fill the external one, or even get a larger one for more wavetables. and the avr flash is limited. i will use it for presets.

i looked in to using an sd card but the interface was too slow.
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

So it is a 128 kB external EEPROM ?
Do you upgrade the wavatable through MIDI ?
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Re: Hardware wavetable on an arduino

Post by at0m »

NME awards!
http://www.nme.com/awards/video/id/1rAw ... oscillator

could be worse for half finished device ;p
more has been done with less
https://soundcloud.com/at0m-studio
User avatar
iSiStOy
Posts: 713
Joined: Mon Jun 20, 2005 4:00 pm

Re: Hardware wavetable on an arduino

Post by iSiStOy »

Well deserved! :)
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

Thanks :)

@ HUROLURA
actually due to sheer noobishness and stupididty the 256k EEPROM i got was 256k BIT, so i can only put 32 k in there, (8 x 16 waves, 256 bytes each) what i needed was a 1 meg EEPROM to put 128k in. anyways i selected 8 of the wavetables and made a 32k version of my ROM file.

anyways i found some 2 magaBIT winbond flash EEPROMS on ebay very cheap, i will use them, and still have room for another 32 wavetable for a total of 64

the flash could be programmed from the microcontroller, since it does not require different voltage to burn, (through MIDI or USB) but its easier just to put it in the chip programmer and flash it. anyhow if i release a board/kit it will use internal waves for reduced chip count and cost

I found some waldorf waves in a software update for the waldorf wave, they are not progressive though. also i made a few myself once i found out the proper note (well its a note - a certain amount of cents) to record at so i dont have to screw about resampling

after breaking the program and the circuit by changing to external ROM i have gradually been bringing it back to where it was, guess what. i dont like the SSM2044 at all. even with a compensation circuit it gets much quieter when the rez is turned up then when it self oscillates it becomes really loud, and it does not self oscillate evenly. at higher filter frequency it will oscillate much sooner.

I tried putting in a second one, and leaving its rez low, but the volume on the rez one decreases so much you can hardly hear it till it oscillates.

not microcontroller friendly at all, and the example circuits of how it is used in synths are missing major things like how they compensated for that behaviour.
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

Regarding the SSM2044, the fact that it is not "microcontroller-friendly" is not that much a surprise: it IS an analog component. Maybe some ROM compensation curve control could help in case the beahviour is the same from one chip to the over.

Maybe checking some vintage analog schematics could help:

http://www.electricdruid.net/index.php? ... fo.ssm2044

What is the min and max voltage you apply to the Q control pin (pin 2) ?
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

Well i am still adjusting the Q manually with a pot untill i can get it just how i want. (the q is already supposed to be "compensated" with a circuit i got from midibox.com http://www.midibox.org/dokuwiki/doku.php?id=ssm2044_pcb but home made version)
I think part of the problem is, all of those synths had the final envelope after the filter, so they could have some automatic gain control.

and i prefer to have the envelope before the filter, which is something i also do with scope circuits. i prefer the sound that way(and in this case its easier because DACs have a free VCA in them, the vref pin).

I can probably just make the program turn the level down when the q is lower.

but i have started building this as well.
http://yusynth.net/Modular/EN/MOOGVCF/index.html
and the oscillator will be a module as well. It can even get some CV inputs.
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

You mean you put the amplification stage before the filter ?
The envelope you are writing about is the VCA enveloppe ?
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

Yes the VCA is before the filter, each osc has a separate one which also allows mixing their levels. and retaining the bit depth. since its going to be a modular module, ill also have some trigger outputs for analog VCAs (these are PWM outputs filtered and used as the DAC vref)

you can also do that backwards, and feed an analog signal to the vref, and the digital input will modulate the output level. very handy if you dont want to fart about with slow serial protocols like i2c (usually used in digital pots)
User avatar
iSiStOy
Posts: 713
Joined: Mon Jun 20, 2005 4:00 pm

Re: Hardware wavetable on an arduino

Post by iSiStOy »

Please go on! New experiments like this one, are really formative.
Neutron, you should really participate to some high-end course Assaf does... I mean synthesis through Scope is excellent but applications like that (reserved to a few people I'm not part of) could be interesting...
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

Neutron wrote:
ill also have some trigger outputs for analog VCAs (these are PWM outputs filtered and used as the DAC vref)
Cheapest microcontroller way to have control DAC ...

I just think this story will end up with a new modular hardware interface for Scope merging DSP and vintage analog sound in the most flexible way ...

CheerZ
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

scopemodular.jpg
scopemodular.jpg (84 KiB) Viewed 2686 times
wot, like that :)
User avatar
HUROLURA
Posts: 1314
Joined: Tue Feb 21, 2006 4:00 pm
Location: FRANCE
Contact:

Re: Hardware wavetable on an arduino

Post by HUROLURA »

Could be nice ...
David
Posts: 733
Joined: Wed Jan 09, 2002 4:00 pm
Location: Modular IV

Re: Hardware wavetable on an arduino

Post by David »

Now that's jaw dropping and drool worthy
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

a little update on making a modular version. I got some synthesizers.com modules and some extra blank panels to put my diode ladder filter on, and this will fit as well :)

Image

Image

Image

Now i am waiting for a part i stupidly forgot to order for the power supply, which i need to test the filter. :P

Image
User avatar
astroman
Posts: 8446
Joined: Fri Feb 08, 2002 4:00 pm
Location: Germany

Re: Hardware wavetable on an arduino

Post by astroman »

that looks pretty damn cool, Neutron :o :D

tempted to wield the soldering iron, Tom
(ok... almost - I probably couldn't do it even half as neatly)
User avatar
garyb
Moderator
Posts: 23364
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: Hardware wavetable on an arduino

Post by garyb »

serious work, impressive...
User avatar
Neutron
Posts: 2274
Joined: Sun Apr 29, 2001 4:00 pm
Location: Great white north eh
Contact:

Re: Hardware wavetable on an arduino

Post by Neutron »

Thank you!

Its got some company!

now i can start testing with some basic modules in this little frame

Image

when it is finished it will stand up, and have power supply etc. what i made there was just from stuff i had lying about, and the nice oak frame thing someone threw out.

The new version sounds a lot better, the Proper filter for the envelope signal, and proper 4 quadrant multiplying of the DACs still experimenting with the program as well, trying various things based on velocity etc.
Post Reply