Author Topic: Mackie Control support improvements (!!!NOT AZ Controller!!!)  (Read 868 times)

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 976
Mackie Control support improvements (!!!NOT AZ Controller!!!)
« on: December 20, 2016, 08:40:19 PM »
Originally in the CakeWalk forum, the post is in the "locked" forum section now... So I report here to have a possibility to update it when required:

To avoid confusion with my other activity, this post is about Open Source CakeWalk MackieControl plug-in. It is NOT about my AZ Controller platform.

Installation
  • You should know either your installed Sonar is 32bit or 64bit. If unsure, open "Help/About SONAR". At the end of "Version: ..." you should see "x64" if it is 64bit version.
  • Make sure original Mackie Control is correctly installed:
    • In Sonar "Preferences / MIDI / Control Surfaces", add "Mackie Control" with "Input port"/"Output port" pointing from/toward your Mackie (or compatible) device. Click OK.
    • Add "ACT Module" to the Sonar Control Bar. If you see "Connecting..." or "Trks 1-8..." there, everything is ready to the step (2)
    • If you do not see "Mackie Control" in the "ACT Module", if you could not select "Mackie Control" at all or it was added in brackets "(Mackie Control)" and ports discarded to None, you should install original plug-in first:
  • Find where MackieControl.dll is installed on your system. On 64bit Windows and with 64bit Sonar installed, it is in "C:\Cakewalk\Shared Surfaces" by default. But you can open Windows Explored and search for that file (verbatim) to find all locations. There can be several, especially if you have 32bit and 64bit versions of Sonar installed in parallel. 32bit version is normally in "Program files (x86)/Cakewalk/Shared Surfaces". Create a link to correct directory on your desktop, you will have to reinstall modified file after each Sonar update.
  • Download modified MackieControl.dll:
  • Replace original DLL with downloaded one
  • Download the configuration file with correct ProChannel EQ/Compressor definition, independent from the number of bits:
    https://raw.githubusercontent.com/AZSlow3/Cakewalk-Control-Surface-SDK/dyneq/Surfaces/MackieControl/MackieControl.ini
    Most browsers will show you this file as a text, "File/Save as..." it in your browser. Correct name is pre-selected (can be MackieControl without "INI" shown, but it will be saved with ini)
  • Put MackieControl.ini into the same directory as MackieControl.dll. Depending from you original installation, it can replace the original file
  • Open Sonar, there should be no changes in the "ACT Module", it still should show "Connecting..." or "Trks 1-8...". If not, open "Preferences/MIDI/Control Surfaces". Probably you will see "(Mackie Control)", so in brackets, and Input/Output is None. Probably you are using older Sonar version and you do not have modern Microsoft Runtime installed. Close Sonar, download and install:
    https://www.microsoft.com/en-us/download/details.aspx?id=48145
    If you have "Connecting..." now everything is ok, you just have to select Input/Output ports in Control Surfaces preferences again. If you still see the name in brackets:
    • check that you put file into correct folder, especially if you found several MackieContorl.dll locations
    • check that you have downloaded the version with correct number of bits (32 or 64)
    • check that MackieControl.dll is approximately 200kB is size, if there was problem with Internet connection, download it again

Configuration
Open "Utilities/Mackie Control - 1" surface properties dialog. Press "F1" to read about all original options and operations. Here I list implemented in the modified version additions and mention most important general option:
  • Disable handshake. Many so called "compatible" devices have not implemented Mackie Control Handshake. Original Sonar plug-in display "Connecting..." for such devices since they fail to identify themselves as Mackie Control. This option disable handshake phase and assume the device is Mackie Control, effectively making it work with Sonar. Known devices for which this option is required: M-Audio Code, Behringer Motör, ICon QCon (with older firmware)
  • Exclude filters from plug-ins. By default ProChannel EQ and Compressor are at the top of any FX list in plug-in mode. Since they have dedicated modes, that is not required and inconvenient, especially when you do not use ProChannel
  • Modified version should work with ProChannel EQ and Compressor correctly, independent from there position in ProChannel. Also Sonar does not crash when controlling the Compressor
  • Select highlights track. Very important standard option. Without it, selecting channels on the device does not focus them in Sonar

EDIT:
Updated (8.11) to support ProChannel Compressor. Also INI file is updated with ProChannel EQ and Track/Bus Compressors mapping.
Updated (16.7.2016) to support (in)compatible devices
Updated (20.12.2016) a workaround against ProChannel Compressor crashing Sonar when asked for its "Type" parameter label.
Updated (27.03.2017) an option to exclude ProChannel EQ and Compressor for the list in Plugin mode
« Last Edit: April 01, 2017, 09:35:36 AM by azslow3 »

Offline BassRocket

  • Newbie
  • *
  • Posts: 1
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #1 on: March 29, 2017, 08:12:14 PM »
Hi,
It's Shawna again.
I know a "little" about PC's (I built and upgraded mine) but no programming.

Thanks again for responding and offering your AZ Controller suggestions. I'd like to try the Mackie Mode for my Code61 controller, but I'm unsure how to use your programming. (the .dll file)

Also, I'm getting knobs and faders mixed up in the AC Controller setup. I assign all the faders, then move on to the encoders and all of a sudden one of the encoders is working the previously set up faders. I don't know the way to fix it other than quitting without saving and starting over again and again.

I would like to help you beta test, but I don't think I am knowledgeable enough.



Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 976
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #2 on: March 29, 2017, 08:43:45 PM »
Hi,

I have just replied on PM.

Offline kashmate

  • Newbie
  • *
  • Posts: 6
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #3 on: August 12, 2017, 08:13:19 PM »
Hi azslow3,

I would like to try and play with this project, the main idea is to allow remapping buttons function:

To intercept external device button clicks and assign it user custom command (the same way the original plugin allows to configure the another Sonar internal command)
Can you please point me for central classes to start exploring ?

Thanks again for your help & effort !

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 976
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #4 on: August 12, 2017, 11:17:14 PM »
Hi,
I do not think I understand your question...
This thread is about original Mackie plug-in mod, which as original works with Mackie or compatible devices only.
So what you mean by "external device"?

Offline kashmate

  • Newbie
  • *
  • Posts: 6
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #5 on: August 12, 2017, 11:57:16 PM »
"External device" refers to any Mackie-Control compatible device (for example X-Touch / FaderPort8 / QCon / etc..)
As we all know,each vendor claims that their device is Mackie-Control compatible, but in reality, the implementation is partial.
Usually the basic stuff works (transport, volume faders, pan, etc...) - But the buttons are always different.
My idea was to be able to map these devices buttons into user defined mapping.
We already have such functionality in the MCU properties dialog (with the Function buttons mapping) - But I would like to support any button on the MCU "compatible" device.

For example, to map the "Marker" button on X-Touch device to Sonar's "Add Marker" command,etc...




Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 976
Re: Mackie Control support improvements (!!!NOT AZ Controller!!!)
« Reply #6 on: August 13, 2017, 09:18:05 AM »
There was mod is such direction: http://forum.cakewalk.com/FindPost/3092979

But note that:
* X-Touch has correct original Mackie labeling. Original Sonar plug-in (as other DAWs Mackie plug-ins) has special overlay for a reason, Logic labeled layout simply does not "fit" well into Sonar functionality. So while they could implement some buttons as they are labeled, that was not possible for all buttons.
* QCon had a bit more problems then just with labeling in its Mackie compatibility
* FaderPort8 and all other known Mackie compatible (except mentioned X-Touch and QCon) are in fact so far away with the number of controls from Mackie unit that even with possible "re-mapping" of buttons they can not provide there best using Mackie plug-in

Also I have plans to re-make my Mackie preset for AZ Controller, especially for X-Touch (using Behringer protocol instead of Mackie compatibility mode, to support color display...). Not sure when that happens, but that will probably make current plug-in "obsolete" (current Mack. preset in AZ Controller already provides almost the same functionality as original, it is just not well tested and newer versions of AZ Controller allows to do it much cleaner, in such preset it is not only simple to change any assignments but also possible to adopt the logic for concrete device).