Midi Controller in Halion SE multi channels

If I set up four instances of Halion Sonic with a different instrument loaded in each one resulting in different QC settings across each of them my mapped Midi Controller QCs work as expected. (Akai MPK25)

But when I set up an instance of Halion Sonic SE with 4 channels loaded. Midi Channels 1-4

The Akai MPK25 is set up with a mapping that maps the K1-K8 dials to the Halion QCs.

If I select one of the Midi tracks in Cubase Pro 9.5, I see the relevant channel selected also in Halion Sonic SE and my MPK25 controls work fine. However when I select the next track in Cubase the QCs in Halion Sonic SE change to different functions (because its a different instrument) and then the Midi Controller QCs no longer work. If I select the next track which has the same QC controls as the first track then the Midi Controller works fine again. So it seems the QCs controls are matched based on the specific name of the QC control for the instrument I was using when I created the Midi Mapping.

I tried creating a separate mapping configuration that I can select in Midi Devices and if I select the correct config the QCs work correctly.

Looking at the Midi Mapping XML I see the channel is set to “-1” which displays as “Device” in the UI for Midi Mapping. I also see that the “tag” value varies depending on what the QC name is in the instrument which I believe is why it will not work unless I have multiple instances of Halion.

Is it possible to do this with multiple programs loaded in a single instance of HSE or should I just plan to always use multiple instances of HSE each with single program loaded in my projects?