Circa plugin not "learning" MG3-passed MIDI CC message

Don’t know if this is an MG3 problem or a Circa problem, but due to the difference in behaviors between MG3 and Audiobus (as plugin hosts), it could be an MG3 problem.

The problem. In MG3, I am unable to get the Circa plugin UI to recognize my MIDI controllers when using its “Learn” function to set up incoming MIDI CC mappings (Circa calls these “Modulations” per pp. 16-17 of the Circa manual).

The setup. I have a tabletop and foot controller that are happily functional all over MG3 for other plugins, and for Circa, they also work just fine for mapping to explicitly exposed plugin parameters. However, if in MG3 I cable a message from either of these controllers into one of the four connect points for the Circa plugin instance, as a MIDI CC passthru rather than as an exposed plugin parameter, the Circa UI does not seem to “Learn” the incoming message as I believe it should, if I’m understanding things right. The “Learn” function just hangs until I stop it manually, and it then displays “err”.

Maybe an MG3 thing? Now…in Audiobus, if I set up the comparable scenario in which I’m explicitly passing my controller’s MIDI CC message in to the Circa plugin, its “Learn” function does “hear” the controller. (Now, that said, after seeming to “Learn” correctly and create the mapping successfully, I’m still having troubles with those messages actually reaching the plugin during operation–which I’ve asked about over at Audio Damage, and am still playing with. But in MG3, Circa doesn’t even seem to “hear” the messages enough to “Learn” them.)

Anyway, has anyone else here got MG3 to work with Circa’s “Modulations”, or tried it? Again, from what I can see, the exposed parameters seem to map just fine, but the critical “Trigger” function in Circa isn’t exposed as a plugin parameter; instead, it is intended to respond to an incoming MIDI CC message, via one or more of these “Modulations”. (And frankly, using the “Modulations” the way they seem to have them architected, seems a much more elegant way to support creative control anyway. :nerd_face: )

Have you tried switching to MIDI 1.0 Legacy Mode?

I got the demo to work registering both MIDI note-on and a Pedal connected to CC1.

1 Like

Yes, you need to put MG3 into Legacy MIDI mode to do the learn in plugins because control data passes under restricted conditions in MPE mode. It’s not about Circa and it’s got nothing to do with your host of choice. It’s just that when in MPE mode, CC data will only pass when there’s a note on event occurring and the MIDI learn grabs the note message before the CC message.

You guys are frickin’ awesome, you know that? That worked, like, immediately.

And it worked in the general case, too. On a suggestion from Audio Damage, I had just got my Circa “trigger” test to work (with the plugin hosted in MG3, still in MPE mode) by sending a note instead of a CC, and that did in fact seem to work just fine (so long as I remembered to either 1) have MG3 transport running, or 2) decouple Circa from host sync). But the CC was still elusive, and I wanted to have that so I could send continuous control messages, not just momentaries.

But that actually makes sense, that I could switch the Circa plugin container to the simpler MIDI standard–after all, that plugin processes audio, and just uses MIDI for control–and cover both the note and CC cases. This is great news, thank you both most kindly!

And I appreciate the context of the “restricted conditions” explanation–that seems very logical. Something to add to my very-much-novice understanding of this landscape… :nerd_face:

2 Likes

I understand how this is the case for the per-note CC messages, but should this be the case also for CC messages sent on the Master channel according to the MPE specs?

If I connect a pedal to CC1 (using one of the four boxes on the plugin modul) I should be able to use any assignment the plugin has without playing any notes. I have tried with both Animoog Z and Circa in Ableton, and Diva in Gig Performer, and I can certainly control the Mod Wheel without inputting notes in those (and use the Learn function for Circa in MPE mode in Ableton).

So when you say

Is this particular to the MG3 handling of MPE? I haven’t seen this being discussed anywhere, so naturally I am curious.

Looking at how things actually work right now, you are correct. I verified this by using the MIDI Learn function in Circa (in MPE mode first striking the string - then pressing the Learn function, and finally use the pedal connected via CC1, and it worked.

But my question is, shoud it be like this (based on the MPE specs)? :thinking:

1 Like

Probably not, but that’s how it is right now.

Are you sure the MIDI is coming from MG3? Or is the DAW collecting the control data independently? More specific info on your signal flow would help here.

As far as I have observed, yes. You as a Seaboard user should have a good point of reference for what I standard. I don’t use any MPE controllers – except for MG3 a couple of iPad applications, like Velocity Keyboard.

I’m not deeply familiar with the MPE spec…I should read the documentation. I suspect the answer is no but maybe @JamO could chime in on this one.

No, it is definitely not coming from MG3, and that was the point. My question is concerning the MPE specs and not the MG3 MPE output in particular .
I just set up with MPE enabled instruments in different environments to see if they would pass on CC1 messages without the assistance of any notes being played. And they did.
So I assume it isn’t dictated by the MPE specs that this should be the case.

The Seaboard does not really help me here. It doesn’t have the MOD wheel functionality to begin with. I can have the SLIDE send out CC1 instead of CC74, and setting it up to Animoog Z (directly, in MPE mode) only show me that it indeed moves the MOD wheel, but then I can’t isolate it from the note-on trigger, which is what was being discussed here. And furthermore, looking at the Seaboard output in a MIDI monitor just gives me a per-note distribution of CC1 instead of CC74, and that does not help me either.

But just as you have observed, it is so with MG3, nad that is a question for @JamO.

My only concern was that I was missing something here when you were saying:

I viewed MG3 as a (plugin) host, but I suppose now you probably meant any environment hosting MG3 as a plugin.

Sorry to bother you with these more or less semantic quandaries. :pray:

Sorry, I think I misunderstood what you wrote.

Yeah, that’s what I meant!

Not at all. It’s all part of the ongoing conversation around MG3 :slight_smile:

1 Like