# Multi Waveforms Oscillator

Interesting use of the mono to quad node to crossfade waveforms.

1 Like

Thank you @biminiroad for helping me with that, I learned something new!
BTW, where I can find the complete list of math expression function()?

1 Like

incomplete list here.

2 Likes

Thank you @robertsyrett for inspiring me with your video tutorial, I’m totally new into this and glad to found a useful tutorial that I can follow!

Yes, I’ll make this module condense over time, with a simple interface and minimal visual feedback.

As I know about that visual programming, nodes are also used in video effect composition and 3D shaders.

2 Likes

I’m glad you found the tutorial useful Hopefully I’ll get back to posting new videos in a couple of weeks.

I gotta broaden my horizons!

1 Like

Incomplete? Are we missing some in the docs that exist in the expression node?

I believe the smoothstep syntax is incorrect, you can use `a^b` as well as `pow(a,b)` and the tanh/atan function is omitted, I’m not sure what other wonderful functions have yet to be revealed It’s mostly complete I’m sure. Maybe “including but not limited to” would be a better characterization.

2 Likes

[Update]

The v0.2 with auto cycle option. multi waveforms oscillator 2.audulus (73.2 KB)

2 Likes

I had no idea the mono to quad node would do that when used with the waveform node!

1 Like

Final result (without documentation)

I’ve clean up (almost) all the unnecessary patch, replace some complex parts with the right math expression and simplify switches

Multi Waves Oscillator v1.0

multi waveforms oscillator v1.audulus (107.9 KB)

4 Likes

Looks good! I made a few adjustments to my copy that you might consider:

The “Hz” input is really looking for a 1/Oct signal. Some nodes actually want a Hz value, so I think it’s worth keeping the two things distinct.

The Select toggle doesn’t keep its spot in between loads because the sample and hold node resets. So I just made the Preview out a quad waveform breakout port when in “hardstep” mode. I also changed the scale knob’s max value back to 1, and added internal scaling of 0-10. This means I can attach an LFO directly to the knob and is sweeps the full scale of the options.

The rest of the stuff I changed is just personal taste:

• I like to adjust amplitude downstream so I took out “amp”
• I’m fine with using an oscilloscope when playing or just plugging in “-10” to the 1/oct input for waveform preview. But I did like that you had it set up that at 0 it triggered the Preview mode.
• I don’t like hidden keyboard nodes as I forget they are there and end up accidentally triggering them and go look for them in the middle of a patch.
• I’m fine with an external frequency knob.
• I made the auto cycle look more like a heart <3

I think it’s a neat idea opting to have the Reference frequency be A or C. I’ll test it out to see if it makes using external eurorack gear easier.

Thanks again for sharing.

Edit: And I’d like to reiterate that this is really impressive in terms of complexity and execution, especially for a first draft of a module. Things are also pretty well organized internally, it was pretty straightforward to go in an make the adjustments I wanted.

MVO v1-RHS.audulus (89.9 KB)

5 Likes

I’d like to second that. Great job!

3 Likes

Thank you all for the positive feedback!

[Update]

MWO V1.1
MW-OSCILLATOR v1.1.audulus (114.2 KB)

• things get more organized and efficient
• 1/oct input is now labelled correctly
• replace built-in ”hidden” keyboard with additional Hz input
• the amp is now output as 1 when nothing is connected as an input ( input?input:1 )
• all knobs are now 0 to 1
• built-in 1/oct knob automatically disabled when 1/oct or Hz input is connected and both will be disabled when holding wave preview button
• select button will perform hardstep cycle, while select knob will perform smoothstep cycle. When using knob after using the button, cycle position will reset to one due to knob initial position.
• auto cycle mode will always use smoothstep transition.

Bonus little demo
Bonus patch.audulus (143.9 KB)

2 Likes

Bonus patch dinner remix.audulus (759.8 KB)

I had fun patching with your demo while eating dinner. I like the timer based sequencer thingy too. A very different approach to what I usually would do.

4 Likes

Ahh, thank you so much for that “dinner remix” hahaha! I’ll learn a lot from it. Also, it’s morning in my current time, your patch sounds like a mood booster. Thanks again @robertsyrett

3 Likes

You know what… this is the first time I noticed that the font Audulus uses changes the apple logo character into a bug icon.

VERY SUBTLE, @taylor

4 Likes

MW-OSC v1.1.1
MW-OSC v1.1.1.audulus (124.6 KB)

Add in clamp function, now ’auto’ will cycle between the given minimum and maximum number (start to end) instead of all waveforms. (Min and Max will not be able to pass each other)

Test patch.audulus (203.2 KB)

2 Likes

Yeah, really diggin’ this demo vibe.

1 Like

Here’s my “after dinner re-mix”: MW-OSCILLATOR_bonous_patch_after-dinner-remix.audulus (626.8 KB)

3 Likes

Awesome.

2 Likes