Glass FM : A 4 operators FM synth

Hey Everyone!

I decided to build a 4 operator FM synth for the Organelle. This one is far less heavy on processing than my Juno-104 patch and I was able to push it to 12 voices of polyphony (it could go near 20 if one would need it).

I uploaded it to patchstorage:

Let me know what you think and if you find any bugs!


This is really cool! nice work! The paging works well, I like how the screen says what the next page is.

One thing I noticed is the knobs sound a little ‘steppy’. This is because the update rate on the Organelle knobs is pretty slow. Sometimes it is desirable, but often you want a smooth feel. To fix you can do one of these:

[r knob1]
[lop~ 5]
[s~ smooth-knob1]    

The low pass filter filters out the steps. You can also play with the cutoff freq (5) to get an ad-hoc portamento…
or use the line

[r knob1]
{$1 40}
[s~ smooth-knob1]

or using the message [line] if you don’t need it as a signal

I was also thinking of some kind of preset functionality for patches like this… but maybe this is another discussion. something like holding the aux button enters preset mode, then you can save and recall presets with the keys…



your work is awesome! for real.

thx for having someone like you, buddy. :slight_smile:

Yeah the Ratio knobs in the oscillator page are steppy. I already use the smoothing technique via the [line~] object, but I made the time much shorter than what you suggested (I think it’s 5 ms instead of 40) and it works for most parameters. I’m guessing that since a slight change applied to a ratio knob has a great impact on the sound, that 5 ms to get from where it was to the new value is too short. I’ll experiment with that. Also, I’m going to experiment with the way that the operators are connected together, because I think that the 4th operator doesn’t have as much impact as I would like it to. I’ll come back with a new version shortly…

Thanks! Glad that you enjoy it!

Revision 0.91 is here:

I added a sub-oscillator and adjusted the smoothing of some parameters. I also adjusted the oscillator a bit.

1 Like

I really like the idea of being able to save settings or make presets for complex multi-page patches like this one. Let us know if this comes about.

Regarding presets…

I’m actually thinking about this for a new patch. I come from a Max background, and in Max I would probably use the [collection] object which let you record indexed lists in a text file and then recall a list just by sending [collection] the index value of that list. I’m new to Pure Data and I’m not sure if I could do this… I think tha there’s an object called [textfile] or something like that that I could maybe use to do a similar system. I’ll investigate this in the next few weeks.

The rjdj library has some nice utility abstractions that can be used to implement presets.

Try this for great example of presets in Pure Data:

1 Like

Thanks guys, I’m going to look into these!

Ok, I’m on to something. I found a way of saving data into text files and recalling the data from text files directly from a patch, without having to go through a dialog box. It seems to work fine, and instantly too, on my computer at least, and I’m confident that it will work on the Organelle. It’s quite complex to explain in a post so I won’t go into details for now, but I’ll try to make it work for Glass FM in the next few days and post my findings. Stay tuned!

1 Like

Hey Everyone.

New version of Glass FM (v0.92) is up for download here:

This one lets you save and recall up to 16 presets. There are no preset included so you’ll have to make up your own… Details for how to proceed are in the patchstorage description.
As always, let me know if you find a bug.

Cheers, and I hope you enjoy!


Nice work!!! Works really smoothly on the presets.

Now… are you going to add this to your Juno patch too :grinning:

Yes I intend too! The problem I’m having with juno-104 is that I’m lacking a new LED color for a new page. So I might change the interface a bit so the save and load functions are on the same page… basically, the first knob would choose the operation (save or load), the second would select the preset slot. Then holding aux would save or load that preset accordingly. Will try this in the next few days…


I fixed an external keyboard polyphony bug where you wouldn’t have access to all 12 voices of polyphony. You can find the latest update here:

Make sure to backup your preset files (see top of description on patchstorage)


Hi, first, thanks for this FM patch for organelle, it s perfect! and i was asking me if it could be possible to upload “sysex” patches from yamaha dx100?

Replying just to give credit to this great patch. Use it all the time. Cheers @rawticks

1 Like

could someone post a demo of how this sounds. i dont have an organelle yet. i was thinking on getting the volca fm and then i discovered this and all the things it can do. idk how good the synths sound yet though

If you can afford it, get both. They are both amazing.

I learnt a lot about FM using the Volca and this channel
and I’m hoping I can carry that over to GlassFM