Cubase loads stereo plugins on mono tracks

For some reason Cubase 10 will load my stereo (2-2 only) plugins on mono tracks.

When inserted on mono tracks both VST2 and VST3 plugins load but:

  • The VST2 version IsChannelConnected(ERoute::kInput, 1) and IsChannelConnected(ERoute::kOutput, 1) both return “false” - which I can use to tell the plugin to process in mono.

  • The VST3 version IsChannelConnected(ERoute::kInput, 1) and IsChannelConnected(ERoute::kOutput, 1) both return “true” - and the plugin (wrongly) thinks it’s a stereo track.

This is a problem because some of my plugins should only be used/appear on stereo tracks (which is why I specified “2-2” and not “1-1 2-2” in config.h).

Other DAWs and other formats (AAX and AU) do not load (or even show) my stereo plugins on mono tracks - so this seems to be a “Cubase thing”.

Are these known issues in Cubase, especially with VST3? Any workarounds/hacks?

Some additional info regarding VST3:

If I define my plugin as “1-1 2-2” in config.h and insert the plugin on a mono track in Cubase, IsChannelConnected(ERoute::kInput, 1) and IsChannelConnected(ERoute::kOutput, 1) both return “false” - which is correct. However, If a sidechain is added to the config - like “1.1-1 2.2-2” - the routing is again, reported wrong on mono tracks.

If I define my plugin as “2-2” in config.h and insert the plugin on a mono track in Cubase, IsChannelConnected(ERoute::kInput, 1) and IsChannelConnected(ERoute::kOutput, 1) both return “true” - which is wrong.

So it seems there is something not quite right in iPlug2’s VST3 I/O - at least in Cubase for some reason. It works properly in other DAWs so maybe this is a Cubase bug? It’s hard to believe the creators of the VST3 spec would get it wrong so this is baffling.