Hi, I'm building a MIDI controller to control the Valhalla Shimmer from within Logic Pro. The Shimmer doesn't have MIDI Learn so I assign every pot (12) to the plugin manually and this work very well. When I close the program and reopen, the settings are still intact which is good. But if I instantiate a 2nd Shimmer, I obviously can't control it unless I reassign every pot again, which means I can't control the 1st plugin. Is there a way to program the controller so it can switch between several instances of the plugin?
I'm using a Teensy LC for 12 potentiometers with the Control_Surface library.
On the Arduino side of things, there's only so much you can do. You could create banks in the Control Surface code to use a different MIDI channel for each plugin, for example.
For a real solution, it's probably best to contact the plugin developer.
It is always a bit tricky to do this, but basically yes you would have to create banks, or do something with midi-channels. I generally don't try and control plugins through hardware, but only standalone. Mainly i guess you will just have to add a switch to cycle through banks (or just get it to - & -12 to the CC number the pot controls or switch midi-channels. You want to control 24 parameters with 12 pots, what to do.
So I just used this very simple sketch and once I map out the pots for the plug in they stay assigned for all other instances on all other tracks, that's perfect!
#include <Control_Surface.h> // Include the Control Surface library
// Instantiate a MIDI over USB interface.
USBMIDI_Interface midi;
// Instantiate a CCButton object
CCButton button[] = {
{3, {92, CHANNEL_1}},
{4, {93, CHANNEL_1}},
};
// Instantiate an array of CCPotentiometer objects
CCPotentiometer potentiometers[] {
{A0, 0x10},
{A1, 0x11},
{A2, 0x12},
{A3, 0x13},
{A4, 0x14},
{A5, 0x15},
{A6, 0x16},
// {A7, 0x17},
// {A8, 0x18},
// {A9, 0x19},
// {A10, 0x20},
// {A11, 0x21},
};
void setup() {
Control_Surface.begin(); // Initialize Control Surface
}
void loop() {
Control_Surface.loop(); // Update the Control Surface
}
Now I can't seem to get my 2 buttons to latch when I select a on/off switch on the plugin. It turns on when I press but off when I release. Can you help?