Through Zero FM - TZFM

OK, you need the AKWF or at least the one included with this zip file and place it in a folder like this:

/ER-301/samples/AKWF/AKWF_0001/AKWF_0062.wav

Then place the TZFM.lua in:

/ER-301/sc/presets/chains/TZFM.lua

All should work fine - send it some nicely spaced out triggers, some fairly low voltages and a juicy envelope, I used the Double Andore mk][.

TZFM-ER-301.zip (3.6 KB)

Enjoy!!

7 Likes

Thanks for this!!

I’ve had a quick play, liking the patch - hopefully have a better play over the weekend. Cheers, Phil

1 Like

gorgeousness.

1 Like

Many thanks… it does take a little while to dial everything in right, but really… hats off to Brian for making this possible, I’m totally blown away!

FM is my favourite form of synthesis, so I’m super keen to explore this as much as possible. The reality here seems to be that any configuration (algorithm) is possible.

Any one else been playing with FM in this way? Please feel free to post anything here in this thread.

I need to read up, get some guidance on how to create the patches and do some more experiments, but… could this be FM8 in a module? :scream_cat:

I’m certainly going to try!

This sounds gorgeous!

I can’t wait to get my ER-301 later this month.

1 Like

:smiley: it’s a constant source of joy!!

I’ve been working my way through the things needed to create a fully fledged FM synth and it’s very promising, re. FM8 60+ polyphony, erm probably not, but most other things are there!! Here’s a bit of a brain dump:

The basic elements for an Operator are: Sample Player with the Perfect Sin loaded from AKWF is a more flexible choice than the Sin Osc because you have two ways to alter the frequency. A VCA with an ADSR after each Sample Player lets you adjust the envelope for each Operator just like FM8.

That’s it… all it is from there is deciding on an algorithm and using the right set of mixers and nested configurations to achieve it.

It’s even possible to do feedback patches where the Operator is modulating itself; dedicate an entire track (lets say Track 4) to one Operator, internally patch the Output back to the Speed parameter and stick a Fixed Delay in the path just after the returning signal and you’re good to go! To use this Operator in a more complex algorithm on another track, simply add a mixer wherever in the chain you would like to introduce the signal to pick up the output of Track 4.

If you turn the feedback on the delay up it produces some wicked ‘beating’ effects - tons to explore here!

I’ve been using a Ladder Filter to remove any inevitable aliasing - it’s not always needed but it definitely helps at times!

Gain staging at every step of the way is critical, it’s quite easy to make it clip but the rewards are there with a little patience!

There are definitely issues to be resolved re. tracking, I’m less interested in this side of things, although it would be nice to work it all out in relation to the ER-101 but that feels like work and well, I’m still just having fun!

2 Likes

oh I like the sound of the feedback
I’d love to hear if the ER301 can do no input mixing type feeback

Just been trying out this patch! This thing is an FM monster. Also replaced my modulating sine with my IFM fourses for fun, absolutely bonkers FM :smile:

1 Like

Here’s the first in what I hope will be a series of Operator Units; it’s a building block in a custom unit. It’s loosely based on the standard Operator in FM8. There’s quite a bit missing, however, the main features are included and I think it’s a very versatile and usable unit.

It’s called Smooth Operator - which will give you clues about my age if it doesn’t just make you laugh! :smiley:

The carrier is a sample player with AKWF Perfect Sine Wave loaded, you could replace this with anything really, although your milage may vary and well, the point is that it’s possible to generate lots of complex sounds from just the Sine.

After the Carrier there is an Inverting VCA and an Envelope VCA with an ADSR next level down. I’m not sure if the Inverting VCA is needed but for explicitly inverting the Waveform this is super clear and I like how it sounds. You might like to have your Carrier set to positive and your modulator (another nested Smooth Operator) set to negative!

The ADSR is set to a short envelope, after v/oct and speed settings this is good area to focus on - think about how each operator can have it’s own envelope so you get the modulations happening over time and not just constantly interacting. You could also try inverting the v/oct input on the Carrier Envelope Release set at your maximum desired length, so that higher pitched sounds have a shorter envelope.

V/oct on the main Unit maps to the Carrier Pitch v/oct, but also has an optional LFO (muted by default) which is a standard Sine Osc.

Sync the Carrier (and/or the LFO) by mapping the Trig parameter to the main gate input, or not - for free running modulations.

Speed is intentionally left empty. This is to keep the Smooth Operator as a discrete unit, you can add another Smooth Operator inside the current one here!

I’ve tried to keep it as generic as possible so that it could be used repeatedly and as a learning aid but I would strongly encourage making your own custom units.

Any suggestions welcome, if I find ways to improve it I will update it :slight_smile:

There’s a LOT of places where adjustments can be made, sometimes to quite extreme settings if you start turning everything in a particular direction!!

It can get a bit tiger, so watch those speakers!

Enjoy :cat:

SmoothOperator.zip (5.7 KB)

5 Likes

I’ve been playing around with this a bit more and the more I use it the more I find that it’s easier just to create what I actually want on the fly more often than using this ‘preset’.

It’s a great starting point for sure, but I’m finding I’m removing the LFO on the v/oct in quite a bit for example.

Would folks prefer it if I posted more custom units or just explanations of what I’m doing.

For example, I’ve been messing about trying to recreate the X & Z operators from FM8 with some success: for X add another VCA where you want to introduce noise, then insert a White Noise generator and a Ladder Filter under the VCA and adjust to taste. The resonance on the Ladder Filter does great things to the White Noise that complements the FM generation very well. You could add an envelope if you just wanted noise on only part of your signal etc… Is this really worth posting as a custom unit?

3 Likes

I’m loving the explanations – and as always, audio is much appreciated! Thanks for doing this.

New custom unit please :smiley:

I didn’t do the X Operator, but I did make a fairly run of the mill but pretty nice Bass patch:

Copy the contents to the following locations:

ER-301/sc/presets/units/custom-unit/Bass.lua

ER-301/sc/presets/units/mixer-channel/Feedback Operator.lua

ER-301/Samples/AKWF/AKWF_bw_perfectwaves/AKWF_sin.wav

Load Bass.lua on one channel (1) and Feedback Operator on another (2).

On (1) map the Operator A input to be the output of (2)

You might have to reload the Sample.

Play lower notes, it doesn’t sound right much above the second or third registers.

Loads to play with for a fairly wide range of bass sounds with some nice timbres.

Enjoy :slight_smile:

PluckyBass.zip (7.5 KB)

2 Likes

Awesome! look forward to checking this out later

Nice :slight_smile:

As I say,nothing special - but I enjoyed myself working it all out.

I’m keen for more resolution on the fine tuning as discussed previously. I’m also finding that the range on the v/oct isn’t quite enough sometimes, but that might just be me.

The number of places where it’s possible to make fine adjustments is a little overwhelming and I was jumping about all over the place doing this - especially with both the tuning and the mix levels for each operator. Which makes me think it might be more worthwhile coming up with some algorithms and exposing the key modifiers to external control to make these adjustments easier to do.

I might try some nice pad sounds next and when I need an X operator I’ll do that properly and post as a custom unit.

I haven’t tried yet, but I’m assuming you could have complex things happening within a custom unit all controlled via custom CV locals. And within, you could have a custom unit with it’s own set of custom CVs, except the nested custom unit CV controls could be controlled by the ‘local’ controls of the parent custom unit with additional CV processing. Ahh!

Multi Level!


1 Like

Hehe yep! Could also process the same inputs in various ways at different points in the system too :slight_smile:

Pad One

https://soundcloud.com/kel/padone-demo

A nice FM pad synth setup using the AKWF, a little reverb added after!

Please download the AKWF and unzip to the samples folder on your ER-301. Trust me, you want these if you are going to do anythign with single cycle waveforms - they are awesome!! Othewise you’ll have to relink the single cycle wav files manually.

Copy Pad One.lua to your /ER-301/sc/presets/chains/ folder.

Please switch to a stereo config using two channels on the ER-301.

Load up the chain and it should all work if you downloaded the AKWF.

Send it nice long gates via G1 and In1 (v/oct).

Crazy amounts of possibilities here, there are a total of 7 operators, three two op pairs and a rough emulation of X from FM8 for the nice noise swash!

It’s quite resource intensive!

Enjoy :slight_smile:

Pad_One.zip (14.5 KB)

3 Likes

Thanks @NeilParfitt - I’d be very interested to hear/see how you would go about mapping the CV to some of the key parameters in the Pad One patch :wink:

sounds really good! can you explain the details of the patch to those who, like myself, are not that familiar with FM? :slight_smile:

A few tips on modulation target would be great as well.

thanks!

1 Like