Close

More Waveform R&D

A project log for NanoEgg Music Synthesizer

A powerful little music synthesizer with a classic look!

t-b-trzepaczT. B. Trzepacz 06/02/2016 at 09:021 Comment

So, I added some features to my waveform calculation equations at Desmos.com, namely a smooth transition between sinewave and triangle wave, and pulse width modulation on squarewaves.

I decided that I'd really like to hear what I am generating.
I remembered that Shadertoy, the awesome online WebGL shader development and sharing environment, does have a way to render live sound as well. So I coded that up and got this: https://www.shadertoy.com/view/ldKSWm

(This was supposed to be an awesome embed from ShaderToy, but the site ate it so you just get a poorly captured Youtube video.)

Ultimately, the goal is that you will be able to turn the knob and smoothly select between all possible waveforms. You might even be able to attach it to an LFO. It would be nice if you could adjust the sine-y ness, square-y ness, and duty-cycle independently, but there are already so very many knobs on this box, I think that will be too much...

The great thing is, now I have a block of (rather messy and bad) code that can be used to generate all the waveform tables I need for a nice continuous knob transition of waveforms. If I have 127 waveforms of 256 samples each in 16 bit quality, it should come out as a bit less than 64k, which should be fine given the 256k of Flash in my target platform.

The next step is to generate those tables and include them in the software!

Discussions

T. B. Trzepacz wrote 06/02/2016 at 09:04 point

Hackaday deleted all of my iFrames. Meh.

  Are you sure? yes | no