Elements pitch discrimination and predictability

Hi!

I’m considering purchasing Elements for use as a principal sound generator in a project which (among other things) involves studying various microtonal systems and relationships. For this a predictable and precise pitch output is very important. As I don’t have prior experience with modular synthsizers, I would be greatful to learn wether the choice of Elements is ok for this.

My worries come from experience with the venerable VL70m physical modelling synth which produces slightly unpredictable pitches, and due to a comment about Elements I came across on another forum but which I didn’t completely understand (will link to it below).

So, my first group of questions is about input pitch discrimination.
Is the module capable of distinguishing pitches/voltages at the V/Oct input that are only 2-3 cents apart?
Is the pitch discrimination even (same in cents) across the whole range or does it differ between the low and high registers?

Secondly, I’d like to know if the pitch of the output is `predictable’.
I understand that the Geometry, Coarse and Fine parameters influence pitch.
So, granted these three are kept at a fixed value, does the pitch of the sound coming out of the Elements correspond simply and predictably to the pitch at the V/Oct input, or does it ‘float around’ due to the state of other exciter’s and resonator’s parameters?

In other words, if I first set the Geometry parameter and tune the module via Coarse and Fine knobs, and then feed a V/Oct signal which corresponds to an “A-14 cents flat” (just intoned major third above F), will the pitch of sound from Elements really be 386 cents above `12TET’ F ? (I can tolerate a fluctuation of a few cents, but no more than that).

Many thanks, and apologies if my inexperience with these modules made me ask silly things…

Mato

PS The post that got me confused is here:


The mention of `atonal’ got me worried if I will be able to control the module easilly or not…

I can’t comment directly on this (pichenettes might be the only one who really can). But I wrote a tuning application for analog oscillators and in the process I made some observations that could be interesting for you as well.

From my experience, it is very hard to find something which has a pitch accuracy better than 3 cents over the whole range of 5-6 octaves. Be it analog or digital, some error remains. Even if the oscillator is digital and has a super stable pitch, there is some error in reading the pitch CV. Most people won’t even be able to hear a ±10cent deviation, so its save to assume that most manufacturers will not care if their oscillator is a few cents off.

You can look at this post where someone observed a rather large inaccuracy in the pitch which apparently comes from the limited accuracy in the MIDI to CV interface that was used. I’ve never seen any bad post about this particular interface, but that shows once more that your specific requirements might be hard to meet. Simply because most users won’t need such a high accuracy and thus products are not designed for this.

IMO the only way to meet such tight requirements is to stay entirely inside a computer and use pure data / reaktor, maxMSP or similar environments.

> Is the module capable of distinguishing pitches/voltages at the V/Oct input that are only 2-3 cents apart?

The module has a range of 7 octaves, with about 12-bit of ADC resolution (some resolution is lost due to the bad performance of the STM32F4 ADC, but is recovered through averaging/filtering).

That’s 7 x 1200 / 4096 = 2 cents between consecutive steps.

> Is the pitch discrimination even (same in cents) across the whole range

Yes.

> So, granted these three are kept at a fixed value, does the pitch of the sound coming out of the Elements correspond simply and predictably to the pitch at the V/Oct input

The frequency of the first harmonic of the spectrum corresponds simply and predictably to the pitch at the V/O input.

If the module is configured to generate a harmonic spectrum (which means that the spectrum has harmonics at f0, 2 x f0, 3 x f0, 4 x f0 ; and that the generated waveform is periodic), the perceived pitch is the same thing as the frequency of the first harmonic.

If the module is configured to generate a non-harmonic spectrum (which means the waveform does not repeat itself, and the spectrum is made of partials in non-integer frequency ratios), then the pitch depends on your own perception - two people might disagree as to which note is actually produced. If you have a keyboard with a ring modulator, try a patch in which the two oscillators are detuned (not by an exact octave or fifth - something inbetween) and ring-moded. Now play an A on the keyboard. Does it really sound like an A or like some dissonant bell-ish tone? This bellish tone will perfectly and evenly follow what you play on the keyboard, it’s just that it’ll sound like a dissonant chord - not like a pure, periodic waveform. You might also be familiar with this phenomenon if you tried to identify the notes played by bells or cymbals, or a big sheet of metal or a plastic bucket. Elements can easily make such sounds - there’s only one position of GEOMETRY that generates a pure, harmonic spectrum (but it’s fairly easy to find it, because the pot has a “virtual notch” at this position).

> will the pitch of sound from Elements really be 386 cents above `12TET’ F ?

Again, Elements can generate sounds for which there’s no agreed-upon definition of pitch.

May I add also need a very accurate CV generation module (midi 2 cv) to do what you want.
Maybe have a look at silent way
It can measure pitch inaccuracies and generate a tailored CV curve to compensate.

I just want to stress once more that I think eurorack is not the best platform for high-accuracy pitch.

1. Go through one active multiple with your pitch CV. Depending on the active multiple, this will give you up to ~6 cents additional pitch error.
2. The typical protection scheme is a 1kOhm resistor at the output of a module. Input impedance is typically 100k. When one module sends out 1.000V, another will receive 0.99V. Which is another 12 cents of error. Connect two CV inputs to a single CV output via a passive multiple and you get 24 cents of error.
3. Especially analog oscillators have a high temperature drift. Open your window or blow on the faceplate of a module and you get another 2 cents of error. For digital modules it is not as critical, but temperature drift is still there.
4. Most components used in typical pitch-CV modules (like quantizers, multiples, MIDI-CV interfaces, etc.) are not designed for high accuracy. Take for example the Penrose quantizer from Sonic potions. It uses a MCP4801 DAC to create the CV out. That DAC is 8 bits, which means 256 steps over the range of 0-5V. That’s 20mV step size which equals to another 24 cents of error (assuming the DAC is perfect - which it is not! Its a pretty cheap DAC). EDIT: The steps are probably scaled so that they line up nicely in semitone intervals. So the error probably is much smaller. The DNL of this DAC is 0.1 LSb typically. That results in 2.4 cents of error.

See what I mean? These estimates are kind of worst-case. I’m sure you can find modules that will just meet your requirements. Maybe you will even have to buy multiple modules of the same kind to measure them to find the ones in a batch that are accurate enough. But what’s the deal if you must be careful about every single module you insert into your chain? Creativity killed. Why not simply stay inside the computer? Hands-on control can be achieved with a midi controller.

PS: I’m kind of surprised about how high those numbers are. If I made any mistake, please let me know and I will correct this.

You’re correct about the numbers - but regarding 2/, well designed MIDI interfaces or pitch CV generation modules don’t have the protection resistor at the back and use a different protection scheme. I can guarantee that Mutable Instruments Yarns’ outputs don’t cause voltage drops (and are accurate to the mV), buy another MIDI-CV interface at your own risks…

About 4.
I’m really happy with the Penrose quantizer… I can’t imagine that it has 25 cents inaccuracie. It would sound horrible.

Yes, I’m happy with it as well. I guess the scaling makes the individual steps from the DAC sit right on the semitones. So yea, its probably way less than my estimation (original post edited). Considering the DNL of the DAC is 0.1LSb, that would result in 2,4 cents of error. Yea, that sounds more reasonable than my 25 cents :wink: The protection scheme on the penrose has the 1k resistor in the feedback loop, so 2/ is not a problem for the penrose either.

Many thanks for all responses.

One of the aims of this project is to create a system which would be usable by a blind person. For this reason anything based around Mac/PCs or touch screen devices is not applicable.

Regarding pitch accuracy, I’m quite aware that both theory and experience suggest that generally we do not discern well steps of less than about 10 cents. However, I’m absolutely convinced that there are certain circumstances under which we do feel and are able to notice “errors” of about 5 cents. So, if Elements works with precision of about 2 cents, that is quite perfect.
I expect this to be used with harmonic tone most of the time. If inharmonic sounds will be used it is of course absolutely acceptable to tune the patch via tuning knobs before use, if the system is going to track V/Oct changes predictably therefrom.

Initially I intended to implement CV outputs into the controller part of the system myself, however now I see that it might be wiser to go with YARNS+Elements for pitch communication, at least in the first phase - as I’ve got the MIDI output working well already.

The controller currently employs MIDI PitchBand instructions in front of NoteOn messages, supposing that the synth is setup for a 2 equal tempered semitones pitchBend range. (I was considering SysEx tuning messages but dropped the idea due to the limit of 12 notes, device dependability, and longer time required to communicate that way.)

So, before I place my order for the modules, I’d be greatful if you could assure me that Yarns+Elements would be able to process such communication well, or please point me if you already see possible problems/modifications which I’d need to take care of first.

Many thanks once more and best regards,
Mato

Yarns has an adjustable pitch bend range, by default 2 TET semitones - so it’ll work for your application.

Thanks, it will be Yarns+Elements then :slight_smile: