Microtonal tuning and Monomachine

Hi there,

I managed to have an external keyboard trigger the monomachine synth, which is retuned to a microtonal scale via Midihub. I am composing a piece and I am recording what I am playing via the ext keyboard into the internal monomachine sequencer track.

I have disabled the internal sequencer of the monomachine (so it only sends out midi to the midihub instead of triggering the synth).

Midihub is set up to retune both the midi flow coming from the ext keyboard and the one coming from the monomachine sequencer.

Everything works unless I switch presets on the monomachine and then go back to the one I was working on: tuning is lost and it reverts to standard Equal Temperament.

Is it possible in principle to retune the same device which one is using both as sequencer and synthesizer? In the videos I saw on youtube, retuning was only available via external device.

Thanks,
Andy

Microtuning through Midihub is implemented by it producing a Pitch Bend message together with the Note On message. If the tuning stops working, Midihub’s preset may have gotten switched to another one through Program Change message produced by Monomachine when switching presets. Listening to external Program Change messages can be configured or disabled in Midihub Editor’s Device → Settings dialog.

1 Like

okay thanks! My main doubt was whether it is possible to retune the same device which one is using both as sequencer and synthesizer and not only via an external midi keyboard.

This is usually done through disabling the “Local Control” setting on the sound device. Not all of them have this setting though.

When Local Control is off, it should be sending MIDI out, but not producing notes based on it internally. It should produce audio based on the received MIDI data.

1 Like

Okay great. Yes, the Monomachine can turn off its internal sequencer triggering the synth, while still sending out midi. This setup should work in principle then. So my idea of having 2 pipelines (one for retuning ext keyboard and one for the monomachine) should be correct. I’ll give it a few more tries!

1 Like

It worked :slight_smile: managed to have the monomachine just send out midi data by excluding internal sequencing and getting everything back via midihub. Wonderful to be able to retune microtonally and in real time

2 Likes

I have been trying without success to have my multitimbral synthesizer (elektron monomachine), which is able to receive from 6 (or more) different midi channels, handle microtonality and polyphony in separate layers.

I would like to have three layers of polyphony, each handling 2 notes of polyphony. I set up a patch where (screenshot):

  1. sequencer (“from B”) sends note to channels 1 & 2 (ch filter) to MCR (using only 1&2), back into itself (to A)
  2. sequencer (“from B”) sends note to channels 3 & 4 (ch filter) to MCR (using only 3&4),back into itself (to A)
  1. sequencer (“from B”) sends note to channels 5 & 6(ch filter) to MCR (using only 5&6), back into itself (to A)

Sequencer has internal control disabled, so the synth is triggered by the notes retuned by MH only.

Unfortunately the sum is far from accurate and pitches are not in tune any longer. As I am using a Just Intonation scale, even the smallest drift in pitch will sound off.

How come the sum of three independent layers won’t be stable?

thanks in advance.

A.

image

Please upload your preset here and provide input data as seen by MIDI monitor when any of the FROM B input is highlighted. (use Settings… → Export as CSV…)

If possible, please play the minimal amount of notes to reproduce the problem, stick to channels 1 and 2 if possible, otherwise, involve as many as necessary.

For some reason tuning is now stable again.

If it becomes unstable I’ll do as you suggested.

Cheers :slight_smile:
A.

1 Like

You may also try enabling the “Always Send Pitch Bend” option for all the Micro Scale pipes.

p.s. If necessary to upload, also include the tuning itself!

1 Like

Unfortunately I am hitting the brickwall again. Tuning has become unstable, for reasons unexplained to me, considering it did work in the past 2 weeks.

In this setup I need an external midi keyboard (from C) to input notes into the monomachine sequencer (to A), using live record (I have a filter bypassed in the screenshot to exclude note on/off to prevent feedback while live recording).
To be able to “dispatch” two-note polyphony to the monomachine, I need to have an MCR pipe also between the external midi keyboard and the monomachine. At the moment they are sending through ch. 5 &6.

If I input notes in the sequencer manually tuning remains stable. But this would take out a lot of spontaneity in the recordings, not to mention being very time consuming—so I want to record notes/chords live via an external keyboard, which is when the issue with tuning starts to happen. Notes recorded into the monomachine are now out of tune, after live-recording them. tuning info.txt (147 Bytes)
tuning_tryout.mhp (390 Bytes)
from B (monomachine).csv (61.0 KB)
from B (notes recorded into monomachine).csv (1.3 KB)
from C (ext keyboard).csv (1.3 KB)
Processing: tuning info.txt…
tuning_tryout.mhp (390 Bytes)

If I just play the ext. midi key without recording tuning is accurate though, which is very confusing.

For midi monitoring, I am sending in attachment the exact same notes/chords selecting before csv export:
*from B (monomachine) → events input manually
*from C (ext. keyboard) playing the exact same events while live-recording
*from B (note recorded into monomachine) : which sound out of tune compared to from B (monomachine)
+
*tuning info
*preset file

I did check the “always send pitch bend” box in both MCR pipes.
I did double check that the monomachine pitch bend range is “2”, just like in the MCR pipe.

I am baffled at this point. I have no idea what I am doing wrong. Let me know if you have all you need to troubleshoot.

Thanks in advance.

Try using a common Micro scale pipe for both inputs, replace the TO MIDI A outputs with TO VIRTUAL A, add a new line like this:

FROM VIRTUAL A → MICRO SCALE → TO MIDI A

You can move one of the existing Micro scale pipes into the new position, and remove the other.

Also, filter out not only Note On, but Note Off as well from the B input.

I did all of that and the issue persists. I just noticed something weird in the midi monitor.
When i select the MCR pipe and I play F# in the ext. midi keyboard, the note gets shifted from F# to F (please see file ‘one note MCR’.When I check monitor for the ext keyboard, the note stays the same though, so there’s nothing wrong with the ext key (see file one note ext key).
one note ext key.csv (358 Bytes)
one note MCR.csv (407 Bytes)

why would that be?
find the new patch attached.

This is the tuning mismatch between playing the note and recording it. After recording it that F# sounds out of tune and gets written into the sequencer as F. I would expect that 'retuned/pitched up F" to sound exactly the same as the F# on the keyboard, whether the turning is real time or played back via sequencer).

tuning_tryout_2.mhp (404 Bytes)

When retuning, the MCR pipe at times might require producing a different note + pitch bend to achieve the desired base note frequency. It uses the closest natural note to the desired frequency + the necessary pitchbend amount to reach the desired frequency.

And this sort of reveals the mystery of what is going on - because of that, the pitch bent recorded events become other note on events, while the original unmodified input would be better suited to be stored in the sequencer memory. The Monomachine is not storing the associated Pitch Bend values, therefore, when being processed through MCR again, the results are different.

I’m not sure if it’s possible to make the Monomachine store the original notes, but play the ones with pitch bend messages, without involving an external device or computer storing the original unmodified note stream, at least temporarily. The external device could be used to receive the original stream, and once you’re happy with it, you could then send it directly to Monomachine without microtuning, to store it into its internal sequencer.

Some alternatives to an external device would be to possibly use a different channel with unmodified notes to be sent into the Monomachine’s sequencer, so it’s stored in a separate track, but not having the device, I’m not sure what would be the possibilities of that and how convenient that would be.

2 Likes

Yes I guess that’s what’s going on indeed. I tried changing pitch bend range in both MH and monomachine, but it doesn’t help. As limiting as it is, I might as well input all the notes/chords manually, which at least guarantees stability in tuning. I will look into your alternative suggestions as well.
Too bad that live recording of pitch bent events won’t work with my setup. If I would use the ableton sequencer for instance, would I get into the same issue?

Ableton should record the Pitch Bend events, so you can send MCR output to it and it should be able to replicate the exact same performance when sending directly to Monomachine, in that case, it should be done without MCR pipe, as the MIDI stream is already micro tuned.

1 Like