@Lindon so as a work around you can create a Faust based FX and drop it into a Hardcoded Fx slot, heres the faust code for a simple FM FX (as provided by Gemini):
import("stdfaust.lib"); // Modulator Controls modFreq = hslider("Mod Frequency [unit:Hz]", 100, 10, 2000, 0.1); modOctave = hslider("Mod Octave Offset", 0, -3, 3, 1); modDepth = hslider("Mod Depth", 0.2, 0, 1, 0.001); // Calculate the effective modulator frequency using the octave offset effFreq = modFreq * ba.semi2ratio(modOctave * 12); // Modulator oscillator (sine wave oscillating between -1 and 1) modulator = os.osc(effFreq); // Convert depth to a delay modulation amplitude (in samples) // A small maximum delay (e.g., 2ms) keeps the FM effect tight and clean maxDelayMs = 2; maxDelaySamples = ma.SR * (maxDelayMs / 1000); delayMod = (modulator * modDepth + 1) * (maxDelaySamples / 2); // Apply Phase/Frequency Modulation using a fractional delay line fmEffect(x) = de.fdelay(maxDelaySamples, delayMod, x); // Process stereo or mono input process = _,_ : fmEffect, fmEffect;