The CTRL system inside PercX is a unified way of handling automation of control parameters. Everything that is automatable is funneled through the architecture of the CTRL system to give you a consistent workflow, no matter whether you use the host automation, assign MIDI controllers to certain parameters or create Key switches to make action keys that trigger FX chains.
Be aware that the 8 CTRL parameters are the only parameters that are available for plugin-automation, so if you want to automate a parameter with host automation, you have to create a connection to a CTRL macro first.
We've tried to make the CTRL system as useable as possible and the first thing to know is that everything related to CTRL uses this signal colour:
Everytime you see this colour in the interface, it's all about CTRL: connection ranges, indicators which parameters are being automated, control values, etc.
The CTRL architecture
There are 8 completely independent macro controls which you can use to create automation setups. Every single macro control uses this signal flow:
So you can connect (almost) any combination of parameters to a macro in order to control them all at once. Furthermore, you can use one of the three modulation sources to make interesting automation setups.
Be aware that the modulation sources are optional. If you're using host automation, you probably won't need it (but even then it can create interesting effects).
Let's start with the connections first, then we'll take a look how the modulation sources can be used.
Add a connection
In order to connect a parameter to a CTRL macro, just right click on it, and if it's automatable, it will show a popup menu like this:
Choose one of the macro controls in order to establish a connection between this parameter and the respective macro control. As soon as a connection has been added to a macro, it will show a little knob next to the keyboard that you can use to check and change the value (it's bigger brother is just accessible on the CTRL page, but you might want to see how the macro affects your connected parameters on the page you're currently on).
If you add a parameter the first time, it will also show this window overlay:
On this popup, the connection can be set to a distinctive range and you can even adjust the curve that is being used for calculating the control value from the macro value. You can use this to increase the "dynamics", invert a parameter to make a crossfade-type setup, or go completely crazy for a randomization effect. You have these options:
- This is the maximum value for the connection, so that if the macro is at its full position, it sets the parameter will to this value.
- This is the minimum value for the connection, so that if the macro value is zero, this value will be used.
- This is the curve for the connection. Click anywhere to create a new point (right click to delete). If you hover over it and scroll the mouse-wheel, it'll change the curve at the mouse position.
Be aware that the same UI element is also available on the CTRL page: at the bottom of each CTRL, you'll find a panel with one of those for each element.
Add multiple connections
You can also use the multiselection feature in PercX to add multiple connections at a time. This is useful if you just want to assign a parameter of all tracks to one CTRL, so instead of repeating the step above for each track, all you need to do is to select all tracks you want, and then use the context menu via right click. It will notify you that you're about to add multiple connections like this:
If you want to remove connections, you can do so in three different ways:
- Right click on a control that is connected to a CTRL and choose "Remove connection".
- If you're on the CTRL page, use the X button on each connection item to remove it.
- If you want to get rid of all connections at once, right click on the small CTRL knob on the bottom and select "Clear CTRL X".
Be aware that connections are retained even if you unload kits and load new ones, so if you want a full clean slate, click on the black bar at the top and choose New.
As soon as you have added connections to a macro, you can use it to change multiple parameters at once. However you can also connect various modulation sources to it in order to create complex modulation setups. Let's recap the CTRL architecture one more time, this time by looking at the routing matrix that is a condensed version of the signal flow:
The most important thing to understand here is that any modulation source will be applied on the macro position. This means that if the macro is being set to 50% (either by hand or by host automation), a full modulation signal (eg. by turning the modwheel all the way up) will still result in a 50% value being sent out to the connections and if the macro position is at zero, the modulation signal will not affect the values at all - just like a muted track on a mixer.
There are three types of modulation signals available in PercX and each macro can use either one of them or none at all. In order to activate them, just click on the name of the modulation and you will see the routing matrix being updated (in the example, the SEQ modulation is active).
The CC source allows you to modulate a macro using a MIDI Controller: Modwheel, Breath controller, or any slider on your MIDI keyboard that sends out CC messages.
|A dropdown menu to manually select the controller number you want to use.|
|Activates MIDI learn. Just press it and then move any controller on your hardware and it will automatically set it to this value (and also deactivate the MIDI learn mode).|
|Sometimes the responsiveness of the MIDI hardware is too fast or you want to create slowly evolving automations. In this case you can add a filter to the incoming MIDI signal that smoothes the edges.|
Be aware that the incoming signal is being multiplied with the macro position so if you don't recognize any changes to the values being sent out, check that the macro is not set to zero.
The ENVELOPE creates a modulation signal that has an attack and release phase and can be triggered using a dedicated note on your MIDI keyboard (or by default just start when the playback starts). The curve for the attack and release phase can be customized just the same way you edit the range curves of the connections.
|Set the curve for the attack (left) and release (right) phase. Left click anywhere to create a new point, right click on a point to delete it or hover and move the modwheel to change the curve between two points.|
|Sets the time that the attack phase will take from start to finish. Unlike a normal envelope, these values are always musical, so you can create slow buildups that span over multiple bars.|
|Sets the time that the release phase will take when you release the key that controls the envelope.|
|This control lets you choose which key you want to use in order to trigger the envelope. By default, any key is active, so as soon as you start playback, it will start going into attack mode. However if you click on learn and then press any key, you can create "action keys" which can be used to create interesting effects that can be triggered during a performance.|
The sequencer creates a tempo-synced modulation signal that uses a predefined step sequence.
|Define the step sequence that this sequencer will use. Click and drag to set multiple values at once or right click and drag to create a linear ramp between start and end point.|
|Speed: Sets the duration per step.
Intensity: Sets the amount of modulation that this sequencer will generate.
Smooth: applies a smoothing filter over the signal (just like the CC). By default this is zero, but if you don't want the hard edges of the steps, increase this value to get a more continouus signal.
|By default, the sequencer is synced to the global playback position, but you can choose a single key that triggers the restart of the loop. Press the Learn button and hold down a key to make it trigger the sequence.|
|No. Step: Sets the amount of steps of this sequence. You can use up to 64 steps and also use irregular step amounts (eg. 11) to create interesting polyrhytmic effects.
Loop: If this is active, the sequencer will loop through the steps after it reaches its end position (otherwise it will play the sequence just once until it's restarted).