i tried to build an fm synth like the humbleaudio one, which is not released yet, but which looks very promising:
instead of 4 ops i created 3 operator. (more easy for me:-))
and i took the rows from high to bottom, not from left to right… not sure if this was the best idea, but it seemed to me more logical during i made it.
also i was more interested in the matrix mixer beeing cv controlable than in the index… also no shape for the start, but we could change this later.
in the end its not about cloning the humbleaudio one, but use it just for inspiration…
now, it works, but please see this as a work in progress, i need your help. This is nothing special, there are a lot of people much much more cappable than me in doing such things, so i just began this. And i hope you guys can teach me what i did wrong or what can be done more easy and so on.
about the synth: its a 3op synth with a matrix mixer. (No envelopes! those should be applied from the outside. like in the synth in the picture…)
3 sine synths which can PM (not FM!) each other and itself freely.
The “A” Row is about OP1.
A1 - Op1 into Op1
A2 - Op1 into Op2
A3 - Op1 into Op3
The “B” Row is about OP2.
B1 - Op2 into Op1
B2 - Op2 into Op2
B3 - Op2 into Op3
The “C” Row is about OP3.
B1 - Op3 into Op1
B2 - Op3 into Op2
B3 - Op3 into Op3
(disclaimer: “OPx into OPy” means that OPx will modulate the Phase of OPy)
The “D” Row is about the Pitch. Theres a scale quantiser after the input.
D1 - Pitch of OP1
D2 - Pitch of OP2
D3 - Pitch of OP3
thats it for starters. maybe a general tuning knob should be there.
more should be added in the future, but for now thats it.
i like how it sounds, but i have some problem with the “gain staging” of the incoming cv.
When i just PM one OP i would like to raise the gain, but if i do this for all and i PM everything i pretty quickly just get noise.
so thats the reason i put an limiter into every PM operator.
but nonetheless, i´m sure theres a better way to do this.
also, is there a way to have “ratios” instead of a scaled pitch tune, like i have?
i did not found a way…
beside all that, please enjoy:
3op-synth.lua (87.7 KB)
(its a custom unit. put it inside the “presets” - “units” - “custome-units” and load a custom unit. than open the preset there.)
all the best,
emil