Microtonic: update of CC mapped knobs when changing programs

Softcore1 726 views6 posts
  • Softcore


    I have posted the same message in "Product Discussions" thinking this is only "pre-sales" support, but as there were no replies, I am posting here- feel free to delete that topic

    I am using Microtonic v3 in Windows 7 64bit SP1, host Ableton Live latest version and a Behringer BCR2000 midi controller.
    (in case you are not familiar with this controller, it features 32 knobs with led rings so that values of the knobs are indicated through the leds and can be updated to always show the value of assigned parameter - just like what motorised faders do on more expensive controllers)

    I have mapped each Mtonic drum slot's OSC decay, Noise decay and OSC freq to knobs in my controller. Obviously you can do this in two ways: either as adding the afforenmentioned parameters to Live's automatable parameters and then map the controller to those OR use direct MIDI CC communication from my controller to Microtonic - I have tried both methods, both work correctly.

    However, I am facing this problem: no matter which method of the above I choose, I cannot make the parameters above UPDATE in my controller whenever I use "morph" or change programs via a Midi Program Message - the programs do change but the knobs in my controller do not update to show the new settings. Keep in mind, that when using mouse on one of the parameters, the mapped knob in my controller updates correctly.

    I know of course, that bi-directional Midi CC communication in Live is a bit picky, meaning it won't send updated Midi CCs unless you physically alter those Midi CCs either by mouse or Gui. For example if I change a program using either the preset arrow keys on Mtonic GUI or via the selector of 16 presets, then my controller's knobs do update to show new settings....I was wondering if there is a workaround to make it work when using Midi program change (or send midi notes to the 16 presets selector).

    Keep in mind I did try to set up a midi track to receive midi transmitted from Microtonic and send it back to my controller - again the controls on my controller were not updated - I could only receive midi generated from the patterns (when enabled) but not parameter changes.

    Any ideas/workarounds?

    if my issue is not clear by my description, let me know of posible ways to make it clear

    Thanks in advance!

  • Magnus Lidström

    Hello. I meant to answer your other forum post, but before that I had to double-check some of the claims I am about to make.

    First, MicroTonic does not send parameter updates via MIDI CC, so the only option for synchronizing your BCR is by using Live's CC mapping instead. As you have noticed, this will work nicely for individual parameter changes and also when you change presets etc via the GUI. However, due to a peculiar choice of design in Live concerning the VST implementation, it doesn't work when the changes are produced from program changes or parameter automation.

    The full explanation is rather technical. There is a call in the VST API ("updateDisplay") that notifies the host that parameters / program names etc (may) have changed and that the host need to synchronize it's state to reflect this, e.g. by updating it's GUI, sending MIDI to external controllers etc. However, Ableton is making another assumption about this call, which IMHO is incorrect and something no other host does. Ableton assumes that any call to "updateDisplay" is made as a direct result of a user-initiated action that potentially changes a lot of parameters. Parameter automation is stopped for the track in question and the "Back To Arrangement" button lights up.

    Needless to say, we can't accept this behavior when we play back recorded MIDI CC or Program Changes. There is no way for a plug-in to differentiate recorded MIDI being played back from "direct" MIDI from your MIDI controller. This means I had to explicitly prevent calling "updateDisplay" when I receive Program Changes or MIDI CC for morphing. In earlier versions of MicroTonic and in Synplant I wasn't aware of this odd behavior and thus the "Back To Arrangement" button often lights up when using Program Changes with these versions. It took me quite a lot of debugging to find out why this happened.

    The bottom line of the story is that there is nothing we can do to ensure that Live sends MIDI CC back to your controller when MicroTonic receives Program Changes or MIDI CC for the morph parameter. Nothing unless Ableton changes how they interpret the VST spec. I will talk to them about it but I presume that they have their reasons. Regardless, any changes to the plug-in hosting behavior is bound to be expensive for a big product like Live considering all the testing they will have to do.

    The other option is for me to implement sending MIDI CC in MicroTonic instead, but configuring the routing from plug-in to MIDI controller will not be trivial in many hosts and some don't even support external MIDI out from plug-ins.

    Sorry to have to disappoint you.

  • Softcore

    No worries! I'm far from being a VST developer but I have a basic understanding of technical stuff. The truth is, I kinda knew it wasnt a Microtonic's issue but rather the host's and I have already discovered with other plug ins that the way Live updates connected midi controllers to it is a bit weird on this issue, thats why I was asking for "ideas, workarounds".

    It's a pitty however as I already tried my concept, DJing with Microtonic as a supplementary percussions machine but this small problem creates asynchronus parameters in Live/Mtonic and the controller, making the whole thing a bit difficult to use in the "spark of the moment". I guess my other option is to contact Ableton about this small issue or use that "pick-up" mode or what its called (in Live preferences) for my controller (values in Live start moving as long as the physical controller mapped to them crosses by the real value).


    The other option is for me to implement sending MIDI CC in MicroTonic instead, but configuring the routing from plug-in to MIDI controller will not be trivial in many hosts and some don't even support external MIDI out from plug-ins.

    Provided there is no need to use that feature on other hosts (as this issue probably happens only in Live) and provided we are talking about a knowledgeable user (not even "power") who knows how to set up midi ins-outs in his DAW, I d say personally this would be a very welcome addition in an updated version of Mtonic, because it would solve my issue. Truth is, as I described in my first post, I did try this appoach but then discovered that its not implemented. Of course I dont know the technical things involved so it might be too much of a hassle for next to litle gain, so that's a decision Im entrusting to you. After all you have done a great job with Mtonic ;)

    Thanks for the reply - big sorry for the double posting!

  • clay


    Im trying to do the same thing with a BCR2000. Trying to have a hands-on way to change parameters and switch between different sounds in the Microtonic and have a BCR2000 mapped to parameters and the endless encoder dials update with the change of parameters. this would be so cool.

    I've tried a few workarounds in Ableton live but nothing is seeming easy to get the BCR knobs to update when going between sounds. Ive even tried multiple microtonics in a drum rack but the mapping of cc's to Microtonic only seems to work for one sound.

    are there any newer workarounds for this?

  • Magnus Lidström

    Yeah, since a few years now Microtonic can send MIDI CC for its parameters. You have to enable this option in MIDI Config and map each knob to a controller value. Next, route MIDI out from Microtonic to your BCR2000 via a separate track in Ableton Live. Try it and let us know how it works!

  • Softcore

    Indeed, since then mTonic works just fine... I just moved from BCR2000 to using Lemur as shown here:


You need to be to post a reply

Sign In / Sign Up

First time here? Just enter your current email and sign up.
Facebook sign in no longer available. Use the same email to set password and access your account. If you need help, contact us.