FM programming help needed

Moderator: Solaris Moderators

Post Reply
christeck
Posts: 81
Joined: Sun Sep 21, 2014 9:13 am

FM programming help needed

Post by christeck » Sun Nov 09, 2014 2:40 pm

Hi all,

currently I try to get used to FM on the Solaris, though to little avail so far. The Solaris behaves differently than my other machines (Access Virus, Korg Z1, Korg Kronos) when it comes to frequency modulation.

What I want to achieve is "simply" a modulation where both the pitch and harmonics across the keybed remain constant. Unfortunately, I get this working only by using the sync feature, eliminating non-harmonic partials.

Can anyone savvy provide an init patch with the basic parameters in place, or is it simply not possible with the current OS?

John Bowen
Site Admin
Posts: 1660
Joined: Sat Apr 07, 2007 3:00 am

Re: FM programming help needed

Post by John Bowen » Mon Nov 10, 2014 4:57 pm

The controversy goes back to a long discussion I had with the coder for Solaris. True Linear frequency modulation is what he programmed in the Solaris. This does not track across the keyboard, as an exponential control would.
Of course, because of Yamaha's DX-7 and others, 'FM' was advertised as the type of synthesis used, when in fact, it's more a phase modulation (PM).
I also was a bit disappointed when first using this, as with my plug-in for Scope was set up with exponential FM.

Of course, you have that as well - the choice of 'Pitch' as the destination is exponential FM (and in fact, was how I initially had it labeled. We decided in the end that some people would be confused if the choice showed Expo or Lin FM).

What we need is a true PM oscillator type, which has always been in the plans. Getting new Osc Types added is a bit tricky now, because it could affect polyphony, but I do still hope to get a PM model added in the future.

cLoudForest
Posts: 6
Joined: Fri Aug 08, 2014 11:25 am

Re: FM programming help needed

Post by cLoudForest » Sun Jul 19, 2015 2:18 pm

Please forgive the long message, but I want to lay out in detail why I think there's something amiss with linear FM on the Solaris.

The possibility of using Linear FM on the Solaris was something I was really interested in, but having now tried it, the current implementation of linear FM just doesn't seem right to me. I've spent some time today investigating what might be different about the Solaris version of "LinFM" by comparing to the results of linear & exponential FM on my old Nord Modular and viewing FFTs of each using the Voxengo SPAN VST plug-in.

I set up a simple carrier-modulator pair of sine waves on the Solaris, both oscillators set to the same frequency (A3=220Hz), and did the same on the Nord Modular. Now, when I used exponential FM on both synths ("Pitch" on the Solaris) the results were almost exactly alike, which one would expect. At low modulation depths one sees a characteristic short series of evenly-spaced harmonics, but as the modulation depth is increased that series gets shifted upward in frequency because there's a DC component in the modulation due to the asymetry inherent in the exponential modulation. The other prominent feature is a strong low frequency component that is introduced. Here's two images showing the effect of increased modulation depth between the two images (10% depth -> 16.9% depth):
Solaris Exponential-1.png
Solaris Exponential-2.png
Now, with Linear FM you shouldn't see the sort of harmonic shifting that occurs in exponential FM. Also, irrespective of the depth of the modulation, partials are only supposed to appear at integer multiples of the base frequency when using a 1:1 ratio of carrier-modulator, although the amplitude of those partials will change as the modulation index increases. That's not what you see when using LinFM on the Solaris, though. First, here's the Nord Modular doing linear FM (oscillators are still 1:1 frequency @ 220Hz).
Nord Linear.png
Note how the partials all occur at integer multiples of the base frequency of 220Hz (i.e. 220, 440, 660, 880, 1.1k etc). Now look at the Solaris version using the same base frequency of 220Hz.
Solaris Linear.png
It's wierd to note that the Solaris LinFM actually resembles exponential FM more than it does linear FM. There's both the shifted series due to some DC component (300, 520, 740, 960 etc) and the strong low-frequency component. Most noticably none of the partials appear at integer multiples of the base frequency of 220Hz, they're all over the place!

Due to the above, my conclusion is that LinFM on the Solaris isn't actually linear FM, which is a real shame for me personally because it's the only feature I've been disappointed in so far. There must be something awry here, right? I'd really LOVE to see this be fixed so that we can use true linear FM on the Solaris and I don't believe we need a new oscillator type to fix it: the existing LinFM just needs to be changed to work the way linear FM should. Thoughts?

John Bowen
Site Admin
Posts: 1660
Joined: Sat Apr 07, 2007 3:00 am

Re: FM programming help needed

Post by John Bowen » Sun Jul 19, 2015 2:39 pm

Thanks for the in-depth post! I will send this to the DSP coder who did the design, and ask him to comment.

JB

cLoudForest
Posts: 6
Joined: Fri Aug 08, 2014 11:25 am

Re: FM programming help needed

Post by cLoudForest » Mon Jul 20, 2015 11:39 am

Just as an addendum to yesterday's post: there only seems to be an issue with audio rate sources when using the LinFM modulation destination on the oscillators.

To determine whether the problem was specific to the oscillators as the modulation source, I tried using a sine wave LFO set to 440Hz modulating oscillator 1, also at 440Hz. Upon raising the modulation depth I got the same inharmonic result as before. When I next tried using a LFO at a standard, non-audio rate, the maximum and minimum displacement of the frequency of the modulated sine wave from its original frequency were the same, which is what you would expect with a linear modulation.

So it seems that audio rate modulation is specifically the problem with respect to the LinFM, which pretty much renders it unusable for FM synthesis unfortunately.

minorguy
Posts: 62
Joined: Fri Dec 05, 2014 12:09 pm
Location: San Jose, CA, USA

Re: FM programming help needed

Post by minorguy » Wed Jul 22, 2015 8:06 am

When I read that the Solaris could do both exponential and linear FM I was also hoping (even expecting?) that it could do Yamaha style FM, whether you want to call that phase modulation or not. So it would be great if that could be added/fixed in the future.
Solaris #249

Post Reply