Hi,
Thank you very much for your answer.
ACT MIDI Controller in Sonar(Cakewalk) is crap. This is why I switched to your plugin.
I was hoping not to have anything to do with AMC anymore and use entirely you software which is extremely reliable and flexible.
The second mapping is called "ACT Learn" in Cakewalk
But form what I understand from your information, your plugin does not handle the switching of the mapping all by itself, but relies on information stored in the genericpluginparams.xml and sonaract.xml from %appdata%\Cakewalk\ACT Data.
After many trial and errors I found a solution which hopefully excludes Sonar from the process. Please correct me if I'm wrong.
1. Clean %appdata%\Cakewalk\ACT Data.(as you said)
2. Start Sonar(Cakewalk), create a project and insert some plugins. This will create the necessary entries in the 2 above mentioned files that later can be edited with "AZ ACT Fix".
3. Start "AZ ACT Fix", select in the second combo-box "AZ Controller". The list of the inserted plugins should be on the left side.
4. Select one plugin from the left and configure with the software which from the exposed controls of the plugin will be Knobs/Sliders/Switches and also the order you want to map it on your control surface.
5. Save and Exit
6. Load the created project in Sonar(Cakewalk)
7. In AZ Controller, for each hardware control that has a Logic attached to it, define in the Logical Control the following Action configuration List:
a. Action configuration=ACT, ACT Type=Rotary or Slider or Switch depending on the control on the surface and the number is the number of the ACT Rotors/Slider/Switch you see in the ACT TAB once you have clicked on an opened plugin. It is the same order you have defined with the "AZ ACT Fix" utility. Normally Slider 1 from your console will go to ACT/Slider/1, Encoder 1 from your console will go to ACT/Rotary/1 a.s.o.
b. Action configuration=value/Direct/Linear
If you have a surface which supports feedback(motorized faders, encoder rings etc), you need to define the feedback so:
c. Action configuration=Monitor/Monitor parameter value/Ultra/priority 1
d. Switch to Feedback TAB, search in the combobox for your controller::Parameter Value Monitor
Action configuration=MIDI/<Use Ctrl MIDI>, value=Value
Now when you shift the focus from one plugin to another, the controls on the surface will reflect that and control the plugin in focus. If you have feedback, the faders will jump to the position of the controls in the newly selected plugin.
With this approach, there is no need to instantiate the ACT MIDI Controller or to try to define some mapping using it. I assume Sonar(Cakewalk) will read the genericpluginparams.xml and sonaract.xml files and tell AZ Controller which plugin has the focus and what is the mapping. And there are no bugs in that part of reading the files and telling AZ Controller the mapping, as there are in defining the 2 files using AMC.
The first test I have done with 2 plugins have proven successful with this method. Maybe someone else finds this useful. The main thing is: no ACT MIDI Controller involved at all