FX Zone Activation (FocusedFX, TrackFXMenu, SelectedTrackFXMenu, SelectedTrackFX) - FunkybotsEvilTwin/CSIUserGuide GitHub Wiki

Overview: Different FX Zone Activation Methods

In order to map instruments and effects in CSI, you, as the end-user, must create some FX Zones. Once you’ve created some FX zone files, the next step is determining how to activate those FX zones. CSI offers four methods for activating FX zones:

  • FocusedFX: When you open a plugin's GUI in Reaper, the plugin automatically maps to your control surface. This mode is enabled by default, allowing seamless interaction with the currently focused FX. Mapping action: ToggleEnableFocusedFXMapping

    Additionally, there is a LastTouchedFXParam action in CSI that enables you to map the last-touched (or "focused") FX parameter to a surface control. This cannot map multiple FX parameters simultaneously. See LastTouchedFXParam for more details.

  • TrackFXMenu: Select the plugin you want to activate from a menu on your control surface. TrackFXMenu displays the FX slots vertically. For example, an 8-fader surface will show FX Slot 1 on Track 1, FX Slot 1 on Track 2, and so on. Use vertical banking to navigate slots.
    Mapping actions: GoZone TrackFXMenu to activate the zone, GoFXSlot to activate the FX mapping.

  • SelectedTrackFXMenu: Like TrackFXMenu, but displays the FX slots of the selected track horizontally. For example, an 8-fader surface shows FX Slot 1 through Slot 8 on the selected track. Use horizontal banking to navigate slots.
    Mapping actions: GoZone SelectedTrackFXMenu to activate the zone, GoFXSlot to activate the FX mapping.

  • MasterTrackFXMenu: Like SelectedTrackFXMenu, but designed specifically for the master track. Mapping actions: GoZone MasterTrackFXMenu to activate the zone, GoFXSlot to activate the FX mapping.

  • SelectedTrackFX: Automatically activates any FX zone on the selected track, allowing multiple FX to be mapped simultaneously with careful planning. Useful for pre-defined layouts or workflows replicating hardware channel strip setups.
    Mapping action: GoZone SelectedTrackFX Unmapping action: ClearSelectedTrackFX

  • SelectedTrackTCPFX: Another method to map one or multiple FX on the same track by leveraging Reaper's TCP (Track Control Panel) FX macros. First, create TCP FX parameters within one or more Reaper tracks. Once you've set up the parameters, select the desired track and activate the SelectedTrackTCPFX zone to map those TCP FX parameters to your control surface. Changing the track selection will update the mapping accordingly. This approach is particularly useful if you want to have different mappings set up on different tracks. Mapping action: GoZone SelectedTrackTCPFX

Tip: You can combine activation methods on the same surface, using various mapping actions to switch between them. For example, you could toggle between TrackFXMenu and SelectedTrackFXMenu with one button and enable FocusedFXMapping with another.


FocusedFXMapping

FocusedFXMapping is enabled by default. If you have a FX zone file for a plugin, opening its GUI in Reaper activates its mapping on your surface. To toggle this behavior, assign a button to the ToggleEnableFocusedFXMapping action:

    F2    ToggleEnableFocusedFXMapping

To disable FocusedFXMapping by default, add OnInitialization DisableFocusedFXMapping to your Home.zon file:

Zone Home
    OnInitialization     DisableFocusedFXMapping

TrackFXMenu

TrackFXMenu is best for multi-channel control surfaces, allowing you to view one FX slot per channel. For example, on an 8-channel device, TrackFXMenu shows FX Slot 1 for channels 1–8. Use TrackFXMenuBank to navigate FX slots.

Create a dedicated TrackFXMenu.zon in your surface folder. The zone name must be named TrackFXMenu:

Zone "TrackFXMenu"
    DisplayLower|         FXMenuNameDisplay
    Rotary|               NoAction
    RotaryPush|           GoFXSlot
    Mute|                 ToggleFXBypass
    Up                    TrackFXMenuBank -1
    Down                  TrackFXMenuBank 1

    RecordArm|            NoAction
    Solo|                 NoAction
    Select|               NoAction
ZoneEnd

How to Activate TrackFXMenu.zon

You can activate TrackFXMenu as-needed using a GoZone or include it directly in your Home.zon file.

TrackFXMenu as a GoZone

Define TrackFXMenu as a GoZone in your GoZone.zon file:

Zone GoZones
    SelectedTracks
    SelectedTrackSend
    SelectedTrackReceive
    SelectedTrackFXMenu
    MasterTrackFXMen
    TrackSend
    TrackReceive
    TrackFXMenu
    VCA
    Folder
    SelectedTrackTCPFX
ZoneEnd

Include the GoZone TrackFXMenu action in your Home.zon file to toggle the menu:

Zone "Home"
    Global+Plugin     GoZone TrackFXMenu
ZoneEnd

TrackFXMenu as Part of Your Home.zon

Include TrackFXMenu directly in your Home.zon file if you want it always active:

Zone Home
    IncludedZones
        "Track"
        "TrackFXMenu"
        "MasterTrack"
    IncludedZonesEnd
ZoneEnd

SelectedTrackFXMenu

SelectedTrackFXMenu is ideal for multi-channel control surfaces, displaying FX slots from the selected track horizontally. For example, on an 8-channel device, it shows FX Slots 1–8 for the selected track.

Create a dedicated SelectedTrackFXMenu.zon in your surface folder. The zone name must be SelectedTrackFXMenu:

Zone "SelectedTrackFXMenu"
     DisplayUpper|    FXMenuNameDisplay
     DisplayLower|    FXBypassedDisplay
     Rotary|          NoAction
     RotaryPush|      GoFXSlot
     RotaryPush|      Reaper "_S&M_FLOATFX|"          // Floats the FX window, use "_S&M_SHOWFXCHAIN|" insteead if you prefer the FX chain window
     Mute|            ToggleFXBypass
     Left             SelectedTrackFXMenuBank -1
     Right            SelectedTrackFXMenuBank 1

     RecordArm|       NoAction
     Solo|            NoAction
     Select|          NoAction
ZoneEnd

How to Activate SelectedTrackFXMenu.zon

You can activate SelectedTrackFXMenu as-needed or include it in your Home.zon file.

SelectedTrackFXMenu as a GoZone

Define SelectedTrackFXMenu as a GoZone in your GoZone.zon file:

Zone GoZones
    SelectedTracks
    SelectedTrackSend
    SelectedTrackReceive
    SelectedTrackFXMenu
    MasterTrackFXMen
    TrackSend
    TrackReceive
    TrackFXMenu
    VCA
    Folder
    SelectedTrackTCPFX
ZoneEnd

Include the GoZone SelectedTrackFXMenu action in your Home.zon file:

Zone Home
    Plugin    GoZone SelectedTrackFXMenu

SelectedTrackFXMenu as Part of Your Home.zon

Include SelectedTrackFXMenu in your Home.zon file if you want it always active:

Zone Home
    IncludedZones
        "Track"
        "SelectedTrackFXMenu"
        "MasterTrack"
    IncludedZonesEnd
ZoneEnd

MasterTrackFXMenu

MasterTrackFXMenu is similar to SelectedTrackFXMenu but specifically controls FX on the Master Track instead of selected tracks. This allows you to navigate and control FX parameters on the Master Track, displaying FX slots horizontally across multi-channel control surfaces. For example, on an 8-channel device, it will show FX Slots 1–8 for the Master Track.

Creating a MasterTrackFXMenu.zon

To set up MasterTrackFXMenu, create a dedicated MasterTrackFXMenu.zon file in your surface folder. The zone name must be MasterTrackFXMenu:

Zone MasterTrackFXMenu
    
     DisplayUpper|            FXMenuNameDisplay
     DisplayLower|            FXBypassDisplay
     Rotary|                  NoAction
     RotaryPush|              GoFXSlot
     
     RecordArm|               NoAction            
     Solo|                    NoAction
     Mute|                    Reaper "_S&M_FXOFF|"             //Offline FX slot
     Select|                  ToggleFXBypass                   //Bypass FX Slot

     Left                     Bank MasterTrackFXMenu -1
     Right                    Bank MasterTrackFXMenu 1

     Fader|                   NoAction    
ZoneEnd

Activating as a GoZone**

To activate it via a GoZone, add it to your GoZones.zon file:

Zone GoZones
    SelectedTracks
    SelectedTrackSend
    SelectedTrackReceive
    SelectedTrackFXMenu
    MasterTrackFXMenu
    TrackSend
    TrackReceive
    TrackFXMenu
    VCA
    Folder
    SelectedTrackTCPFX
ZoneEnd

Then, trigger it using a mapped button or surface action:

Zone Home

    Global+Track                GoZone MasterTrackFXMenu

This allows you to enter and exit the MasterTrackFXMenu dynamically when needed, keeping your control surface flexible.


SelectedTrackFX: Automatically Mapping FX on Track Selection

SelectedTrackFX is designed to automatically call up any FX zone files simply by selecting a track in Reaper. This approach is particularly useful for surfaces like Softube's Console One or any other surface where you always want one or more track FX mapped to specific widgets on your hardware.

The key to making this approach work is pre-planning to avoid conflicts. Conflicts can occur if two or more FX on the selected track are mapped to the same widget on your control surface. However, if you’re using a channel strip plugin across all your tracks and want specific EQ or compressor settings to automatically map to your control surface, this method could be ideal.

You have two options for activating SelectedTrackFX:

  1. Assigning GoZone SelectedTrackFX to a button
  2. Assigning GoZone SelectedTrackFX to automatically map on track selection

Below are examples of both methods.

1. Mapping SelectedTrackFX to a Button

Mapping SelectedTrackFX to a button is straightforward. Here’s how you can assign it:

Zone Home
    AudioInstrument             GoZone SelectedTrackFX
ZoneEnd

2. Automatically Mapping SelectedTrackFX on Track Selection

To have SelectedTrackFX automatically activate whenever you select a track in Reaper, add the following to your Home.zon:

Zone Home
OnInitialization    ToggleEnableFocusedFXMapping 
OnTrackSelection    GoZone SelectedTrackFX

Note: In the example above, OnInitialization ToggleEnableFocusedFXMapping is used to disable FocusedFXMapping by default.


Example: Using SelectedTrackFX with Softube's Console One

For illustration, let’s consider using Softube's Console One. You can have a SelectedTrackFX zone that assigns widgets on your surface to various track controls in Reaper. Here’s an example configuration:

Zone SelectedTrackFX
     InputMeterLeft          TrackOutputMeter "0"
     InputMeterRight         TrackOutputMeter "1"
     OutputMeterLeft         TrackOutputMeter "0"
     OutputMeterRight        TrackOutputMeter "1"
     Volume                  TrackVolume
     Control+Volume          TrackPanWidth  "1"
     Shift+Volume            TrackPan  "0"
     Mute                    TrackMute
     Solo                    TrackSolo
ZoneEnd

This zone maps the track’s meters, volume, pan, mute, and solo to the hardware, and works seamlessly with the selected track in Reaper.

Example: Mapping FX to Widgets

In addition to controlling basic track parameters, you can map specific plugin controls to your surface’s widgets.

Compressor Mapping

For instance, if you want to map the controls of a UAD Teletronix LA-2A Silver compressor to your surface, you could create a zone like this:

Zone "VST: UAD Teletronix LA-2A Silver (Universal Audio, Inc.)" "LA2ASlv"
     Threshold                FXParam "0"
     Output                   FXParam "1"
     Meter                    FXParam "4"
     Attack                   FXParam "3"
     Ratio                    FXParam "2"
     InvertFB+Compressor      FXParam "6" "Bypass" [ 0.0 1.0 ]
     WetDry                   FXParam "7"
ZoneEnd

This maps the compressor’s key parameters (threshold, output, attack, ratio, and bypass) to specific widgets on your surface.

EQ Mapping

Similarly, you can map an EQ like the UAD Pultec EQP-1A to your surface:

Zone "VST: UAD Pultec EQP-1A (Universal Audio, Inc.)" "EQP1A"
     HiGain              FXParam "7" "HF Atten"
     HiFrequency         FXParam "6" "HF Atten Freq"
     HiMidGain           FXParam "4" "HF Boost"
     HiMidFrequency      FXParam "3" "High Freq"
     HiMidQ              FXParam "5" "HF Q"
     LoMidGain           FXParam "2" "LF Atten"
     LoMidFrequency      FXParam "0" "Low Freq"
     LoGain              FXParam "1" "LF Boost"
     LoFrequency         FXParam "0" "Low Freq"
     InvertFB+Equalizer  FXParam "10" "Bypass" [ 0.0 1.0 ]
     Parallel            FXParam "11" "Wet"
ZoneEnd

This maps the EQ parameters (gain, frequency, and bypass) to different widgets on your control surface.

How Everything Works Together

With the above mappings, you can have multiple FX mapped to different widgets at the same time. For example, you might have:

  • Track controls (volume, pan, mute, etc.) mapped from the selected track.
  • Compressor controls from the LA-2A.
  • EQ controls from the Pultec EQP-1A.

All of these mappings can work in tandem as long as there are no conflicts (i.e., no widgets are assigned to more than one parameter) and only one track is selected in Reaper.

This approach offers a powerful way to integrate multiple plugins and track controls into a single, cohesive workflow on your control surface.

By using SelectedTrackFX in this way, you ensure that your control surface always reflects the settings for the selected track in Reaper, making it a versatile solution for consistent and intuitive hardware integration.


SelectedTrackTCPFX

The SelectedTrackTCPFX zone acts as a template that dictates the mapping of Reaper's Track Control Panel FX (TCPFX). These are essentially macro actions in Reaper. With the SelectedTrackTCPFX zone active, you can create custom mappings across multiple FX on the selected track, which can vary from track to track.

Setting Up the SelectedTrackTCPFX Zone

To configure this, you need to define a SelectedTrackTCPFX zone. This zone will specify how the TCPFX parameters are mapped to your control surface.

Zone SelectedTrackTCPFX

     DisplayUpper1       TCPFXParamNameDisplay 0
     DisplayLower1       TCPFXParamValueDisplay 0
     Rotary1             TCPFXParam 0

     DisplayUpper2       TCPFXParamNameDisplay 1
     DisplayLower2       TCPFXParamValueDisplay 1
     Rotary2             TCPFXParam 1

     DisplayUpper3       TCPFXParamNameDisplay 2
     DisplayLower3       TCPFXParamValueDisplay 2
     Rotary3             TCPFXParam 2

     DisplayUpper4       TCPFXParamNameDisplay 3
     DisplayLower4       TCPFXParamValueDisplay 3
     Rotary4             TCPFXParam 3

     DisplayUpper5       TCPFXParamNameDisplay 4
     DisplayLower5       TCPFXParamValueDisplay 4
     Rotary5             TCPFXParam 4

     DisplayUpper6       TCPFXParamNameDisplay 5
     DisplayLower6       TCPFXParamValueDisplay 5
     Rotary6             TCPFXParam 5

     DisplayUpper7       TCPFXParamNameDisplay 6
     DisplayLower7       TCPFXParamValueDisplay 6
     Rotary7             TCPFXParam 6

     DisplayUpper8       TCPFXParamNameDisplay 7
     DisplayLower8       TCPFXParamValueDisplay 7
     Rotary8             TCPFXParam 7

ZoneEnd

Adding to GoZones

Once the SelectedTrackTCPFX zone is defined, include it in the GoZones zone.

Zone GoZones
    SelectedTracks
    SelectedTrackSend
    SelectedTrackReceive
    SelectedTrackFXMenu
    MasterTrackFXMen
    TrackSend
    TrackReceive
    TrackFXMenu
    VCA
    Folder
    SelectedTrackTCPFX
ZoneEnd

Activating the SelectedTrackTCPFX Zone

Finally, a way to activate the zone.

Zone Home
   Inputs    GoZone SelectedTrackTCPFX

Unmapping FX Zones

Now that you've got your FX zone activated, what is the right way to unmap or deactivate that FX zone?

  • FocusedFX: Simply unfocus the FX in question in Reaper. If you'd like to turn off the FocusedFXMapping, use ToggleEnableFocusedFXMapping or DisableFocusedFXMapping.

  • TrackFXMenu: Unmapping actions are either GoZone TrackFXMenu [to toggle] or GoHome depending on whether you are trying to return to the FX menu or trying to return to the Home zone.

  • SelectedTrackFXMenu: Unmapping actions are either GoZone SelectedTrackFXMenu [to toggle] or GoHome depending on whether you are trying to return to the FX menu or trying to return to the Home zone.

  • MasterTrackFXMenu: Unmapping actions are either GoZone MasterTrackFXMenu [to toggle] or GoHome depending on whether you are trying to return to the FX menu or trying to return to the Home zone.

  • SelectedTrackFX: Select another track or use ClearSelectedTrackFX.

  • SelectedTrackTCPFX: Unmapping actions are either GoZone SelectedTrackTCPFX [to toggle] or GoHome.

This section outlines the basic methods to unmap or deactivate your FX zones once you've finished working with them. Use the appropriate method based on the context of what you want to return to (FX menu, Home zone, or another track selection).